From 81c42187781ef201974d0f2c19456f491b8cee85 Mon Sep 17 00:00:00 2001
From: Shantanu Kotambkar <52007797+skotambkar@users.noreply.github.com>
Date: Thu, 1 Apr 2021 16:06:20 -0700
Subject: [PATCH] Regenerate clients with updated model (#1202)
Sync models and regenerate clients.
---
...ce.location-major-1617316069737027000.json | 9 +
...koutmetrics-major-1617316030898278000.json | 9 +
....wildcard-feature-1617317952710894000.json | 55 +
...ldcard-dependency-1617315822159829000.json | 294 +
.../alexaforbusiness.2017-11-09.json | 18 +
.../aws-models/batch.2016-08-10.json | 161 +-
.../aws-models/cloud9.2017-09-23.json | 132 +-
.../aws-models/cloudformation.2010-05-15.json | 31 +
.../aws-models/cloudwatch.2010-08-01.json | 524 +-
.../cloudwatchevents.2015-10-07.json | 75 +-
.../aws-models/codeartifact.2018-09-22.json | 96 +-
.../aws-models/cognitosync.2014-06-30.json | 364 +-
.../aws-models/comprehend.2017-11-27.json | 36 +
.../aws-models/configservice.2014-11-12.json | 385 +-
.../aws-models/costexplorer.2017-10-25.json | 88 +-
.../customerprofiles.2020-08-15.json | 1078 ++-
.../aws-models/databrew.2017-07-25.json | 428 +-
.../aws-models/datapipeline.2012-10-29.json | 87 +-
.../aws-models/detective.2018-10-26.json | 226 +
.../aws-models/directconnect.2012-10-25.json | 324 +-
.../aws-models/ec2.2016-11-15.json | 555 +-
.../ec2instanceconnect.2018-04-02.json | 173 +-
.../aws-models/eventbridge.2015-10-07.json | 75 +-
.../aws-models/fis.2020-12-01.json | 4 +-
.../aws-models/frauddetector.2019-11-15.json | 422 +-
.../aws-models/gamelift.2015-10-01.json | 67 +-
.../aws-models/glue.2017-03-31.json | 44 +-
.../aws-models/greengrass.2017-06-07.json | 3 +-
.../aws-models/iam.2010-05-08.json | 839 +-
.../aws-models/iot.2015-05-28.json | 10 +
.../aws-models/iotwireless.2020-11-22.json | 281 +-
.../aws-models/location.2020-11-19.json | 4408 +++++++++
.../aws-models/lookoutmetrics.2017-07-25.json | 4196 +++++++++
.../machinelearning.2014-12-12.json | 1516 +--
.../aws-models/macie2.2020-01-01.json | 162 +-
.../aws-models/medialive.2017-10-14.json | 29 +
.../aws-models/pinpoint.2016-12-01.json | 38 +-
.../aws-models/pricing.2017-10-15.json | 105 +-
.../aws-models/redshift.2012-12-01.json | 831 +-
.../aws-models/rekognition.2016-06-27.json | 270 +-
.../aws-models/route53.2013-04-01.json | 2 +-
.../sdk-codegen/aws-models/s3.2006-03-01.json | 125 +-
.../aws-models/s3control.2018-08-20.json | 11 +-
.../aws-models/sagemaker.2017-07-24.json | 303 +-
.../aws-models/sqs.2012-11-05.json | 6 +-
.../aws-models/ssm.2014-11-06.json | 25 +-
.../aws-models/transcribe.2017-10-26.json | 22 +-
.../aws-models/wafv2.2019-07-29.json | 289 +-
.../aws-models/workmail.2017-10-01.json | 693 ++
.../smithy-aws-go-codegen/build.gradle.kts | 1 +
.../aws/go/codegen/endpoint-prefix.json | 1 +
.../smithy/aws/go/codegen/endpoints.json | 186 +-
config/go.mod | 2 +-
config/go.sum | 5 +-
credentials/go.mod | 2 +-
credentials/go.sum | 5 +-
example/service/s3/listObjects/go.sum | 5 +-
example/service/s3/usingPrivateLink/go.sum | 5 +-
feature/cloudfront/sign/go.sum | 4 +-
feature/dynamodb/attributevalue/go.sum | 5 +-
feature/dynamodb/expression/go.sum | 5 +-
feature/dynamodbstreams/attributevalue/go.sum | 5 +-
feature/ec2/imds/go.mod | 2 +-
feature/ec2/imds/go.sum | 4 +-
feature/s3/manager/go.mod | 2 +-
feature/s3/manager/go.sum | 5 +-
go.mod | 2 +-
go.sum | 4 +-
internal/protocoltest/awsrestjson/go.mod | 2 +-
internal/protocoltest/awsrestjson/go.sum | 5 +-
internal/protocoltest/ec2query/go.mod | 2 +-
internal/protocoltest/ec2query/go.sum | 5 +-
internal/protocoltest/jsonrpc/go.mod | 2 +-
internal/protocoltest/jsonrpc/go.sum | 5 +-
internal/protocoltest/jsonrpc10/go.mod | 2 +-
internal/protocoltest/jsonrpc10/go.sum | 5 +-
internal/protocoltest/query/go.mod | 2 +-
internal/protocoltest/query/go.sum | 5 +-
internal/protocoltest/restxml/go.mod | 2 +-
internal/protocoltest/restxml/go.sum | 5 +-
.../protocoltest/restxmlwithnamespace/go.mod | 2 +-
.../protocoltest/restxmlwithnamespace/go.sum | 5 +-
internal/repotools/changes/go.sum | 4 +-
service/accessanalyzer/go.mod | 2 +-
service/accessanalyzer/go.sum | 5 +-
service/acm/go.mod | 2 +-
service/acm/go.sum | 5 +-
service/acmpca/go.mod | 2 +-
service/acmpca/go.sum | 5 +-
.../alexaforbusiness/api_op_CreateProfile.go | 3 +
.../alexaforbusiness/api_op_UpdateProfile.go | 3 +
service/alexaforbusiness/deserializers.go | 9 +
service/alexaforbusiness/go.mod | 2 +-
service/alexaforbusiness/go.sum | 5 +-
service/alexaforbusiness/serializers.go | 10 +
service/alexaforbusiness/types/types.go | 3 +
service/amp/go.mod | 2 +-
service/amp/go.sum | 5 +-
service/amplify/go.mod | 2 +-
service/amplify/go.sum | 5 +-
service/amplifybackend/go.mod | 2 +-
service/amplifybackend/go.sum | 5 +-
service/apigateway/go.mod | 2 +-
service/apigateway/go.sum | 5 +-
service/apigatewaymanagementapi/go.mod | 2 +-
service/apigatewaymanagementapi/go.sum | 5 +-
service/apigatewayv2/go.mod | 2 +-
service/apigatewayv2/go.sum | 5 +-
service/appconfig/go.mod | 2 +-
service/appconfig/go.sum | 5 +-
service/appflow/go.mod | 2 +-
service/appflow/go.sum | 5 +-
service/appintegrations/go.mod | 2 +-
service/appintegrations/go.sum | 5 +-
.../internal/endpoints/endpoints.go | 1 +
service/applicationautoscaling/go.mod | 2 +-
service/applicationautoscaling/go.sum | 5 +-
service/applicationdiscoveryservice/go.mod | 2 +-
service/applicationdiscoveryservice/go.sum | 5 +-
service/applicationinsights/go.mod | 2 +-
service/applicationinsights/go.sum | 5 +-
service/appmesh/go.mod | 2 +-
service/appmesh/go.sum | 5 +-
service/appstream/go.mod | 2 +-
service/appstream/go.sum | 5 +-
service/appsync/go.mod | 2 +-
service/appsync/go.sum | 5 +-
service/athena/go.mod | 2 +-
service/athena/go.sum | 5 +-
service/auditmanager/go.mod | 2 +-
service/auditmanager/go.sum | 5 +-
service/autoscaling/go.mod | 2 +-
service/autoscaling/go.sum | 5 +-
service/autoscalingplans/go.mod | 2 +-
service/autoscalingplans/go.sum | 5 +-
service/backup/go.mod | 2 +-
service/backup/go.sum | 5 +-
.../backup/internal/endpoints/endpoints.go | 1 +
.../batch/api_op_UpdateComputeEnvironment.go | 17 +-
service/batch/deserializers.go | 130 +
service/batch/go.mod | 2 +-
service/batch/go.sum | 5 +-
service/batch/internal/endpoints/endpoints.go | 12 -
service/batch/serializers.go | 58 +
service/batch/types/enums.go | 36 +
service/batch/types/types.go | 89 +-
service/batch/validators.go | 54 +
service/braket/go.mod | 2 +-
service/braket/go.sum | 5 +-
service/budgets/go.mod | 2 +-
service/budgets/go.sum | 5 +-
service/chime/go.mod | 2 +-
service/chime/go.sum | 5 +-
service/cloud9/api_op_CreateEnvironmentEC2.go | 32 +-
.../api_op_CreateEnvironmentMembership.go | 2 +
.../api_op_DescribeEnvironmentStatus.go | 4 +
service/cloud9/deserializers.go | 9 +
service/cloud9/go.mod | 2 +-
service/cloud9/go.sum | 5 +-
service/cloud9/serializers.go | 5 +
service/cloud9/types/enums.go | 36 +
service/cloud9/types/types.go | 74 +-
service/clouddirectory/go.mod | 2 +-
service/clouddirectory/go.sum | 5 +-
service/cloudformation/deserializers.go | 26 +
service/cloudformation/go.mod | 2 +-
service/cloudformation/go.sum | 5 +-
service/cloudformation/serializers.go | 10 +
service/cloudformation/types/enums.go | 18 +
service/cloudformation/types/types.go | 4 +
service/cloudfront/go.mod | 2 +-
service/cloudfront/go.sum | 5 +-
service/cloudhsm/go.mod | 2 +-
service/cloudhsm/go.sum | 5 +-
service/cloudhsmv2/go.mod | 2 +-
service/cloudhsmv2/go.sum | 5 +-
service/cloudsearch/go.mod | 2 +-
service/cloudsearch/go.sum | 5 +-
service/cloudsearchdomain/go.mod | 2 +-
service/cloudsearchdomain/go.sum | 5 +-
service/cloudtrail/go.mod | 2 +-
service/cloudtrail/go.sum | 5 +-
.../cloudwatch/api_op_DeleteMetricStream.go | 112 +
service/cloudwatch/api_op_GetMetricStream.go | 150 +
.../cloudwatch/api_op_ListMetricStreams.go | 207 +
service/cloudwatch/api_op_PutMetricAlarm.go | 5 +-
service/cloudwatch/api_op_PutMetricStream.go | 185 +
.../cloudwatch/api_op_StartMetricStreams.go | 115 +
.../cloudwatch/api_op_StopMetricStreams.go | 115 +
service/cloudwatch/deserializers.go | 3195 +++++--
service/cloudwatch/go.mod | 2 +-
service/cloudwatch/go.sum | 5 +-
service/cloudwatch/serializers.go | 493 +
service/cloudwatch/types/enums.go | 18 +
service/cloudwatch/types/types.go | 35 +
service/cloudwatch/validators.go | 209 +
service/cloudwatchevents/api_op_PutTargets.go | 30 +-
service/cloudwatchevents/deserializers.go | 124 +
service/cloudwatchevents/go.mod | 2 +-
service/cloudwatchevents/go.sum | 5 +-
service/cloudwatchevents/serializers.go | 51 +
service/cloudwatchevents/types/types.go | 30 +
service/cloudwatchevents/validators.go | 57 +
service/cloudwatchlogs/go.mod | 2 +-
service/cloudwatchlogs/go.sum | 5 +-
.../api_op_AssociateExternalConnection.go | 3 -
.../api_op_CopyPackageVersions.go | 5 -
.../codeartifact/api_op_CreateRepository.go | 2 +-
.../api_op_DeletePackageVersions.go | 5 -
.../api_op_DescribePackageVersion.go | 5 -
.../api_op_DisposePackageVersions.go | 5 -
.../api_op_GetPackageVersionAsset.go | 9 +-
.../api_op_GetPackageVersionReadme.go | 10 -
.../api_op_GetRepositoryEndpoint.go | 4 -
.../api_op_ListPackageVersionAssets.go | 9 -
.../api_op_ListPackageVersionDependencies.go | 14 +-
.../api_op_ListPackageVersions.go | 10 -
service/codeartifact/api_op_ListPackages.go | 9 +-
.../api_op_UpdatePackageVersionsStatus.go | 9 +-
service/codeartifact/doc.go | 66 +-
service/codeartifact/go.mod | 2 +-
service/codeartifact/go.sum | 5 +-
service/codeartifact/types/types.go | 16 -
service/codebuild/go.mod | 2 +-
service/codebuild/go.sum | 5 +-
service/codecommit/go.mod | 2 +-
service/codecommit/go.sum | 5 +-
service/codedeploy/go.mod | 2 +-
service/codedeploy/go.sum | 5 +-
service/codeguruprofiler/go.mod | 2 +-
service/codeguruprofiler/go.sum | 5 +-
service/codegurureviewer/go.mod | 2 +-
service/codegurureviewer/go.sum | 5 +-
service/codepipeline/go.mod | 2 +-
service/codepipeline/go.sum | 5 +-
service/codestar/go.mod | 2 +-
service/codestar/go.sum | 5 +-
service/codestarconnections/go.mod | 2 +-
service/codestarconnections/go.sum | 5 +-
service/codestarnotifications/go.mod | 2 +-
service/codestarnotifications/go.sum | 5 +-
service/cognitoidentity/go.mod | 2 +-
service/cognitoidentity/go.sum | 5 +-
service/cognitoidentityprovider/go.mod | 2 +-
service/cognitoidentityprovider/go.sum | 5 +-
service/cognitosync/api_op_BulkPublish.go | 2 +-
service/cognitosync/api_op_DescribeDataset.go | 10 +-
.../api_op_DescribeIdentityPoolUsage.go | 17 +
.../api_op_DescribeIdentityUsage.go | 20 +-
.../api_op_GetBulkPublishDetails.go | 20 +-
.../cognitosync/api_op_GetCognitoEvents.go | 5 +-
.../api_op_GetIdentityPoolConfiguration.go | 20 +-
service/cognitosync/api_op_ListDatasets.go | 21 +-
.../api_op_ListIdentityPoolUsage.go | 21 +
service/cognitosync/api_op_ListRecords.go | 20 +-
service/cognitosync/api_op_RegisterDevice.go | 18 +-
.../cognitosync/api_op_SetCognitoEvents.go | 6 +-
.../api_op_SetIdentityPoolConfiguration.go | 22 +-
.../cognitosync/api_op_SubscribeToDataset.go | 17 +-
.../api_op_UnsubscribeFromDataset.go | 18 +-
service/cognitosync/api_op_UpdateRecords.go | 2 +-
service/cognitosync/deserializers.go | 88 -
service/cognitosync/doc.go | 6 +-
service/cognitosync/go.mod | 2 +-
service/cognitosync/go.sum | 5 +-
service/cognitosync/serializers.go | 9 +-
service/cognitosync/types/errors.go | 20 -
service/cognitosync/types/types.go | 15 +-
.../api_op_CreateDocumentClassifier.go | 11 +
service/comprehend/api_op_CreateEndpoint.go | 5 +
.../api_op_CreateEntityRecognizer.go | 11 +
service/comprehend/deserializers.go | 27 +
service/comprehend/go.mod | 2 +-
service/comprehend/go.sum | 5 +-
service/comprehend/serializers.go | 15 +
service/comprehend/types/types.go | 27 +
service/comprehendmedical/go.mod | 2 +-
service/comprehendmedical/go.sum | 5 +-
service/computeoptimizer/go.mod | 2 +-
service/computeoptimizer/go.sum | 5 +-
...beAggregateComplianceByConformancePacks.go | 135 +
...gregateConformancePackComplianceSummary.go | 142 +
.../api_op_PutOrganizationConformancePack.go | 6 +-
service/configservice/deserializers.go | 802 +-
service/configservice/go.mod | 2 +-
service/configservice/go.sum | 5 +-
service/configservice/serializers.go | 201 +
service/configservice/types/enums.go | 21 +
service/configservice/types/types.go | 111 +-
service/configservice/validators.go | 78 +
service/connect/go.mod | 2 +-
service/connect/go.sum | 5 +-
.../connect/internal/endpoints/endpoints.go | 1 +
service/connectcontactlens/go.mod | 2 +-
service/connectcontactlens/go.sum | 5 +-
service/connectparticipant/go.mod | 2 +-
service/connectparticipant/go.sum | 5 +-
service/costandusagereportservice/go.mod | 2 +-
service/costandusagereportservice/go.sum | 5 +-
.../api_op_CreateCostCategoryDefinition.go | 3 +
.../api_op_UpdateCostCategoryDefinition.go | 3 +
service/costexplorer/deserializers.go | 81 +
service/costexplorer/go.mod | 2 +-
service/costexplorer/go.sum | 5 +-
service/costexplorer/serializers.go | 39 +
service/costexplorer/types/enums.go | 37 +
service/costexplorer/types/types.go | 44 +-
service/costexplorer/validators.go | 43 -
.../customerprofiles/api_op_PutIntegration.go | 9 +-
service/customerprofiles/go.mod | 2 +-
service/customerprofiles/go.sum | 5 +-
service/customerprofiles/serializers.go | 391 +
service/customerprofiles/types/enums.go | 386 +
service/customerprofiles/types/types.go | 142 +
service/customerprofiles/validators.go | 269 +-
service/databasemigrationservice/go.mod | 2 +-
service/databasemigrationservice/go.sum | 5 +-
service/databrew/api_op_CreateDataset.go | 12 +-
service/databrew/api_op_CreateProfileJob.go | 4 +-
service/databrew/api_op_DescribeDataset.go | 12 +-
.../api_op_SendProjectSessionAction.go | 2 +-
service/databrew/api_op_UpdateDataset.go | 12 +-
service/databrew/api_op_UpdateProfileJob.go | 4 +-
service/databrew/deserializers.go | 419 +
service/databrew/go.mod | 2 +-
service/databrew/go.sum | 5 +-
service/databrew/serializers.go | 197 +
service/databrew/types/enums.go | 56 +
service/databrew/types/types.go | 248 +-
service/databrew/validators.go | 156 +
service/dataexchange/go.mod | 2 +-
service/dataexchange/go.sum | 5 +-
.../datapipeline/api_op_ActivatePipeline.go | 10 +-
service/datapipeline/api_op_CreatePipeline.go | 11 +-
service/datapipeline/api_op_DeletePipeline.go | 7 +
.../datapipeline/api_op_DescribeObjects.go | 16 +-
.../datapipeline/api_op_DescribePipelines.go | 16 +
.../datapipeline/api_op_EvaluateExpression.go | 10 +-
.../api_op_GetPipelineDefinition.go | 16 +-
service/datapipeline/api_op_ListPipelines.go | 9 +-
service/datapipeline/api_op_PollForTask.go | 29 +-
.../api_op_PutPipelineDefinition.go | 50 +-
service/datapipeline/api_op_QueryObjects.go | 9 +-
.../datapipeline/api_op_ReportTaskProgress.go | 13 +-
.../api_op_ReportTaskRunnerHeartbeat.go | 7 +
service/datapipeline/api_op_SetStatus.go | 10 +-
service/datapipeline/api_op_SetTaskStatus.go | 9 +-
.../api_op_ValidatePipelineDefinition.go | 36 +-
service/datapipeline/go.mod | 2 +-
service/datapipeline/go.sum | 5 +-
service/datapipeline/types/types.go | 12 +-
service/datasync/go.mod | 2 +-
service/datasync/go.sum | 5 +-
service/dax/go.mod | 2 +-
service/dax/go.sum | 5 +-
service/detective/api_op_CreateGraph.go | 4 +
.../detective/api_op_ListTagsForResource.go | 116 +
service/detective/api_op_TagResource.go | 117 +
service/detective/api_op_UntagResource.go | 117 +
service/detective/deserializers.go | 367 +
service/detective/go.mod | 2 +-
service/detective/go.sum | 5 +-
.../detective/internal/endpoints/endpoints.go | 16 +
service/detective/serializers.go | 241 +
service/detective/validators.go | 123 +
service/devicefarm/go.mod | 2 +-
service/devicefarm/go.sum | 5 +-
service/devopsguru/go.mod | 2 +-
service/devopsguru/go.sum | 5 +-
...api_op_AllocateConnectionOnInterconnect.go | 15 +
.../api_op_AllocateHostedConnection.go | 15 +
.../api_op_AssociateConnectionWithLag.go | 15 +
.../api_op_AssociateHostedConnection.go | 15 +
.../api_op_AssociateMacSecKey.go | 148 +
.../directconnect/api_op_CreateConnection.go | 22 +
service/directconnect/api_op_CreateLag.go | 17 +
.../directconnect/api_op_DeleteConnection.go | 15 +
service/directconnect/api_op_DeleteLag.go | 10 +
.../api_op_DisassociateConnectionFromLag.go | 15 +
.../api_op_DisassociateMacSecKey.go | 132 +
.../directconnect/api_op_UpdateConnection.go | 229 +
service/directconnect/api_op_UpdateLag.go | 37 +-
service/directconnect/deserializers.go | 1298 ++-
service/directconnect/go.mod | 2 +-
service/directconnect/go.sum | 5 +-
service/directconnect/serializers.go | 222 +
service/directconnect/types/errors.go | 2 +-
service/directconnect/types/types.go | 59 +
service/directconnect/validators.go | 120 +
service/directoryservice/go.mod | 2 +-
service/directoryservice/go.sum | 5 +-
service/dlm/go.mod | 2 +-
service/dlm/go.sum | 5 +-
service/docdb/go.mod | 2 +-
service/docdb/go.sum | 5 +-
service/dynamodb/go.mod | 2 +-
service/dynamodb/go.sum | 5 +-
service/dynamodbstreams/go.mod | 2 +-
service/dynamodbstreams/go.sum | 5 +-
service/ebs/go.mod | 2 +-
service/ebs/go.sum | 5 +-
...i_op_AssociateEnclaveCertificateIamRole.go | 6 +-
.../ec2/api_op_CreateReplaceRootVolumeTask.go | 177 +
service/ec2/api_op_DescribeImageAttribute.go | 3 +
.../ec2/api_op_DescribeInstanceAttribute.go | 9 +-
service/ec2/api_op_DescribeInstanceTypes.go | 41 +-
service/ec2/api_op_DescribeInstances.go | 40 +-
.../api_op_DescribeReplaceRootVolumeTasks.go | 224 +
.../ec2/api_op_DisableSerialConsoleAccess.go | 120 +
.../api_op_EnableEbsEncryptionByDefault.go | 2 +-
.../ec2/api_op_EnableSerialConsoleAccess.go | 120 +
.../api_op_GetSerialConsoleAccessStatus.go | 121 +
service/ec2/api_op_ModifyInstanceAttribute.go | 9 +-
service/ec2/api_op_ModifyVolume.go | 3 +-
service/ec2/api_op_RegisterImage.go | 5 +
service/ec2/deserializers.go | 2094 ++++-
service/ec2/go.mod | 2 +-
service/ec2/go.sum | 5 +-
service/ec2/serializers.go | 404 +
service/ec2/types/enums.go | 82 +
service/ec2/types/types.go | 81 +-
service/ec2/validators.go | 39 +
.../api_op_SendSSHPublicKey.go | 23 +-
.../api_op_SendSerialConsoleSSHPublicKey.go | 137 +
service/ec2instanceconnect/deserializers.go | 484 +
service/ec2instanceconnect/doc.go | 7 +-
service/ec2instanceconnect/go.mod | 2 +-
service/ec2instanceconnect/go.sum | 5 +-
service/ec2instanceconnect/serializers.go | 69 +
service/ec2instanceconnect/types/errors.go | 107 +-
service/ec2instanceconnect/validators.go | 42 +
service/ecr/go.mod | 2 +-
service/ecr/go.sum | 5 +-
service/ecrpublic/go.mod | 2 +-
service/ecrpublic/go.sum | 5 +-
service/ecs/go.mod | 2 +-
service/ecs/go.sum | 5 +-
service/efs/go.mod | 2 +-
service/efs/go.sum | 5 +-
service/eks/go.mod | 2 +-
service/eks/go.sum | 5 +-
service/elasticache/go.mod | 2 +-
service/elasticache/go.sum | 5 +-
service/elasticbeanstalk/go.mod | 2 +-
service/elasticbeanstalk/go.sum | 5 +-
service/elasticinference/go.mod | 2 +-
service/elasticinference/go.sum | 5 +-
service/elasticloadbalancing/go.mod | 2 +-
service/elasticloadbalancing/go.sum | 5 +-
service/elasticloadbalancingv2/go.mod | 2 +-
service/elasticloadbalancingv2/go.sum | 5 +-
service/elasticsearchservice/go.mod | 2 +-
service/elasticsearchservice/go.sum | 5 +-
service/elastictranscoder/go.mod | 2 +-
service/elastictranscoder/go.sum | 5 +-
service/emr/go.mod | 2 +-
service/emr/go.sum | 5 +-
service/emrcontainers/go.mod | 2 +-
service/emrcontainers/go.sum | 5 +-
service/eventbridge/api_op_PutTargets.go | 30 +-
service/eventbridge/deserializers.go | 124 +
service/eventbridge/go.mod | 2 +-
service/eventbridge/go.sum | 5 +-
service/eventbridge/serializers.go | 51 +
service/eventbridge/types/types.go | 30 +
service/eventbridge/validators.go | 57 +
service/firehose/go.mod | 2 +-
service/firehose/go.sum | 5 +-
service/fis/go.mod | 2 +-
service/fis/go.sum | 5 +-
service/fms/go.mod | 2 +-
service/fms/go.sum | 5 +-
service/forecast/go.mod | 2 +-
service/forecast/go.sum | 5 +-
service/forecastquery/go.mod | 2 +-
service/forecastquery/go.sum | 5 +-
.../api_op_CancelBatchPredictionJob.go | 112 +
.../api_op_CreateBatchPredictionJob.go | 144 +
.../api_op_DeleteBatchPredictionJob.go | 112 +
.../api_op_GetBatchPredictionJobs.go | 214 +
service/frauddetector/deserializers.go | 933 +-
service/frauddetector/go.mod | 2 +-
service/frauddetector/go.sum | 5 +-
service/frauddetector/serializers.go | 283 +
service/frauddetector/types/enums.go | 26 +
service/frauddetector/types/types.go | 50 +
service/frauddetector/validators.go | 137 +
service/fsx/go.mod | 2 +-
service/fsx/go.sum | 5 +-
service/gamelift/api_op_CreateFleet.go | 22 +-
.../gamelift/api_op_CreateGameSessionQueue.go | 20 +-
.../api_op_CreateMatchmakingConfiguration.go | 9 +-
.../gamelift/api_op_UpdateGameSessionQueue.go | 9 +
service/gamelift/deserializers.go | 21 +
service/gamelift/go.mod | 2 +-
service/gamelift/go.sum | 5 +-
service/gamelift/serializers.go | 20 +
service/gamelift/types/types.go | 9 +
service/glacier/go.mod | 2 +-
service/glacier/go.sum | 5 +-
service/globalaccelerator/go.mod | 2 +-
service/globalaccelerator/go.sum | 5 +-
service/glue/api_op_GetResourcePolicies.go | 10 +-
service/glue/api_op_GetResourcePolicy.go | 9 +-
service/glue/api_op_PutResourcePolicy.go | 24 +-
service/glue/deserializers.go | 88 +
service/glue/go.mod | 2 +-
service/glue/go.sum | 5 +-
service/glue/types/types.go | 15 +
service/greengrass/api_op_CreateGroup.go | 11 +-
service/greengrass/go.mod | 2 +-
service/greengrass/go.sum | 5 +-
service/greengrass/validators.go | 39 +
service/greengrassv2/go.mod | 2 +-
service/greengrassv2/go.sum | 5 +-
service/groundstation/go.mod | 2 +-
service/groundstation/go.sum | 5 +-
.../internal/endpoints/endpoints.go | 8 +
service/guardduty/go.mod | 2 +-
service/guardduty/go.sum | 5 +-
service/health/go.mod | 2 +-
service/health/go.sum | 5 +-
service/healthlake/go.mod | 2 +-
service/healthlake/go.sum | 5 +-
service/honeycode/go.mod | 2 +-
service/honeycode/go.sum | 5 +-
service/iam/api_op_CreateInstanceProfile.go | 10 +-
service/iam/deserializers.go | 3 +
service/iam/go.mod | 2 +-
service/iam/go.sum | 5 +-
service/identitystore/go.mod | 2 +-
service/identitystore/go.sum | 5 +-
service/imagebuilder/go.mod | 2 +-
service/imagebuilder/go.sum | 5 +-
service/inspector/go.mod | 2 +-
service/inspector/go.sum | 5 +-
service/internal/accept-encoding/go.mod | 2 +-
service/internal/accept-encoding/go.sum | 4 +-
service/internal/benchmark/go.mod | 2 +-
service/internal/benchmark/go.sum | 5 +-
service/internal/integrationtest/go.mod | 2 +-
service/internal/integrationtest/go.sum | 5 +-
service/internal/presigned-url/go.mod | 2 +-
service/internal/presigned-url/go.sum | 4 +-
service/internal/s3shared/go.mod | 2 +-
service/internal/s3shared/go.sum | 4 +-
service/iot/api_op_ListThings.go | 6 +
service/iot/go.mod | 2 +-
service/iot/go.sum | 5 +-
service/iot/serializers.go | 4 +
service/iot1clickdevicesservice/go.mod | 2 +-
service/iot1clickdevicesservice/go.sum | 5 +-
service/iot1clickprojects/go.mod | 2 +-
service/iot1clickprojects/go.sum | 5 +-
service/iotanalytics/go.mod | 2 +-
service/iotanalytics/go.sum | 5 +-
service/iotdataplane/go.mod | 2 +-
service/iotdataplane/go.sum | 5 +-
service/iotdeviceadvisor/go.mod | 2 +-
service/iotdeviceadvisor/go.sum | 5 +-
service/iotevents/go.mod | 2 +-
service/iotevents/go.sum | 5 +-
service/ioteventsdata/go.mod | 2 +-
service/ioteventsdata/go.sum | 5 +-
service/iotfleethub/go.mod | 2 +-
service/iotfleethub/go.sum | 5 +-
service/iotjobsdataplane/go.mod | 2 +-
service/iotjobsdataplane/go.sum | 5 +-
service/iotsecuretunneling/go.mod | 2 +-
service/iotsecuretunneling/go.sum | 5 +-
service/iotsitewise/go.mod | 2 +-
service/iotsitewise/go.sum | 5 +-
service/iotthingsgraph/go.mod | 2 +-
service/iotthingsgraph/go.sum | 5 +-
...p_AssociateAwsAccountWithPartnerAccount.go | 4 +-
.../iotwireless/api_op_CreateDestination.go | 2 +-
.../iotwireless/api_op_CreateDeviceProfile.go | 2 +-
.../api_op_CreateServiceProfile.go | 4 +-
.../api_op_CreateWirelessDevice.go | 4 +
.../api_op_CreateWirelessGateway.go | 4 +-
..._op_CreateWirelessGatewayTaskDefinition.go | 4 +-
.../iotwireless/api_op_GetWirelessDevice.go | 3 +
.../api_op_GetWirelessDeviceStatistics.go | 3 +
.../api_op_GetWirelessGatewayStatistics.go | 4 +
.../iotwireless/api_op_ListTagsForResource.go | 6 +-
service/iotwireless/api_op_TagResource.go | 4 +-
service/iotwireless/deserializers.go | 250 +
service/iotwireless/go.mod | 2 +-
service/iotwireless/go.sum | 5 +-
service/iotwireless/serializers.go | 7 +
service/iotwireless/types/enums.go | 102 +
service/iotwireless/types/types.go | 52 +
service/iotwireless/validators.go | 5 +
service/ivs/go.mod | 2 +-
service/ivs/go.sum | 5 +-
service/kafka/go.mod | 2 +-
service/kafka/go.sum | 5 +-
service/kendra/go.mod | 2 +-
service/kendra/go.sum | 5 +-
service/kinesis/go.mod | 2 +-
service/kinesis/go.sum | 5 +-
service/kinesisanalytics/go.mod | 2 +-
service/kinesisanalytics/go.sum | 5 +-
service/kinesisanalyticsv2/go.mod | 2 +-
service/kinesisanalyticsv2/go.sum | 5 +-
service/kinesisvideo/go.mod | 2 +-
service/kinesisvideo/go.sum | 5 +-
service/kinesisvideoarchivedmedia/go.mod | 2 +-
service/kinesisvideoarchivedmedia/go.sum | 5 +-
service/kinesisvideomedia/go.mod | 2 +-
service/kinesisvideomedia/go.sum | 5 +-
service/kinesisvideosignaling/go.mod | 2 +-
service/kinesisvideosignaling/go.sum | 5 +-
service/kms/go.mod | 2 +-
service/kms/go.sum | 5 +-
service/lakeformation/go.mod | 2 +-
service/lakeformation/go.sum | 5 +-
service/lambda/go.mod | 2 +-
service/lambda/go.sum | 5 +-
service/lexmodelbuildingservice/go.mod | 2 +-
service/lexmodelbuildingservice/go.sum | 5 +-
service/lexmodelsv2/go.mod | 2 +-
service/lexmodelsv2/go.sum | 5 +-
service/lexruntimeservice/go.mod | 2 +-
service/lexruntimeservice/go.sum | 5 +-
service/lexruntimev2/go.mod | 2 +-
service/lexruntimev2/go.sum | 5 +-
service/licensemanager/go.mod | 2 +-
service/licensemanager/go.sum | 5 +-
service/lightsail/go.mod | 2 +-
service/lightsail/go.sum | 5 +-
service/location/LICENSE.txt | 202 +
service/location/api_client.go | 259 +
.../api_op_AssociateTrackerConsumer.go | 114 +
.../location/api_op_BatchDeleteGeofence.go | 113 +
.../location/api_op_BatchEvaluateGeofences.go | 112 +
.../location/api_op_BatchGetDevicePosition.go | 122 +
service/location/api_op_BatchPutGeofence.go | 119 +
.../api_op_BatchUpdateDevicePosition.go | 116 +
.../api_op_CreateGeofenceCollection.go | 148 +
service/location/api_op_CreateMap.go | 153 +
service/location/api_op_CreatePlaceIndex.go | 164 +
service/location/api_op_CreateTracker.go | 149 +
.../api_op_DeleteGeofenceCollection.go | 102 +
service/location/api_op_DeleteMap.go | 102 +
service/location/api_op_DeletePlaceIndex.go | 101 +
service/location/api_op_DeleteTracker.go | 103 +
.../api_op_DescribeGeofenceCollection.go | 144 +
service/location/api_op_DescribeMap.go | 150 +
service/location/api_op_DescribePlaceIndex.go | 159 +
service/location/api_op_DescribeTracker.go | 143 +
.../api_op_DisassociateTrackerConsumer.go | 112 +
service/location/api_op_GetDevicePosition.go | 130 +
.../api_op_GetDevicePositionHistory.go | 217 +
service/location/api_op_GetGeofence.go | 151 +
service/location/api_op_GetMapGlyphs.go | 120 +
service/location/api_op_GetMapSprites.go | 129 +
.../location/api_op_GetMapStyleDescriptor.go | 110 +
service/location/api_op_GetMapTile.go | 127 +
.../api_op_ListGeofenceCollections.go | 201 +
service/location/api_op_ListGeofences.go | 189 +
service/location/api_op_ListMaps.go | 198 +
service/location/api_op_ListPlaceIndexes.go | 199 +
.../location/api_op_ListTrackerConsumers.go | 208 +
service/location/api_op_ListTrackers.go | 199 +
service/location/api_op_PutGeofence.go | 136 +
.../api_op_SearchPlaceIndexForPosition.go | 137 +
.../api_op_SearchPlaceIndexForText.go | 178 +
service/location/deserializers.go | 8273 +++++++++++++++++
service/location/doc.go | 7 +
service/location/endpoints.go | 160 +
service/location/go.mod | 10 +
service/location/go.sum | 13 +
.../location/internal/endpoints/endpoints.go | 106 +
.../internal/endpoints/endpoints_test.go | 11 +
service/location/protocol_test.go | 3 +
service/location/serializers.go | 2833 ++++++
service/location/types/enums.go | 59 +
service/location/types/errors.go | 115 +
service/location/types/types.go | 623 ++
service/location/validators.go | 1402 +++
service/lookoutmetrics/LICENSE.txt | 202 +
service/lookoutmetrics/api_client.go | 259 +
.../api_op_ActivateAnomalyDetector.go | 112 +
.../api_op_BackTestAnomalyDetector.go | 112 +
service/lookoutmetrics/api_op_CreateAlert.go | 140 +
.../api_op_CreateAnomalyDetector.go | 133 +
.../lookoutmetrics/api_op_CreateMetricSet.go | 157 +
service/lookoutmetrics/api_op_DeleteAlert.go | 112 +
.../api_op_DeleteAnomalyDetector.go | 113 +
.../lookoutmetrics/api_op_DescribeAlert.go | 117 +
...i_op_DescribeAnomalyDetectionExecutions.go | 216 +
.../api_op_DescribeAnomalyDetector.go | 142 +
.../api_op_DescribeMetricSet.go | 155 +
.../lookoutmetrics/api_op_GetAnomalyGroup.go | 122 +
service/lookoutmetrics/api_op_GetFeedback.go | 214 +
.../lookoutmetrics/api_op_GetSampleData.go | 118 +
service/lookoutmetrics/api_op_ListAlerts.go | 206 +
.../api_op_ListAnomalyDetectors.go | 205 +
.../api_op_ListAnomalyGroupSummaries.go | 220 +
.../api_op_ListAnomalyGroupTimeSeries.go | 232 +
.../lookoutmetrics/api_op_ListMetricSets.go | 207 +
.../api_op_ListTagsForResource.go | 118 +
service/lookoutmetrics/api_op_PutFeedback.go | 118 +
service/lookoutmetrics/api_op_TagResource.go | 120 +
.../lookoutmetrics/api_op_UntagResource.go | 119 +
.../api_op_UpdateAnomalyDetector.go | 128 +
.../lookoutmetrics/api_op_UpdateMetricSet.go | 139 +
service/lookoutmetrics/deserializers.go | 7452 +++++++++++++++
service/lookoutmetrics/doc.go | 9 +
service/lookoutmetrics/endpoints.go | 160 +
service/lookoutmetrics/go.mod | 10 +
service/lookoutmetrics/go.sum | 13 +
.../internal/endpoints/endpoints.go | 106 +
.../internal/endpoints/endpoints_test.go | 11 +
service/lookoutmetrics/protocol_test.go | 3 +
service/lookoutmetrics/serializers.go | 2563 +++++
service/lookoutmetrics/types/enums.go | 191 +
service/lookoutmetrics/types/errors.go | 146 +
service/lookoutmetrics/types/types.go | 647 ++
service/lookoutmetrics/validators.go | 1264 +++
service/lookoutvision/go.mod | 2 +-
service/lookoutvision/go.sum | 5 +-
.../machinelearning/api_op_CreateMLModel.go | 2 +-
.../api_op_DescribeBatchPredictions.go | 196 +
.../api_op_DescribeDataSources.go | 195 +
.../api_op_DescribeEvaluations.go | 195 +
.../api_op_DescribeMLModels.go | 194 +
service/machinelearning/api_op_GetMLModel.go | 2 +-
service/machinelearning/api_op_Predict.go | 2 -
service/machinelearning/go.mod | 3 +-
service/machinelearning/go.sum | 11 +-
service/machinelearning/types/errors.go | 2 -
service/machinelearning/types/types.go | 71 +-
service/machinelearning/validators.go | 106 +-
service/macie/go.mod | 2 +-
service/macie/go.sum | 5 +-
service/macie2/api_op_EnableMacie.go | 4 +-
..._op_GetFindingsPublicationConfiguration.go | 111 +
..._op_PutFindingsPublicationConfiguration.go | 153 +
.../macie2/api_op_UpdateClassificationJob.go | 14 +-
service/macie2/deserializers.go | 315 +
service/macie2/go.mod | 2 +-
service/macie2/go.sum | 5 +-
service/macie2/serializers.go | 137 +
service/macie2/types/types.go | 43 +-
service/macie2/validators.go | 53 +
service/managedblockchain/go.mod | 2 +-
service/managedblockchain/go.sum | 5 +-
service/marketplacecatalog/go.mod | 2 +-
service/marketplacecatalog/go.sum | 5 +-
service/marketplacecommerceanalytics/go.mod | 2 +-
service/marketplacecommerceanalytics/go.sum | 5 +-
service/marketplaceentitlementservice/go.mod | 2 +-
service/marketplaceentitlementservice/go.sum | 5 +-
service/marketplacemetering/go.mod | 2 +-
service/marketplacemetering/go.sum | 5 +-
service/mediaconnect/go.mod | 2 +-
service/mediaconnect/go.sum | 5 +-
service/mediaconvert/go.mod | 2 +-
service/mediaconvert/go.sum | 5 +-
service/medialive/deserializers.go | 41 +
service/medialive/go.mod | 2 +-
service/medialive/go.sum | 5 +-
service/medialive/serializers.go | 21 +
service/medialive/types/enums.go | 10 +-
service/medialive/types/types.go | 10 +
service/mediapackage/go.mod | 2 +-
service/mediapackage/go.sum | 5 +-
service/mediapackagevod/go.mod | 2 +-
service/mediapackagevod/go.sum | 5 +-
service/mediastore/go.mod | 2 +-
service/mediastore/go.sum | 5 +-
service/mediastoredata/go.mod | 2 +-
service/mediastoredata/go.sum | 5 +-
service/mediatailor/go.mod | 2 +-
service/mediatailor/go.sum | 5 +-
service/migrationhub/go.mod | 2 +-
service/migrationhub/go.sum | 5 +-
service/migrationhubconfig/go.mod | 2 +-
service/migrationhubconfig/go.sum | 5 +-
service/mobile/go.mod | 2 +-
service/mobile/go.sum | 5 +-
service/mq/go.mod | 2 +-
service/mq/go.sum | 5 +-
service/mturk/go.mod | 2 +-
service/mturk/go.sum | 5 +-
service/mwaa/go.mod | 2 +-
service/mwaa/go.sum | 5 +-
service/neptune/go.mod | 2 +-
service/neptune/go.sum | 5 +-
service/networkfirewall/go.mod | 2 +-
service/networkfirewall/go.sum | 5 +-
service/networkmanager/go.mod | 2 +-
service/networkmanager/go.sum | 5 +-
service/opsworks/go.mod | 2 +-
service/opsworks/go.sum | 5 +-
service/opsworkscm/go.mod | 2 +-
service/opsworkscm/go.sum | 5 +-
service/organizations/go.mod | 2 +-
service/organizations/go.sum | 5 +-
service/outposts/go.mod | 2 +-
service/outposts/go.sum | 5 +-
service/personalize/go.mod | 2 +-
service/personalize/go.sum | 5 +-
service/personalizeevents/go.mod | 2 +-
service/personalizeevents/go.sum | 5 +-
service/personalizeruntime/go.mod | 2 +-
service/personalizeruntime/go.sum | 5 +-
service/pi/go.mod | 2 +-
service/pi/go.sum | 5 +-
service/pinpoint/deserializers.go | 27 +
service/pinpoint/go.mod | 2 +-
service/pinpoint/go.sum | 5 +-
service/pinpoint/serializers.go | 15 +
service/pinpoint/types/enums.go | 2 +
service/pinpoint/types/types.go | 46 +-
service/pinpointemail/go.mod | 2 +-
service/pinpointemail/go.sum | 5 +-
service/pinpointsmsvoice/go.mod | 2 +-
service/pinpointsmsvoice/go.sum | 5 +-
service/polly/go.mod | 2 +-
service/polly/go.sum | 5 +-
service/pricing/go.mod | 2 +-
service/pricing/go.sum | 5 +-
service/pricing/validators.go | 14 +-
service/qldb/go.mod | 2 +-
service/qldb/go.sum | 5 +-
service/qldbsession/go.mod | 2 +-
service/qldbsession/go.sum | 5 +-
service/quicksight/go.mod | 2 +-
service/quicksight/go.sum | 5 +-
service/ram/go.mod | 2 +-
service/ram/go.sum | 5 +-
service/rds/go.mod | 2 +-
service/rds/go.sum | 5 +-
service/rdsdata/go.mod | 2 +-
service/rdsdata/go.sum | 5 +-
.../api_op_AuthorizeEndpointAccess.go | 151 +
.../redshift/api_op_CreateEndpointAccess.go | 167 +
.../redshift/api_op_DeleteEndpointAccess.go | 147 +
.../redshift/api_op_DescribeEndpointAccess.go | 130 +
.../api_op_DescribeEndpointAuthorization.go | 130 +
.../redshift/api_op_ModifyEndpointAccess.go | 151 +
.../redshift/api_op_RevokeEndpointAccess.go | 150 +
service/redshift/deserializers.go | 4605 +++++++--
service/redshift/go.mod | 2 +-
service/redshift/go.sum | 5 +-
service/redshift/serializers.go | 592 ++
service/redshift/types/enums.go | 18 +
service/redshift/types/errors.go | 192 +
service/redshift/types/types.go | 70 +-
service/redshift/validators.go | 159 +
service/redshiftdata/go.mod | 2 +-
service/redshiftdata/go.sum | 5 +-
service/rekognition/api_op_CompareFaces.go | 63 +-
.../rekognition/api_op_CreateCollection.go | 3 +
.../api_op_CreateProjectVersion.go | 3 +
.../api_op_CreateStreamProcessor.go | 3 +
.../rekognition/api_op_ListTagsForResource.go | 118 +
service/rekognition/api_op_TagResource.go | 120 +
service/rekognition/api_op_UntagResource.go | 119 +
service/rekognition/deserializers.go | 524 ++
service/rekognition/go.mod | 2 +-
service/rekognition/go.sum | 5 +-
service/rekognition/serializers.go | 234 +
service/rekognition/types/errors.go | 11 +-
service/rekognition/types/types.go | 6 +-
service/rekognition/validators.go | 123 +
service/resourcegroups/go.mod | 2 +-
service/resourcegroups/go.sum | 5 +-
service/resourcegroupstaggingapi/go.mod | 2 +-
service/resourcegroupstaggingapi/go.sum | 5 +-
service/robomaker/go.mod | 2 +-
service/robomaker/go.sum | 5 +-
.../route53/api_op_ListResourceRecordSets.go | 2 +-
service/route53/go.mod | 2 +-
service/route53/go.sum | 5 +-
service/route53domains/go.mod | 2 +-
service/route53domains/go.sum | 5 +-
service/route53resolver/go.mod | 2 +-
service/route53resolver/go.sum | 5 +-
service/s3/api_op_AbortMultipartUpload.go | 8 +-
service/s3/api_op_CompleteMultipartUpload.go | 8 +-
service/s3/api_op_CopyObject.go | 8 +-
service/s3/api_op_CreateMultipartUpload.go | 16 +-
service/s3/api_op_DeleteObject.go | 25 +-
service/s3/api_op_DeleteObjectTagging.go | 8 +-
service/s3/api_op_DeleteObjects.go | 8 +-
service/s3/api_op_GetObject.go | 8 +-
service/s3/api_op_GetObjectAcl.go | 2 +-
service/s3/api_op_GetObjectLegalHold.go | 2 +-
.../s3/api_op_GetObjectLockConfiguration.go | 2 +-
service/s3/api_op_GetObjectRetention.go | 2 +-
service/s3/api_op_GetObjectTagging.go | 8 +-
service/s3/api_op_HeadBucket.go | 8 +-
service/s3/api_op_HeadObject.go | 10 +-
service/s3/api_op_ListMultipartUploads.go | 8 +-
service/s3/api_op_ListObjectVersions.go | 12 +-
service/s3/api_op_ListObjects.go | 8 +-
service/s3/api_op_ListObjectsV2.go | 16 +-
service/s3/api_op_ListParts.go | 8 +-
service/s3/api_op_PutBucketEncryption.go | 2 +-
service/s3/api_op_PutObject.go | 20 +-
service/s3/api_op_PutObjectAcl.go | 10 +-
service/s3/api_op_PutObjectLegalHold.go | 11 +-
.../s3/api_op_PutObjectLockConfiguration.go | 16 +-
service/s3/api_op_PutObjectRetention.go | 11 +-
service/s3/api_op_PutObjectTagging.go | 8 +-
service/s3/api_op_PutPublicAccessBlock.go | 2 +-
service/s3/api_op_RestoreObject.go | 8 +-
service/s3/api_op_UploadPart.go | 8 +-
service/s3/api_op_UploadPartCopy.go | 8 +-
service/s3/api_op_WriteGetObjectResponse.go | 26 +-
service/s3/go.mod | 2 +-
service/s3/go.sum | 5 +-
service/s3/internal/configtesting/go.sum | 5 +-
service/s3/internal/endpoints/endpoints.go | 132 +-
service/s3/types/types.go | 60 +-
service/s3control/api_op_CreateAccessPoint.go | 8 +-
.../api_op_ListStorageLensConfigurations.go | 77 +
service/s3control/go.mod | 2 +-
service/s3control/go.sum | 5 +-
.../internal/endpoints/s3/endpoints.go | 132 +-
service/s3control/types/types.go | 3 +-
service/s3outposts/go.mod | 2 +-
service/s3outposts/go.sum | 5 +-
service/sagemaker/api_op_CreateApp.go | 5 +-
service/sagemaker/api_op_CreateAutoMLJob.go | 37 +-
service/sagemaker/api_op_CreateDomain.go | 6 +-
service/sagemaker/api_op_CreateTrainingJob.go | 6 +
service/sagemaker/api_op_DescribeAutoMLJob.go | 29 +-
service/sagemaker/api_op_DescribeDomain.go | 4 +-
.../sagemaker/api_op_DescribeTrainingJob.go | 3 +
.../api_op_ListCandidatesForAutoMLJob.go | 12 +-
service/sagemaker/deserializers.go | 256 +
service/sagemaker/go.mod | 2 +-
service/sagemaker/go.sum | 5 +-
service/sagemaker/serializers.go | 37 +
service/sagemaker/types/enums.go | 26 +-
service/sagemaker/types/types.go | 190 +-
service/sagemaker/validators.go | 20 +
service/sagemakera2iruntime/go.mod | 2 +-
service/sagemakera2iruntime/go.sum | 5 +-
service/sagemakeredge/go.mod | 2 +-
service/sagemakeredge/go.sum | 5 +-
service/sagemakerfeaturestoreruntime/go.mod | 2 +-
service/sagemakerfeaturestoreruntime/go.sum | 5 +-
service/sagemakerruntime/go.mod | 2 +-
service/sagemakerruntime/go.sum | 5 +-
service/savingsplans/go.mod | 2 +-
service/savingsplans/go.sum | 5 +-
service/schemas/go.mod | 2 +-
service/schemas/go.sum | 5 +-
service/secretsmanager/go.mod | 2 +-
service/secretsmanager/go.sum | 5 +-
service/securityhub/go.mod | 2 +-
service/securityhub/go.sum | 5 +-
.../internal/endpoints/endpoints.go | 1 +
.../serverlessapplicationrepository/go.mod | 2 +-
.../serverlessapplicationrepository/go.sum | 5 +-
service/servicecatalog/go.mod | 2 +-
service/servicecatalog/go.sum | 5 +-
service/servicecatalogappregistry/go.mod | 2 +-
service/servicecatalogappregistry/go.sum | 5 +-
service/servicediscovery/go.mod | 2 +-
service/servicediscovery/go.sum | 5 +-
service/servicequotas/go.mod | 2 +-
service/servicequotas/go.sum | 5 +-
.../internal/endpoints/endpoints.go | 4 +
service/ses/go.mod | 2 +-
service/ses/go.sum | 5 +-
service/sesv2/go.mod | 2 +-
service/sesv2/go.sum | 5 +-
service/sfn/go.mod | 2 +-
service/sfn/go.sum | 5 +-
service/shield/go.mod | 2 +-
service/shield/go.sum | 5 +-
service/signer/go.mod | 2 +-
service/signer/go.sum | 5 +-
service/sms/go.mod | 2 +-
service/sms/go.sum | 5 +-
service/snowball/go.mod | 2 +-
service/snowball/go.sum | 5 +-
service/sns/go.mod | 2 +-
service/sns/go.sum | 5 +-
service/sqs/api_op_SendMessage.go | 2 +-
service/sqs/doc.go | 2 +-
service/sqs/go.mod | 2 +-
service/sqs/go.sum | 5 +-
service/sqs/types/types.go | 2 +-
service/ssm/api_op_CreateActivation.go | 4 +-
service/ssm/deserializers.go | 9 +
service/ssm/go.mod | 2 +-
service/ssm/go.sum | 5 +-
service/ssm/serializers.go | 5 +
service/ssm/types/types.go | 22 +-
service/sso/go.mod | 2 +-
service/sso/go.sum | 5 +-
service/ssoadmin/go.mod | 2 +-
service/ssoadmin/go.sum | 5 +-
service/ssooidc/go.mod | 2 +-
service/ssooidc/go.sum | 5 +-
service/storagegateway/go.mod | 2 +-
service/storagegateway/go.sum | 5 +-
service/sts/go.mod | 2 +-
service/sts/go.sum | 5 +-
service/support/go.mod | 2 +-
service/support/go.sum | 5 +-
service/swf/go.mod | 2 +-
service/swf/go.sum | 5 +-
service/synthetics/go.mod | 2 +-
service/synthetics/go.sum | 5 +-
service/textract/go.mod | 2 +-
service/textract/go.sum | 5 +-
service/timestreamquery/go.mod | 2 +-
service/timestreamquery/go.sum | 5 +-
service/timestreamwrite/go.mod | 2 +-
service/timestreamwrite/go.sum | 5 +-
service/transcribe/go.mod | 2 +-
service/transcribe/go.sum | 5 +-
service/transcribe/types/enums.go | 10 +
service/transcribe/types/types.go | 5 +-
service/transfer/go.mod | 2 +-
service/transfer/go.sum | 5 +-
service/translate/go.mod | 2 +-
service/translate/go.sum | 5 +-
service/waf/go.mod | 2 +-
service/waf/go.sum | 5 +-
service/wafregional/go.mod | 2 +-
service/wafregional/go.sum | 5 +-
service/wafv2/api_op_CreateRuleGroup.go | 15 +
service/wafv2/api_op_CreateWebACL.go | 15 +
service/wafv2/api_op_UpdateIPSet.go | 6 +-
service/wafv2/api_op_UpdateRuleGroup.go | 15 +
service/wafv2/api_op_UpdateWebACL.go | 15 +
service/wafv2/deserializers.go | 304 +
service/wafv2/go.mod | 2 +-
service/wafv2/go.sum | 5 +-
service/wafv2/serializers.go | 148 +
service/wafv2/types/enums.go | 28 +
service/wafv2/types/types.go | 220 +-
service/wafv2/validators.go | 265 +
service/wellarchitected/go.mod | 2 +-
service/wellarchitected/go.sum | 5 +-
service/workdocs/go.mod | 2 +-
service/workdocs/go.sum | 5 +-
service/worklink/go.mod | 2 +-
service/worklink/go.sum | 5 +-
.../api_op_CreateMobileDeviceAccessRule.go | 197 +
.../api_op_DeleteMobileDeviceAccessRule.go | 118 +
.../api_op_GetMobileDeviceAccessEffect.go | 138 +
.../api_op_ListMobileDeviceAccessRules.go | 119 +
.../api_op_UpdateMobileDeviceAccessRule.go | 160 +
service/workmail/deserializers.go | 1354 ++-
service/workmail/go.mod | 2 +-
service/workmail/go.sum | 5 +-
service/workmail/serializers.go | 516 +
service/workmail/types/enums.go | 18 +
service/workmail/types/types.go | 58 +
service/workmail/validators.go | 213 +
service/workmailmessageflow/go.mod | 2 +-
service/workmailmessageflow/go.sum | 5 +-
service/workspaces/go.mod | 2 +-
service/workspaces/go.sum | 5 +-
service/xray/go.mod | 2 +-
service/xray/go.sum | 5 +-
1067 files changed, 88502 insertions(+), 6614 deletions(-)
create mode 100644 .changes/next-release/service.location-major-1617316069737027000.json
create mode 100644 .changes/next-release/service.lookoutmetrics-major-1617316030898278000.json
create mode 100644 .changes/next-release/service.wildcard-feature-1617317952710894000.json
create mode 100644 .changes/next-release/wildcard-dependency-1617315822159829000.json
create mode 100644 codegen/sdk-codegen/aws-models/location.2020-11-19.json
create mode 100644 codegen/sdk-codegen/aws-models/lookoutmetrics.2017-07-25.json
create mode 100644 service/cloudwatch/api_op_DeleteMetricStream.go
create mode 100644 service/cloudwatch/api_op_GetMetricStream.go
create mode 100644 service/cloudwatch/api_op_ListMetricStreams.go
create mode 100644 service/cloudwatch/api_op_PutMetricStream.go
create mode 100644 service/cloudwatch/api_op_StartMetricStreams.go
create mode 100644 service/cloudwatch/api_op_StopMetricStreams.go
create mode 100644 service/configservice/api_op_DescribeAggregateComplianceByConformancePacks.go
create mode 100644 service/configservice/api_op_GetAggregateConformancePackComplianceSummary.go
create mode 100644 service/detective/api_op_ListTagsForResource.go
create mode 100644 service/detective/api_op_TagResource.go
create mode 100644 service/detective/api_op_UntagResource.go
create mode 100644 service/directconnect/api_op_AssociateMacSecKey.go
create mode 100644 service/directconnect/api_op_DisassociateMacSecKey.go
create mode 100644 service/directconnect/api_op_UpdateConnection.go
create mode 100644 service/ec2/api_op_CreateReplaceRootVolumeTask.go
create mode 100644 service/ec2/api_op_DescribeReplaceRootVolumeTasks.go
create mode 100644 service/ec2/api_op_DisableSerialConsoleAccess.go
create mode 100644 service/ec2/api_op_EnableSerialConsoleAccess.go
create mode 100644 service/ec2/api_op_GetSerialConsoleAccessStatus.go
create mode 100644 service/ec2instanceconnect/api_op_SendSerialConsoleSSHPublicKey.go
create mode 100644 service/frauddetector/api_op_CancelBatchPredictionJob.go
create mode 100644 service/frauddetector/api_op_CreateBatchPredictionJob.go
create mode 100644 service/frauddetector/api_op_DeleteBatchPredictionJob.go
create mode 100644 service/frauddetector/api_op_GetBatchPredictionJobs.go
create mode 100644 service/location/LICENSE.txt
create mode 100644 service/location/api_client.go
create mode 100644 service/location/api_op_AssociateTrackerConsumer.go
create mode 100644 service/location/api_op_BatchDeleteGeofence.go
create mode 100644 service/location/api_op_BatchEvaluateGeofences.go
create mode 100644 service/location/api_op_BatchGetDevicePosition.go
create mode 100644 service/location/api_op_BatchPutGeofence.go
create mode 100644 service/location/api_op_BatchUpdateDevicePosition.go
create mode 100644 service/location/api_op_CreateGeofenceCollection.go
create mode 100644 service/location/api_op_CreateMap.go
create mode 100644 service/location/api_op_CreatePlaceIndex.go
create mode 100644 service/location/api_op_CreateTracker.go
create mode 100644 service/location/api_op_DeleteGeofenceCollection.go
create mode 100644 service/location/api_op_DeleteMap.go
create mode 100644 service/location/api_op_DeletePlaceIndex.go
create mode 100644 service/location/api_op_DeleteTracker.go
create mode 100644 service/location/api_op_DescribeGeofenceCollection.go
create mode 100644 service/location/api_op_DescribeMap.go
create mode 100644 service/location/api_op_DescribePlaceIndex.go
create mode 100644 service/location/api_op_DescribeTracker.go
create mode 100644 service/location/api_op_DisassociateTrackerConsumer.go
create mode 100644 service/location/api_op_GetDevicePosition.go
create mode 100644 service/location/api_op_GetDevicePositionHistory.go
create mode 100644 service/location/api_op_GetGeofence.go
create mode 100644 service/location/api_op_GetMapGlyphs.go
create mode 100644 service/location/api_op_GetMapSprites.go
create mode 100644 service/location/api_op_GetMapStyleDescriptor.go
create mode 100644 service/location/api_op_GetMapTile.go
create mode 100644 service/location/api_op_ListGeofenceCollections.go
create mode 100644 service/location/api_op_ListGeofences.go
create mode 100644 service/location/api_op_ListMaps.go
create mode 100644 service/location/api_op_ListPlaceIndexes.go
create mode 100644 service/location/api_op_ListTrackerConsumers.go
create mode 100644 service/location/api_op_ListTrackers.go
create mode 100644 service/location/api_op_PutGeofence.go
create mode 100644 service/location/api_op_SearchPlaceIndexForPosition.go
create mode 100644 service/location/api_op_SearchPlaceIndexForText.go
create mode 100644 service/location/deserializers.go
create mode 100644 service/location/doc.go
create mode 100644 service/location/endpoints.go
create mode 100644 service/location/go.mod
create mode 100644 service/location/go.sum
create mode 100644 service/location/internal/endpoints/endpoints.go
create mode 100644 service/location/internal/endpoints/endpoints_test.go
create mode 100644 service/location/protocol_test.go
create mode 100644 service/location/serializers.go
create mode 100644 service/location/types/enums.go
create mode 100644 service/location/types/errors.go
create mode 100644 service/location/types/types.go
create mode 100644 service/location/validators.go
create mode 100644 service/lookoutmetrics/LICENSE.txt
create mode 100644 service/lookoutmetrics/api_client.go
create mode 100644 service/lookoutmetrics/api_op_ActivateAnomalyDetector.go
create mode 100644 service/lookoutmetrics/api_op_BackTestAnomalyDetector.go
create mode 100644 service/lookoutmetrics/api_op_CreateAlert.go
create mode 100644 service/lookoutmetrics/api_op_CreateAnomalyDetector.go
create mode 100644 service/lookoutmetrics/api_op_CreateMetricSet.go
create mode 100644 service/lookoutmetrics/api_op_DeleteAlert.go
create mode 100644 service/lookoutmetrics/api_op_DeleteAnomalyDetector.go
create mode 100644 service/lookoutmetrics/api_op_DescribeAlert.go
create mode 100644 service/lookoutmetrics/api_op_DescribeAnomalyDetectionExecutions.go
create mode 100644 service/lookoutmetrics/api_op_DescribeAnomalyDetector.go
create mode 100644 service/lookoutmetrics/api_op_DescribeMetricSet.go
create mode 100644 service/lookoutmetrics/api_op_GetAnomalyGroup.go
create mode 100644 service/lookoutmetrics/api_op_GetFeedback.go
create mode 100644 service/lookoutmetrics/api_op_GetSampleData.go
create mode 100644 service/lookoutmetrics/api_op_ListAlerts.go
create mode 100644 service/lookoutmetrics/api_op_ListAnomalyDetectors.go
create mode 100644 service/lookoutmetrics/api_op_ListAnomalyGroupSummaries.go
create mode 100644 service/lookoutmetrics/api_op_ListAnomalyGroupTimeSeries.go
create mode 100644 service/lookoutmetrics/api_op_ListMetricSets.go
create mode 100644 service/lookoutmetrics/api_op_ListTagsForResource.go
create mode 100644 service/lookoutmetrics/api_op_PutFeedback.go
create mode 100644 service/lookoutmetrics/api_op_TagResource.go
create mode 100644 service/lookoutmetrics/api_op_UntagResource.go
create mode 100644 service/lookoutmetrics/api_op_UpdateAnomalyDetector.go
create mode 100644 service/lookoutmetrics/api_op_UpdateMetricSet.go
create mode 100644 service/lookoutmetrics/deserializers.go
create mode 100644 service/lookoutmetrics/doc.go
create mode 100644 service/lookoutmetrics/endpoints.go
create mode 100644 service/lookoutmetrics/go.mod
create mode 100644 service/lookoutmetrics/go.sum
create mode 100644 service/lookoutmetrics/internal/endpoints/endpoints.go
create mode 100644 service/lookoutmetrics/internal/endpoints/endpoints_test.go
create mode 100644 service/lookoutmetrics/protocol_test.go
create mode 100644 service/lookoutmetrics/serializers.go
create mode 100644 service/lookoutmetrics/types/enums.go
create mode 100644 service/lookoutmetrics/types/errors.go
create mode 100644 service/lookoutmetrics/types/types.go
create mode 100644 service/lookoutmetrics/validators.go
create mode 100644 service/macie2/api_op_GetFindingsPublicationConfiguration.go
create mode 100644 service/macie2/api_op_PutFindingsPublicationConfiguration.go
create mode 100644 service/redshift/api_op_AuthorizeEndpointAccess.go
create mode 100644 service/redshift/api_op_CreateEndpointAccess.go
create mode 100644 service/redshift/api_op_DeleteEndpointAccess.go
create mode 100644 service/redshift/api_op_DescribeEndpointAccess.go
create mode 100644 service/redshift/api_op_DescribeEndpointAuthorization.go
create mode 100644 service/redshift/api_op_ModifyEndpointAccess.go
create mode 100644 service/redshift/api_op_RevokeEndpointAccess.go
create mode 100644 service/rekognition/api_op_ListTagsForResource.go
create mode 100644 service/rekognition/api_op_TagResource.go
create mode 100644 service/rekognition/api_op_UntagResource.go
create mode 100644 service/workmail/api_op_CreateMobileDeviceAccessRule.go
create mode 100644 service/workmail/api_op_DeleteMobileDeviceAccessRule.go
create mode 100644 service/workmail/api_op_GetMobileDeviceAccessEffect.go
create mode 100644 service/workmail/api_op_ListMobileDeviceAccessRules.go
create mode 100644 service/workmail/api_op_UpdateMobileDeviceAccessRule.go
diff --git a/.changes/next-release/service.location-major-1617316069737027000.json b/.changes/next-release/service.location-major-1617316069737027000.json
new file mode 100644
index 00000000000..e2066277a6b
--- /dev/null
+++ b/.changes/next-release/service.location-major-1617316069737027000.json
@@ -0,0 +1,9 @@
+{
+ "ID": "service.location-major-1617316069737027000",
+ "SchemaVersion": 1,
+ "Module": "service/location",
+ "Type": "major",
+ "Description": "new service",
+ "MinVersion": "v1.0.0",
+ "AffectedModules": null
+}
\ No newline at end of file
diff --git a/.changes/next-release/service.lookoutmetrics-major-1617316030898278000.json b/.changes/next-release/service.lookoutmetrics-major-1617316030898278000.json
new file mode 100644
index 00000000000..8562bc84a82
--- /dev/null
+++ b/.changes/next-release/service.lookoutmetrics-major-1617316030898278000.json
@@ -0,0 +1,9 @@
+{
+ "ID": "service.lookoutmetrics-major-1617316030898278000",
+ "SchemaVersion": 1,
+ "Module": "service/lookoutmetrics",
+ "Type": "major",
+ "Description": "new service",
+ "MinVersion": "v1.0.0",
+ "AffectedModules": null
+}
\ No newline at end of file
diff --git a/.changes/next-release/service.wildcard-feature-1617317952710894000.json b/.changes/next-release/service.wildcard-feature-1617317952710894000.json
new file mode 100644
index 00000000000..201a026db2b
--- /dev/null
+++ b/.changes/next-release/service.wildcard-feature-1617317952710894000.json
@@ -0,0 +1,55 @@
+{
+ "ID": "service.wildcard-feature-1617317952710894000",
+ "SchemaVersion": 1,
+ "Module": "service/...",
+ "Type": "feature",
+ "Description": "updated to latest models",
+ "MinVersion": "",
+ "AffectedModules": [
+ "service/alexaforbusiness",
+ "service/batch",
+ "service/cloud9",
+ "service/cloudformation",
+ "service/cloudwatch",
+ "service/cloudwatchevents",
+ "service/codeartifact",
+ "service/cognitosync",
+ "service/comprehend",
+ "service/configservice",
+ "service/costexplorer",
+ "service/customerprofiles",
+ "service/databrew",
+ "service/datapipeline",
+ "service/detective",
+ "service/directconnect",
+ "service/ec2",
+ "service/ec2instanceconnect",
+ "service/eventbridge",
+ "service/fis",
+ "service/frauddetector",
+ "service/gamelift",
+ "service/glue",
+ "service/greengrass",
+ "service/iam",
+ "service/iot",
+ "service/iotwireless",
+ "service/location",
+ "service/lookoutmetrics",
+ "service/machinelearning",
+ "service/macie2",
+ "service/medialive",
+ "service/pinpoint",
+ "service/pricing",
+ "service/redshift",
+ "service/rekognition",
+ "service/route53",
+ "service/s3",
+ "service/s3control",
+ "service/sagemaker",
+ "service/sqs",
+ "service/ssm",
+ "service/transcribe",
+ "service/wafv2",
+ "service/workmail"
+ ]
+}
\ No newline at end of file
diff --git a/.changes/next-release/wildcard-dependency-1617315822159829000.json b/.changes/next-release/wildcard-dependency-1617315822159829000.json
new file mode 100644
index 00000000000..09fb460f99a
--- /dev/null
+++ b/.changes/next-release/wildcard-dependency-1617315822159829000.json
@@ -0,0 +1,294 @@
+{
+ "ID": "wildcard-dependency-1617315822159829000",
+ "SchemaVersion": 1,
+ "Module": "...",
+ "Type": "dependency",
+ "Description": "update smithy-go module",
+ "MinVersion": "",
+ "AffectedModules": [
+ "config",
+ "credentials",
+ "example/service/s3/listObjects",
+ "example/service/s3/usingPrivateLink",
+ "feature/cloudfront/sign",
+ "feature/dynamodb/attributevalue",
+ "feature/dynamodb/expression",
+ "feature/dynamodbstreams/attributevalue",
+ "feature/ec2/imds",
+ "feature/s3/manager",
+ "/",
+ "internal/protocoltest/awsrestjson",
+ "internal/protocoltest/ec2query",
+ "internal/protocoltest/jsonrpc",
+ "internal/protocoltest/jsonrpc10",
+ "internal/protocoltest/query",
+ "internal/protocoltest/restxml",
+ "internal/protocoltest/restxmlwithnamespace",
+ "internal/repotools/changes",
+ "internal/repotools",
+ "service/accessanalyzer",
+ "service/acm",
+ "service/acmpca",
+ "service/alexaforbusiness",
+ "service/amp",
+ "service/amplify",
+ "service/amplifybackend",
+ "service/apigateway",
+ "service/apigatewaymanagementapi",
+ "service/apigatewayv2",
+ "service/appconfig",
+ "service/appflow",
+ "service/appintegrations",
+ "service/applicationautoscaling",
+ "service/applicationdiscoveryservice",
+ "service/applicationinsights",
+ "service/appmesh",
+ "service/appstream",
+ "service/appsync",
+ "service/athena",
+ "service/auditmanager",
+ "service/autoscaling",
+ "service/autoscalingplans",
+ "service/backup",
+ "service/batch",
+ "service/braket",
+ "service/budgets",
+ "service/chime",
+ "service/cloud9",
+ "service/clouddirectory",
+ "service/cloudformation",
+ "service/cloudfront",
+ "service/cloudhsm",
+ "service/cloudhsmv2",
+ "service/cloudsearch",
+ "service/cloudsearchdomain",
+ "service/cloudtrail",
+ "service/cloudwatch",
+ "service/cloudwatchevents",
+ "service/cloudwatchlogs",
+ "service/codeartifact",
+ "service/codebuild",
+ "service/codecommit",
+ "service/codedeploy",
+ "service/codeguruprofiler",
+ "service/codegurureviewer",
+ "service/codepipeline",
+ "service/codestar",
+ "service/codestarconnections",
+ "service/codestarnotifications",
+ "service/cognitoidentity",
+ "service/cognitoidentityprovider",
+ "service/cognitosync",
+ "service/comprehend",
+ "service/comprehendmedical",
+ "service/computeoptimizer",
+ "service/configservice",
+ "service/connect",
+ "service/connectcontactlens",
+ "service/connectparticipant",
+ "service/costandusagereportservice",
+ "service/costexplorer",
+ "service/customerprofiles",
+ "service/databasemigrationservice",
+ "service/databrew",
+ "service/dataexchange",
+ "service/datapipeline",
+ "service/datasync",
+ "service/dax",
+ "service/detective",
+ "service/devicefarm",
+ "service/devopsguru",
+ "service/directconnect",
+ "service/directoryservice",
+ "service/dlm",
+ "service/docdb",
+ "service/dynamodb",
+ "service/dynamodbstreams",
+ "service/ebs",
+ "service/ec2",
+ "service/ec2instanceconnect",
+ "service/ecr",
+ "service/ecrpublic",
+ "service/ecs",
+ "service/efs",
+ "service/eks",
+ "service/elasticache",
+ "service/elasticbeanstalk",
+ "service/elasticinference",
+ "service/elasticloadbalancing",
+ "service/elasticloadbalancingv2",
+ "service/elasticsearchservice",
+ "service/elastictranscoder",
+ "service/emr",
+ "service/emrcontainers",
+ "service/eventbridge",
+ "service/firehose",
+ "service/fis",
+ "service/fms",
+ "service/forecast",
+ "service/forecastquery",
+ "service/frauddetector",
+ "service/fsx",
+ "service/gamelift",
+ "service/glacier",
+ "service/globalaccelerator",
+ "service/glue",
+ "service/greengrass",
+ "service/greengrassv2",
+ "service/groundstation",
+ "service/guardduty",
+ "service/health",
+ "service/healthlake",
+ "service/honeycode",
+ "service/iam",
+ "service/identitystore",
+ "service/imagebuilder",
+ "service/inspector",
+ "service/internal/accept-encoding",
+ "service/internal/benchmark",
+ "service/internal/integrationtest",
+ "service/internal/presigned-url",
+ "service/internal/s3shared",
+ "service/iot",
+ "service/iot1clickdevicesservice",
+ "service/iot1clickprojects",
+ "service/iotanalytics",
+ "service/iotdataplane",
+ "service/iotdeviceadvisor",
+ "service/iotevents",
+ "service/ioteventsdata",
+ "service/iotfleethub",
+ "service/iotjobsdataplane",
+ "service/iotsecuretunneling",
+ "service/iotsitewise",
+ "service/iotthingsgraph",
+ "service/iotwireless",
+ "service/ivs",
+ "service/kafka",
+ "service/kendra",
+ "service/kinesis",
+ "service/kinesisanalytics",
+ "service/kinesisanalyticsv2",
+ "service/kinesisvideo",
+ "service/kinesisvideoarchivedmedia",
+ "service/kinesisvideomedia",
+ "service/kinesisvideosignaling",
+ "service/kms",
+ "service/lakeformation",
+ "service/lambda",
+ "service/lexmodelbuildingservice",
+ "service/lexmodelsv2",
+ "service/lexruntimeservice",
+ "service/lexruntimev2",
+ "service/licensemanager",
+ "service/lightsail",
+ "service/location",
+ "service/lookoutmetrics",
+ "service/lookoutvision",
+ "service/machinelearning",
+ "service/macie",
+ "service/macie2",
+ "service/managedblockchain",
+ "service/marketplacecatalog",
+ "service/marketplacecommerceanalytics",
+ "service/marketplaceentitlementservice",
+ "service/marketplacemetering",
+ "service/mediaconnect",
+ "service/mediaconvert",
+ "service/medialive",
+ "service/mediapackage",
+ "service/mediapackagevod",
+ "service/mediastore",
+ "service/mediastoredata",
+ "service/mediatailor",
+ "service/migrationhub",
+ "service/migrationhubconfig",
+ "service/mobile",
+ "service/mq",
+ "service/mturk",
+ "service/mwaa",
+ "service/neptune",
+ "service/networkfirewall",
+ "service/networkmanager",
+ "service/opsworks",
+ "service/opsworkscm",
+ "service/organizations",
+ "service/outposts",
+ "service/personalize",
+ "service/personalizeevents",
+ "service/personalizeruntime",
+ "service/pi",
+ "service/pinpoint",
+ "service/pinpointemail",
+ "service/pinpointsmsvoice",
+ "service/polly",
+ "service/pricing",
+ "service/qldb",
+ "service/qldbsession",
+ "service/quicksight",
+ "service/ram",
+ "service/rds",
+ "service/rdsdata",
+ "service/redshift",
+ "service/redshiftdata",
+ "service/rekognition",
+ "service/resourcegroups",
+ "service/resourcegroupstaggingapi",
+ "service/robomaker",
+ "service/route53",
+ "service/route53domains",
+ "service/route53resolver",
+ "service/s3",
+ "service/s3/internal/configtesting",
+ "service/s3control",
+ "service/s3outposts",
+ "service/sagemaker",
+ "service/sagemakera2iruntime",
+ "service/sagemakeredge",
+ "service/sagemakerfeaturestoreruntime",
+ "service/sagemakerruntime",
+ "service/savingsplans",
+ "service/schemas",
+ "service/secretsmanager",
+ "service/securityhub",
+ "service/serverlessapplicationrepository",
+ "service/servicecatalog",
+ "service/servicecatalogappregistry",
+ "service/servicediscovery",
+ "service/servicequotas",
+ "service/ses",
+ "service/sesv2",
+ "service/sfn",
+ "service/shield",
+ "service/signer",
+ "service/sms",
+ "service/snowball",
+ "service/sns",
+ "service/sqs",
+ "service/ssm",
+ "service/sso",
+ "service/ssoadmin",
+ "service/ssooidc",
+ "service/storagegateway",
+ "service/sts",
+ "service/support",
+ "service/swf",
+ "service/synthetics",
+ "service/textract",
+ "service/timestreamquery",
+ "service/timestreamwrite",
+ "service/transcribe",
+ "service/transfer",
+ "service/translate",
+ "service/waf",
+ "service/wafregional",
+ "service/wafv2",
+ "service/wellarchitected",
+ "service/workdocs",
+ "service/worklink",
+ "service/workmail",
+ "service/workmailmessageflow",
+ "service/workspaces",
+ "service/xray"
+ ]
+}
\ No newline at end of file
diff --git a/codegen/sdk-codegen/aws-models/alexaforbusiness.2017-11-09.json b/codegen/sdk-codegen/aws-models/alexaforbusiness.2017-11-09.json
index 044c20633c2..4108610920e 100644
--- a/codegen/sdk-codegen/aws-models/alexaforbusiness.2017-11-09.json
+++ b/codegen/sdk-codegen/aws-models/alexaforbusiness.2017-11-09.json
@@ -2095,6 +2095,12 @@
"smithy.api#documentation": "
Whether PSTN calling is enabled.
"
}
},
+ "DataRetentionOptIn": {
+ "target": "com.amazonaws.alexaforbusiness#Boolean",
+ "traits": {
+ "smithy.api#documentation": "Whether data retention of the profile is enabled.
"
+ }
+ },
"MeetingRoomConfiguration": {
"target": "com.amazonaws.alexaforbusiness#CreateMeetingRoomConfiguration",
"traits": {
@@ -5879,6 +5885,12 @@
"smithy.api#documentation": "The PSTN setting of a room profile.
"
}
},
+ "DataRetentionOptIn": {
+ "target": "com.amazonaws.alexaforbusiness#Boolean",
+ "traits": {
+ "smithy.api#documentation": "Whether data retention of the profile is enabled.
"
+ }
+ },
"AddressBookArn": {
"target": "com.amazonaws.alexaforbusiness#Arn",
"traits": {
@@ -8820,6 +8832,12 @@
"smithy.api#documentation": "Whether the PSTN setting of the room profile is enabled.
"
}
},
+ "DataRetentionOptIn": {
+ "target": "com.amazonaws.alexaforbusiness#Boolean",
+ "traits": {
+ "smithy.api#documentation": "Whether data retention of the profile is enabled.
"
+ }
+ },
"MeetingRoomConfiguration": {
"target": "com.amazonaws.alexaforbusiness#UpdateMeetingRoomConfiguration",
"traits": {
diff --git a/codegen/sdk-codegen/aws-models/batch.2016-08-10.json b/codegen/sdk-codegen/aws-models/batch.2016-08-10.json
index 4eaccc7955c..e6c179f3ce0 100644
--- a/codegen/sdk-codegen/aws-models/batch.2016-08-10.json
+++ b/codegen/sdk-codegen/aws-models/batch.2016-08-10.json
@@ -103,7 +103,7 @@
"name": "batch"
},
"aws.protocols#restJson1": {},
- "smithy.api#documentation": "Using AWS Batch, you can run batch computing workloads on the AWS Cloud. Batch computing is a common means for\n developers, scientists, and engineers to access large amounts of compute resources. AWS Batch uses the advantages of\n this computing workload to remove the undifferentiated heavy lifting of configuring and managing required\n infrastructure. At the same time, it also adopts a familiar batch computing software approach. Given these\n advantages, AWS Batch can help you to efficiently provision resources in response to jobs submitted, thus effectively\n helping you to eliminate capacity constraints, reduce compute costs, and deliver your results more quickly.
\n As a fully managed service, AWS Batch can run batch computing workloads of any scale. AWS Batch automatically\n provisions compute resources and optimizes workload distribution based on the quantity and scale of your specific\n workloads. With AWS Batch, there's no need to install or manage batch computing software. This means that you can focus\n your time and energy on analyzing results and solving your specific problems.
",
+ "smithy.api#documentation": "Using AWS Batch, you can run batch computing workloads on the AWS Cloud. Batch computing is a common means for\n developers, scientists, and engineers to access large amounts of compute resources. AWS Batch uses the advantages of\n this computing workload to remove the undifferentiated heavy lifting of configuring and managing required\n infrastructure. At the same time, it also adopts a familiar batch computing software approach. Given these\n advantages, AWS Batch can help you to efficiently provision resources in response to jobs submitted, thus effectively\n helping you to eliminate capacity constraints, reduce compute costs, and deliver your results more quickly.
\n As a fully managed service, AWS Batch can run batch computing workloads of any scale. AWS Batch automatically\n provisions compute resources and optimizes workload distribution based on the quantity and scale of your specific\n workloads. With AWS Batch, there's no need to install or manage batch computing software. This means that you can focus\n your time and energy on analyzing results and solving your specific problems.
",
"smithy.api#title": "AWS Batch",
"smithy.api#xmlNamespace": {
"uri": "http://batch.amazonaws.com/doc/2016-08-10/"
@@ -494,7 +494,7 @@
"type": {
"target": "com.amazonaws.batch#CEType",
"traits": {
- "smithy.api#documentation": "The type of the compute environment: MANAGED
or UNMANAGED
. For more information, see\n Compute Environments in\n the AWS Batch User Guide .
"
+ "smithy.api#documentation": "The type of the compute environment: MANAGED
or UNMANAGED
. For more information, see\n Compute Environments in the\n AWS Batch User Guide .
"
}
},
"state": {
@@ -518,13 +518,13 @@
"computeResources": {
"target": "com.amazonaws.batch#ComputeResource",
"traits": {
- "smithy.api#documentation": "The compute resources defined for the compute environment. For more information, see Compute Environments in the\n AWS Batch User Guide .
"
+ "smithy.api#documentation": "The compute resources defined for the compute environment. For more information, see Compute Environments in the\n AWS Batch User Guide .
"
}
},
"serviceRole": {
"target": "com.amazonaws.batch#String",
"traits": {
- "smithy.api#documentation": "The service role associated with the compute environment that allows AWS Batch to make calls to AWS API\n operations on your behalf. For more information, see AWS Batch service IAM role in the\n AWS Batch User Guide .
"
+ "smithy.api#documentation": "The service role associated with the compute environment that allows AWS Batch to make calls to AWS API\n operations on your behalf. For more information, see AWS Batch service IAM role in the\n AWS Batch User Guide .
"
}
}
},
@@ -572,14 +572,14 @@
"type": {
"target": "com.amazonaws.batch#CRType",
"traits": {
- "smithy.api#documentation": "The type of compute environment: EC2
, SPOT
, FARGATE
, or\n FARGATE_SPOT
. For more information, see Compute Environments in the\n AWS Batch User Guide .
\n If you choose SPOT
, you must also specify an Amazon EC2 Spot Fleet role with the\n spotIamFleetRole
parameter. For more information, see Amazon EC2 Spot Fleet role in the\n AWS Batch User Guide .
",
+ "smithy.api#documentation": "The type of compute environment: EC2
, SPOT
, FARGATE
, or\n FARGATE_SPOT
. For more information, see Compute Environments in the\n AWS Batch User Guide .
\n If you choose SPOT
, you must also specify an Amazon EC2 Spot Fleet role with the\n spotIamFleetRole
parameter. For more information, see Amazon EC2 Spot Fleet role in the\n AWS Batch User Guide .
",
"smithy.api#required": {}
}
},
"allocationStrategy": {
"target": "com.amazonaws.batch#CRAllocationStrategy",
"traits": {
- "smithy.api#documentation": "The allocation strategy to use for the compute resource if not enough instances of the best fitting instance\n type can be allocated. This might be because of availability of the instance type in the Region or Amazon EC2 service limits . For more\n information, see Allocation\n Strategies in the AWS Batch User Guide .
\n \n This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.
\n \n \n BEST_FIT (default) \n \n AWS Batch selects an instance type that best fits the needs of the jobs with a preference for the lowest-cost\n instance type. If additional instances of the selected instance type aren't available, AWS Batch waits for the\n additional instances to be available. If there aren't enough instances available, or if the user is hitting Amazon EC2 service limits then\n additional jobs aren't run until the currently running jobs have completed. This allocation strategy keeps costs\n lower but can limit scaling. If you are using Spot Fleets with BEST_FIT
then the Spot Fleet IAM Role\n must be specified.
\n \n BEST_FIT_PROGRESSIVE \n \n AWS Batch will select additional instance types that are large enough to meet the requirements of the jobs in\n the queue, with a preference for instance types with a lower cost per unit vCPU. If additional instances of the\n previously selected instance types aren't available, AWS Batch will select new instance types.
\n \n SPOT_CAPACITY_OPTIMIZED \n \n AWS Batch will select one or more instance types that are large enough to meet the requirements of the jobs in\n the queue, with a preference for instance types that are less likely to be interrupted. This allocation strategy\n is only available for Spot Instance compute resources.
\n \n \n With both BEST_FIT_PROGRESSIVE
and SPOT_CAPACITY_OPTIMIZED
strategies, AWS Batch might\n need to go above maxvCpus
to meet your capacity requirements. In this event, AWS Batch never exceeds\n maxvCpus
by more than a single instance.
"
+ "smithy.api#documentation": "The allocation strategy to use for the compute resource if not enough instances of the best fitting instance\n type can be allocated. This might be because of availability of the instance type in the Region or Amazon EC2 service limits . For more\n information, see Allocation Strategies \n in the AWS Batch User Guide .
\n \n This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.
\n \n \n BEST_FIT (default) \n \n AWS Batch selects an instance type that best fits the needs of the jobs with a preference for the lowest-cost\n instance type. If additional instances of the selected instance type aren't available, AWS Batch waits for the\n additional instances to be available. If there aren't enough instances available, or if the user is hitting Amazon EC2 service limits then\n additional jobs aren't run until the currently running jobs have completed. This allocation strategy keeps costs\n lower but can limit scaling. If you are using Spot Fleets with BEST_FIT
then the Spot Fleet IAM Role\n must be specified.
\n \n BEST_FIT_PROGRESSIVE \n \n AWS Batch will select additional instance types that are large enough to meet the requirements of the jobs in\n the queue, with a preference for instance types with a lower cost per unit vCPU. If additional instances of the\n previously selected instance types aren't available, AWS Batch will select new instance types.
\n \n SPOT_CAPACITY_OPTIMIZED \n \n AWS Batch will select one or more instance types that are large enough to meet the requirements of the jobs in\n the queue, with a preference for instance types that are less likely to be interrupted. This allocation strategy\n is only available for Spot Instance compute resources.
\n \n \n With both BEST_FIT_PROGRESSIVE
and SPOT_CAPACITY_OPTIMIZED
strategies, AWS Batch might\n need to go above maxvCpus
to meet your capacity requirements. In this event, AWS Batch never exceeds\n maxvCpus
by more than a single instance.
"
}
},
"minvCpus": {
@@ -662,13 +662,13 @@
"spotIamFleetRole": {
"target": "com.amazonaws.batch#String",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the Amazon EC2 Spot Fleet IAM role applied to a SPOT
compute environment. This role is\n required if the allocation strategy set to BEST_FIT
or if the allocation strategy isn't specified. For\n more information, see Amazon EC2 Spot\n Fleet Role in the AWS Batch User Guide .
\n \n This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.
\n \n \n To tag your Spot Instances on creation, the Spot Fleet IAM role specified here must use the newer AmazonEC2SpotFleetTaggingRole managed policy. The previously recommended AmazonEC2SpotFleetRole managed policy doesn't have the required permissions to tag Spot\n Instances. For more information, see Spot Instances not tagged on\n creation in the AWS Batch User Guide .
\n "
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the Amazon EC2 Spot Fleet IAM role applied to a SPOT
compute environment. This role is\n required if the allocation strategy set to BEST_FIT
or if the allocation strategy isn't specified. For\n more information, see Amazon EC2 Spot Fleet\n Role in the AWS Batch User Guide .
\n \n This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.
\n \n \n To tag your Spot Instances on creation, the Spot Fleet IAM role specified here must use the newer AmazonEC2SpotFleetTaggingRole managed policy. The previously recommended AmazonEC2SpotFleetRole managed policy doesn't have the required permissions to tag Spot\n Instances. For more information, see Spot Instances not tagged on creation in the\n AWS Batch User Guide .
\n "
}
},
"launchTemplate": {
"target": "com.amazonaws.batch#LaunchTemplateSpecification",
"traits": {
- "smithy.api#documentation": "The launch template to use for your compute resources. Any other compute resource parameters that you specify in\n a CreateComputeEnvironment API operation override the same parameters in the launch template. You\n must specify either the launch template ID or launch template name in the request, but not both. For more\n information, see Launch Template\n Support in the AWS Batch User Guide .
\n \n This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.
\n "
+ "smithy.api#documentation": "The launch template to use for your compute resources. Any other compute resource parameters that you specify in\n a CreateComputeEnvironment API operation override the same parameters in the launch template. You\n must specify either the launch template ID or launch template name in the request, but not both. For more\n information, see Launch Template Support in\n the AWS Batch User Guide .
\n \n This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.
\n "
}
},
"ec2Configuration": {
@@ -679,7 +679,7 @@
}
},
"traits": {
- "smithy.api#documentation": "An object representing an AWS Batch compute resource. For more information, see Compute Environments in the\n AWS Batch User Guide .
"
+ "smithy.api#documentation": "An object representing an AWS Batch compute resource. For more information, see Compute Environments in the\n AWS Batch User Guide .
"
}
},
"com.amazonaws.batch#ComputeResourceUpdate": {
@@ -717,7 +717,7 @@
}
},
"traits": {
- "smithy.api#documentation": "An object representing the attributes of a compute environment that can be updated. For more information, see\n Compute Environments in\n the AWS Batch User Guide .
"
+ "smithy.api#documentation": "An object representing the attributes of a compute environment that can be updated. For more information, see\n Compute Environments in the\n AWS Batch User Guide .
"
}
},
"com.amazonaws.batch#ContainerDetail": {
@@ -732,7 +732,7 @@
"vcpus": {
"target": "com.amazonaws.batch#Integer",
"traits": {
- "smithy.api#documentation": "The number of vCPUs reserved for the container. For jobs that run on EC2 resources, you can specify the vCPU\n requirement for the job using resourceRequirements
, but you can't specify the vCPU requirements in both\n the vcpus
and resourceRequirement
object. This parameter maps to CpuShares
in\n the Create a container section of the Docker Remote API and the --cpu-shares
option to\n docker run . Each vCPU is equivalent to 1,024 CPU shares. You must\n specify at least one vCPU. This is required but can be specified in several places. It must be specified for each\n node at least once.
\n \n This parameter isn't applicable to jobs that run on Fargate resources. For jobs that run on Fargate\n resources, you must specify the vCPU requirement for the job using resourceRequirements
.
\n "
+ "smithy.api#documentation": "The number of vCPUs reserved for the container. For jobs that run on EC2 resources, you can specify the vCPU\n requirement for the job using resourceRequirements
, but you can't specify the vCPU requirements in both\n the vcpus
and resourceRequirement
object. This parameter maps to CpuShares
in\n the Create a container section of the Docker Remote API and the --cpu-shares
option to\n docker run . Each vCPU is equivalent to 1,024 CPU shares. You must\n specify at least one vCPU. This is required but can be specified in several places. It must be specified for each\n node at least once.
\n \n This parameter isn't applicable to jobs that run on Fargate resources. For jobs that run on Fargate\n resources, you must specify the vCPU requirement for the job using resourceRequirements
.
\n "
}
},
"memory": {
@@ -756,7 +756,7 @@
"executionRoleArn": {
"target": "com.amazonaws.batch#String",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the\n execution\n role that AWS Batch can assume. For more information, see AWS Batch execution\n IAM role in the AWS Batch User Guide .
"
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the\n execution\n role that AWS Batch can assume. For more information, see AWS Batch execution IAM role in the\n AWS Batch User Guide .
"
}
},
"volumes": {
@@ -1042,7 +1042,7 @@
"logConfiguration": {
"target": "com.amazonaws.batch#LogConfiguration",
"traits": {
- "smithy.api#documentation": "The log configuration specification for the container.
\n This parameter maps to LogConfig
in the Create a container section of the\n Docker Remote API and the --log-driver
option to docker run .\n By default, containers use the same logging driver that the Docker daemon uses. However the container might use a\n different logging driver than the Docker daemon by specifying a log driver with this parameter in the container\n definition. To use a different logging driver for a container, the log system must be configured properly on the\n container instance (or on a different log server for remote logging options). For more information on the options for\n different supported log drivers, see Configure\n logging drivers in the Docker documentation.
\n \n AWS Batch currently supports a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration data type).
\n \n This parameter requires version 1.18 of the Docker Remote API or greater on your\n container instance. To check the Docker Remote API version on your container instance, log into your\n container instance and run the following command: sudo docker version | grep \"Server API version\"
\n
\n \n The Amazon ECS container agent running on a container instance must register the logging drivers available on that\n instance with the ECS_AVAILABLE_LOGGING_DRIVERS
environment variable before containers placed on that\n instance can use these log configuration options. For more information, see Amazon ECS Container Agent Configuration in the\n Amazon Elastic Container Service Developer Guide .
\n "
+ "smithy.api#documentation": "The log configuration specification for the container.
\n This parameter maps to LogConfig
in the Create a container section of the\n Docker Remote API and the --log-driver
option to docker run .\n By default, containers use the same logging driver that the Docker daemon uses. However the container might use a\n different logging driver than the Docker daemon by specifying a log driver with this parameter in the container\n definition. To use a different logging driver for a container, the log system must be configured properly on the\n container instance (or on a different log server for remote logging options). For more information on the options for\n different supported log drivers, see Configure\n logging drivers in the Docker documentation.
\n \n AWS Batch currently supports a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration data type).
\n \n This parameter requires version 1.18 of the Docker Remote API or greater on your\n container instance. To check the Docker Remote API version on your container instance, log into your\n container instance and run the following command: sudo docker version | grep \"Server API version\"
\n
\n \n The Amazon ECS container agent running on a container instance must register the logging drivers available on that\n instance with the ECS_AVAILABLE_LOGGING_DRIVERS
environment variable before containers placed on that\n instance can use these log configuration options. For more information, see Amazon ECS Container Agent Configuration in the\n Amazon Elastic Container Service Developer Guide .
\n "
}
},
"secrets": {
@@ -1105,7 +1105,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates an AWS Batch compute environment. You can create MANAGED
or UNMANAGED
compute\n environments. MANAGED
compute environments can use Amazon EC2 or AWS Fargate resources.\n UNMANAGED
compute environments can only use EC2 resources.
\n In a managed compute environment, AWS Batch manages the capacity and instance types of the compute resources\n within the environment. This is based on the compute resource specification that you define or the launch template that you\n specify when you create the compute environment. Either, you can choose to use EC2 On-Demand Instances and EC2 Spot\n Instances. Or, you can use Fargate and Fargate Spot capacity in your managed compute environment. You can\n optionally set a maximum price so that Spot Instances only launch\n when\n the Spot Instance price is less than a specified percentage of the On-Demand price.
\n \n \n Multi-node parallel jobs aren't supported on Spot Instances.
\n \n In an unmanaged compute environment, you can manage your own EC2 compute resources and have a lot of flexibility\n with how you configure your compute resources. For example, you can use custom AMIs. However, you must verify that\n each of your AMIs meet the Amazon ECS container instance AMI specification. For more information, see container instance\n AMIs in the Amazon Elastic Container Service Developer Guide . After you created your unmanaged compute environment, you\n can use the DescribeComputeEnvironments operation to find the Amazon ECS cluster that's associated with\n it. Then, launch your container instances into that Amazon ECS cluster. For more information, see Launching an Amazon ECS\n container instance in the Amazon Elastic Container Service Developer Guide .
\n \n AWS Batch doesn't upgrade the AMIs in a compute environment after the environment is created. For example, it\n doesn't update the AMIs when a newer version of the Amazon ECS optimized AMI is available. Therefore, you're responsible\n for managing the guest operating system (including its updates and security patches) and any additional application\n software or utilities that you install on the compute resources. To use a new AMI for your AWS Batch jobs, complete\n these steps:
\n \n \n Create a new compute environment with the new AMI.
\n \n \n Add the compute environment to an existing job queue.
\n \n \n Remove the earlier compute environment from your job queue.
\n \n \n Delete the earlier compute environment.
\n \n \n ",
+ "smithy.api#documentation": "Creates an AWS Batch compute environment. You can create MANAGED
or UNMANAGED
compute\n environments. MANAGED
compute environments can use Amazon EC2 or AWS Fargate resources.\n UNMANAGED
compute environments can only use EC2 resources.
\n In a managed compute environment, AWS Batch manages the capacity and instance types of the compute resources\n within the environment. This is based on the compute resource specification that you define or the launch template that you\n specify when you create the compute environment. Either, you can choose to use EC2 On-Demand Instances and EC2 Spot\n Instances. Or, you can use Fargate and Fargate Spot capacity in your managed compute environment. You can\n optionally set a maximum price so that Spot Instances only launch\n when\n the Spot Instance price is less than a specified percentage of the On-Demand price.
\n \n \n Multi-node parallel jobs aren't supported on Spot Instances.
\n \n In an unmanaged compute environment, you can manage your own EC2 compute resources and have a lot of flexibility\n with how you configure your compute resources. For example, you can use custom AMIs. However, you must verify that\n each of your AMIs meet the Amazon ECS container instance AMI specification. For more information, see container instance AMIs in the\n Amazon Elastic Container Service Developer Guide . After you created your unmanaged compute environment, you can use the DescribeComputeEnvironments operation to find the Amazon ECS cluster that's associated with it. Then, launch\n your container instances into that Amazon ECS cluster. For more information, see Launching an Amazon ECS container instance in the\n Amazon Elastic Container Service Developer Guide .
\n \n AWS Batch doesn't upgrade the AMIs in a compute environment after the environment is created. For example, it\n doesn't update the AMIs when a newer version of the Amazon ECS optimized AMI is available. Therefore, you're responsible\n for managing the guest operating system (including its updates and security patches) and any additional application\n software or utilities that you install on the compute resources. To use a new AMI for your AWS Batch jobs, complete\n these steps:
\n \n \n Create a new compute environment with the new AMI.
\n \n \n Add the compute environment to an existing job queue.
\n \n \n Remove the earlier compute environment from your job queue.
\n \n \n Delete the earlier compute environment.
\n \n \n ",
"smithy.api#http": {
"method": "POST",
"uri": "/v1/createcomputeenvironment",
@@ -1126,7 +1126,7 @@
"type": {
"target": "com.amazonaws.batch#CEType",
"traits": {
- "smithy.api#documentation": "The type of the compute environment: MANAGED
or UNMANAGED
. For more information, see\n Compute Environments in\n the AWS Batch User Guide .
",
+ "smithy.api#documentation": "The type of the compute environment: MANAGED
or UNMANAGED
. For more information, see\n Compute Environments in the\n AWS Batch User Guide .
",
"smithy.api#required": {}
}
},
@@ -1139,13 +1139,13 @@
"computeResources": {
"target": "com.amazonaws.batch#ComputeResource",
"traits": {
- "smithy.api#documentation": "Details about the compute resources managed by the compute environment. This parameter is required for managed\n compute environments. For more information, see Compute Environments in the\n AWS Batch User Guide .
"
+ "smithy.api#documentation": "Details about the compute resources managed by the compute environment. This parameter is required for managed\n compute environments. For more information, see Compute Environments in the AWS Batch User Guide .
"
}
},
"serviceRole": {
"target": "com.amazonaws.batch#String",
"traits": {
- "smithy.api#documentation": "The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf. For\n more information, see AWS Batch service\n IAM role in the AWS Batch User Guide .
\n \n \n If your account has already created the AWS Batch service-linked role, that role is used by default for your\n compute environment unless you specify a role here. If the AWS Batch service-linked role does not exist in your\n account, and no role is specified here, the service will try to create the AWS Batch service-linked role in your\n account.
\n \n \n If your specified role has a path other than /
, then you must specify either the full role ARN\n (recommended) or prefix the role name with the path. For example, if a role with the name bar
has a path\n of /foo/
then you would specify /foo/bar
as the role name. For more information, see Friendly names\n and paths in the IAM User Guide .
\n \n Depending on how you created your AWS Batch service role, its ARN might contain the service-role
\n path prefix. When you only specify the name of the service role, AWS Batch assumes that your ARN doesn't use the\n service-role
path prefix. Because of this, we recommend that you specify the full ARN of your service\n role when you create compute environments.
\n "
+ "smithy.api#documentation": "The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf. For\n more information, see AWS Batch service IAM\n role in the AWS Batch User Guide .
\n \n If your account has already created the AWS Batch service-linked role, that role is used by default for your\n compute environment unless you specify a role here. If the AWS Batch service-linked role does not exist in your\n account, and no role is specified here, the service will try to create the AWS Batch service-linked role in your\n account.
\n \n If your specified role has a path other than /
, then you must specify either the full role ARN\n (recommended) or prefix the role name with the path. For example, if a role with the name bar
has a path\n of /foo/
then you would specify /foo/bar
as the role name. For more information, see Friendly names\n and paths in the IAM User Guide .
\n \n Depending on how you created your AWS Batch service role, its ARN might contain the service-role
\n path prefix. When you only specify the name of the service role, AWS Batch assumes that your ARN doesn't use the\n service-role
path prefix. Because of this, we recommend that you specify the full ARN of your service\n role when you create compute environments.
\n "
}
},
"tags": {
@@ -1234,7 +1234,7 @@
"tags": {
"target": "com.amazonaws.batch#TagrisTagsMap",
"traits": {
- "smithy.api#documentation": "The tags that you apply to the job queue to help you categorize and organize your resources. Each tag consists\n of a key and an optional value. For more information, see Tagging your AWS Batch resources in\n AWS Batch User Guide .
"
+ "smithy.api#documentation": "The tags that you apply to the job queue to help you categorize and organize your resources. Each tag consists\n of a key and an optional value. For more information, see Tagging your AWS Batch resources in AWS Batch User Guide .
"
}
}
},
@@ -1730,13 +1730,102 @@
"target": "com.amazonaws.batch#Device"
}
},
+ "com.amazonaws.batch#EFSAuthorizationConfig": {
+ "type": "structure",
+ "members": {
+ "accessPointId": {
+ "target": "com.amazonaws.batch#String",
+ "traits": {
+ "smithy.api#documentation": "The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the\n EFSVolumeConfiguration
must either be omitted or set to /
which will enforce the path set\n on the EFS access point. If an access point is used, transit encryption must be enabled in the\n EFSVolumeConfiguration
. For more information, see Working with Amazon EFS Access Points in the\n Amazon Elastic File System User Guide .
"
+ }
+ },
+ "iam": {
+ "target": "com.amazonaws.batch#EFSAuthorizationConfigIAM",
+ "traits": {
+ "smithy.api#documentation": "Whether or not to use the AWS Batch execution IAM role defined in a job definition when mounting the Amazon EFS file\n system. If enabled, transit encryption must be enabled in the EFSVolumeConfiguration
. If this parameter\n is omitted, the default value of DISABLED
is used. For more information, see Using Amazon EFS Access Points in the\n AWS Batch User Guide . EFS IAM authorization requires that TransitEncryption
be\n ENABLED
and that a JobRoleArn
is specified.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The authorization configuration details for the Amazon EFS file system.
"
+ }
+ },
+ "com.amazonaws.batch#EFSAuthorizationConfigIAM": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "ENABLED",
+ "name": "ENABLED"
+ },
+ {
+ "value": "DISABLED",
+ "name": "DISABLED"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.batch#EFSTransitEncryption": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "ENABLED",
+ "name": "ENABLED"
+ },
+ {
+ "value": "DISABLED",
+ "name": "DISABLED"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.batch#EFSVolumeConfiguration": {
+ "type": "structure",
+ "members": {
+ "fileSystemId": {
+ "target": "com.amazonaws.batch#String",
+ "traits": {
+ "smithy.api#documentation": "The Amazon EFS file system ID to use.
",
+ "smithy.api#required": {}
+ }
+ },
+ "rootDirectory": {
+ "target": "com.amazonaws.batch#String",
+ "traits": {
+ "smithy.api#documentation": "The directory within the Amazon EFS file system to mount as the root directory inside the host. If this parameter is\n omitted, the root of the Amazon EFS volume will be used. Specifying /
will have the same effect as omitting\n this parameter.
\n \n If an EFS access point is specified in the authorizationConfig
, the root directory parameter must\n either be omitted or set to /
which will enforce the path set on the Amazon EFS access point.
\n "
+ }
+ },
+ "transitEncryption": {
+ "target": "com.amazonaws.batch#EFSTransitEncryption",
+ "traits": {
+ "smithy.api#documentation": "Whether or not to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server.\n Transit encryption must be enabled if Amazon EFS IAM authorization is used. If this parameter is omitted, the default\n value of DISABLED
is used. For more information, see Encrypting data in transit in the\n Amazon Elastic File System User Guide .
"
+ }
+ },
+ "transitEncryptionPort": {
+ "target": "com.amazonaws.batch#Integer",
+ "traits": {
+ "smithy.api#documentation": "The port to use when sending encrypted data between the Amazon ECS host and the Amazon EFS server. If you do not specify a\n transit encryption port, it will use the port selection strategy that the Amazon EFS mount helper uses. For more\n information, see EFS Mount Helper in\n the Amazon Elastic File System User Guide .
"
+ }
+ },
+ "authorizationConfig": {
+ "target": "com.amazonaws.batch#EFSAuthorizationConfig",
+ "traits": {
+ "smithy.api#documentation": "The authorization configuration details for the Amazon EFS file system.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "This parameter is specified when you are using an Amazon Elastic File System file system for task storage. For more information,\n see Amazon EFS Volumes in the\n AWS Batch User Guide .
"
+ }
+ },
"com.amazonaws.batch#Ec2Configuration": {
"type": "structure",
"members": {
"imageType": {
"target": "com.amazonaws.batch#ImageType",
"traits": {
- "smithy.api#documentation": "The image type to match with the instance type to select an AMI. If the imageIdOverride
parameter\n isn't specified, then a recent Amazon ECS-optimized AMI is used.
\n \n ECS_AL2 \n \n \n Amazon Linux\n 2 − Default for all AWS Graviton-based instance families (for example, C6g
,\n M6g
, R6g
, and T4g
) and can be used for all non-GPU instance types.
\n \n ECS_AL2_NVIDIA \n \n \n Amazon Linux\n 2 (GPU) −Default for all GPU instance families (for example P4
and G4
) and\n can be used for all non-AWS Graviton-based instance types.
\n \n ECS_AL1 \n \n \n Amazon\n Linux −Default for all non-GPU, non-AWS Graviton instance families. Amazon Linux is reaching the\n end-of-life of standard support. For more information, see Amazon\n Linux AMI .
\n \n ",
+ "smithy.api#documentation": "The image type to match with the instance type to select an AMI. If the imageIdOverride
parameter\n isn't specified, then a recent Amazon ECS-optimized AMI (ECS_AL1
) is\n used. Starting on March 31, 2021, this default will be changing to ECS_AL2
(Amazon Linux 2 ).
\n \n ECS_AL2 \n \n \n Amazon Linux\n 2 − Default for all AWS Graviton-based instance families (for example, C6g
,\n M6g
, R6g
, and T4g
) and can be used for all non-GPU instance types.
\n \n ECS_AL2_NVIDIA \n \n \n Amazon Linux\n 2 (GPU) −Default for all GPU instance families (for example P4
and G4
) and\n can be used for all non-AWS Graviton-based instance types.
\n \n ECS_AL1 \n \n \n Amazon\n Linux −Default for all non-GPU, non-AWS Graviton instance families. Amazon Linux is reaching the\n end-of-life of standard support. For more information, see Amazon\n Linux AMI .
\n \n ",
"smithy.api#required": {}
}
},
@@ -1748,7 +1837,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Provides information used to select Amazon Machine Images (AMIs) for instances in the compute environment. If\n the Ec2Configuration
isn't specified, the default is ECS_AL1
.
\n \n This object isn't applicable to jobs running on Fargate resources.
\n "
+ "smithy.api#documentation": "Provides information used to select Amazon Machine Images (AMIs) for instances in the compute environment. If\n Ec2Configuration
isn't specified, the default is currently ECS_AL1
(Amazon Linux ) for\n non-GPU, non-Graviton instances. Starting on March 31, 2021, this default will be changing to ECS_AL2
\n (Amazon Linux\n 2 ).
\n \n This object isn't applicable to jobs running on Fargate resources.
\n "
}
},
"com.amazonaws.batch#Ec2ConfigurationList": {
@@ -1937,7 +2026,7 @@
"parameters": {
"target": "com.amazonaws.batch#ParametersMap",
"traits": {
- "smithy.api#documentation": "Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are\n specified as a key-value pair mapping. Parameters in a SubmitJob
request override any corresponding\n parameter defaults from the job definition. For more information about specifying parameters, see Job Definition Parameters \n in the AWS Batch User Guide .
"
+ "smithy.api#documentation": "Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are\n specified as a key-value pair mapping. Parameters in a SubmitJob
request override any corresponding\n parameter defaults from the job definition. For more information about specifying parameters, see Job Definition Parameters in the\n AWS Batch User Guide .
"
}
},
"retryStrategy": {
@@ -2067,7 +2156,7 @@
"status": {
"target": "com.amazonaws.batch#JobStatus",
"traits": {
- "smithy.api#documentation": "The current status for the job.
\n \n If your jobs don't progress to STARTING
, see Jobs Stuck in RUNNABLE Status in\n the troubleshooting section of the AWS Batch User Guide .
\n ",
+ "smithy.api#documentation": "The current status for the job.
\n \n If your jobs don't progress to STARTING
, see Jobs Stuck in RUNNABLE Status in the\n troubleshooting section of the AWS Batch User Guide .
\n ",
"smithy.api#required": {}
}
},
@@ -2239,7 +2328,7 @@
"tags": {
"target": "com.amazonaws.batch#TagrisTagsMap",
"traits": {
- "smithy.api#documentation": "The tags applied to the job queue. For more information, see Tagging your AWS Batch resources in\n AWS Batch User Guide .
"
+ "smithy.api#documentation": "The tags applied to the job queue. For more information, see Tagging your AWS Batch resources in\n AWS Batch User Guide .
"
}
}
},
@@ -2422,7 +2511,7 @@
"version": {
"target": "com.amazonaws.batch#String",
"traits": {
- "smithy.api#documentation": "The version number of the launch template, $Latest
, or $Default
.
\n If the value is $Latest
, the latest version of the launch template is used. If the value is\n $Default
, the default version of the launch template is used.
\n Default: $Default
.
"
+ "smithy.api#documentation": "The version number of the launch template, $Latest
, or $Default
.
\n If the value is $Latest
, the latest version of the launch template is used. If the value is\n $Default
, the default version of the launch template is used.
\n \n After the compute environment is created, the launch template version used will not be changed, even if the\n $Default
or $Latest
version for the launch template is updated. To use a new launch\n template version, create a new compute environment, add the new compute environment to the existing job queue,\n remove the old compute environment from the job queue, and delete the old compute environment.
\n \n Default: $Default
.
"
}
}
},
@@ -2621,14 +2710,14 @@
"logDriver": {
"target": "com.amazonaws.batch#LogDriver",
"traits": {
- "smithy.api#documentation": "The log driver to use for the container. The valid values listed for this parameter are log drivers that the\n Amazon ECS container agent can communicate with by default.
\n The supported log drivers are awslogs
, fluentd
, gelf
,\n json-file
, journald
, logentries
, syslog
, and\n splunk
.
\n \n Jobs running on Fargate resources are restricted to the awslogs
and splunk
log\n drivers.
\n \n \n awslogs \n \n Specifies the Amazon CloudWatch Logs logging driver. For more information, see Using the awslogs Log Driver in the\n AWS Batch User Guide and Amazon CloudWatch Logs logging driver in the Docker documentation.
\n \n fluentd \n \n Specifies the Fluentd logging driver. For more information, including usage and options, see Fluentd logging driver in the Docker\n documentation.
\n \n gelf \n \n Specifies the Graylog Extended Format (GELF) logging driver. For more information, including usage and\n options, see Graylog Extended Format logging\n driver in the Docker documentation.
\n \n journald \n \n Specifies the journald logging driver. For more information, including usage and options, see Journald logging driver in the Docker\n documentation.
\n \n json-file \n \n Specifies the JSON file logging driver. For more information, including usage and options, see JSON File logging driver in the Docker\n documentation.
\n \n splunk \n \n Specifies the Splunk logging driver. For more information, including usage and options, see Splunk logging driver in the Docker\n documentation.
\n \n syslog \n \n Specifies the syslog logging driver. For more information, including usage and options, see Syslog logging driver in the Docker\n documentation.
\n \n \n \n If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you\n can fork the Amazon ECS container agent project that's available on\n GitHub and customize it to work with that driver. We encourage you to submit pull requests for changes that\n you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this\n software.
\n \n This parameter requires version 1.18 of the Docker Remote API or greater on your\n container instance. To check the Docker Remote API version on your container instance, log into your\n container instance and run the following command: sudo docker version | grep \"Server API version\"
\n
",
+ "smithy.api#documentation": "The log driver to use for the container. The valid values listed for this parameter are log drivers that the\n Amazon ECS container agent can communicate with by default.
\n The supported log drivers are awslogs
, fluentd
, gelf
,\n json-file
, journald
, logentries
, syslog
, and\n splunk
.
\n \n Jobs running on Fargate resources are restricted to the awslogs
and splunk
log\n drivers.
\n \n \n awslogs \n \n Specifies the Amazon CloudWatch Logs logging driver. For more information, see Using the awslogs Log Driver in the\n AWS Batch User Guide and Amazon CloudWatch Logs logging driver in the Docker documentation.
\n \n fluentd \n \n Specifies the Fluentd logging driver. For more information, including usage and options, see Fluentd logging driver in the Docker\n documentation.
\n \n gelf \n \n Specifies the Graylog Extended Format (GELF) logging driver. For more information, including usage and\n options, see Graylog Extended Format logging\n driver in the Docker documentation.
\n \n journald \n \n Specifies the journald logging driver. For more information, including usage and options, see Journald logging driver in the Docker\n documentation.
\n \n json-file \n \n Specifies the JSON file logging driver. For more information, including usage and options, see JSON File logging driver in the Docker\n documentation.
\n \n splunk \n \n Specifies the Splunk logging driver. For more information, including usage and options, see Splunk logging driver in the Docker\n documentation.
\n \n syslog \n \n Specifies the syslog logging driver. For more information, including usage and options, see Syslog logging driver in the Docker\n documentation.
\n \n \n \n If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you\n can fork the Amazon ECS container agent project that's available on\n GitHub and customize it to work with that driver. We encourage you to submit pull requests for changes that\n you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this\n software.
\n \n This parameter requires version 1.18 of the Docker Remote API or greater on your\n container instance. To check the Docker Remote API version on your container instance, log into your\n container instance and run the following command: sudo docker version | grep \"Server API version\"
\n
",
"smithy.api#required": {}
}
},
"options": {
"target": "com.amazonaws.batch#LogConfigurationOptionsMap",
"traits": {
- "smithy.api#documentation": "The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your\n container instance. To check the Docker Remote API version on your container instance, log into your\n container instance and run the following command: sudo docker version | grep \"Server API version\"
\n
"
+ "smithy.api#documentation": "The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your\n container instance. To check the Docker Remote API version on your container instance, log into your\n container instance and run the following command: sudo docker version | grep \"Server API version\"
\n
"
}
},
"secretOptions": {
@@ -3021,13 +3110,13 @@
"timeout": {
"target": "com.amazonaws.batch#JobTimeout",
"traits": {
- "smithy.api#documentation": "The timeout configuration for jobs that are submitted with this job definition, after which AWS Batch terminates\n your jobs if they have not finished. If a job is terminated due to a timeout, it isn't retried. The minimum value for\n the timeout is 60 seconds. Any timeout configuration that's specified during a SubmitJob operation\n overrides the timeout configuration defined here. For more information, see Job Timeouts in the\n AWS Batch User Guide .
"
+ "smithy.api#documentation": "The timeout configuration for jobs that are submitted with this job definition, after which AWS Batch terminates\n your jobs if they have not finished. If a job is terminated due to a timeout, it isn't retried. The minimum value for\n the timeout is 60 seconds. Any timeout configuration that's specified during a SubmitJob operation\n overrides the timeout configuration defined here. For more information, see Job Timeouts in the AWS Batch User Guide .
"
}
},
"tags": {
"target": "com.amazonaws.batch#TagrisTagsMap",
"traits": {
- "smithy.api#documentation": "The tags that you apply to the job definition to help you categorize and organize your resources. Each tag\n consists of a key and an optional value. For more information, see Tagging AWS Resources in\n AWS Batch User Guide .
"
+ "smithy.api#documentation": "The tags that you apply to the job definition to help you categorize and organize your resources. Each tag\n consists of a key and an optional value. For more information, see Tagging AWS Resources in AWS Batch User Guide .
"
}
},
"platformCapabilities": {
@@ -3146,7 +3235,7 @@
}
},
"traits": {
- "smithy.api#documentation": "The retry strategy associated with a job. For more information, see Automated job retries in the\n AWS Batch User Guide .
"
+ "smithy.api#documentation": "The retry strategy associated with a job. For more information, see Automated job retries in the AWS Batch User Guide .
"
}
},
"com.amazonaws.batch#Secret": {
@@ -3168,7 +3257,7 @@
}
},
"traits": {
- "smithy.api#documentation": "An object representing the secret to expose to your container. Secrets can be exposed to a container in the\n following ways:
\n \n \n To inject sensitive data into your containers as environment variables, use the secrets
container\n definition parameter.
\n \n \n To reference sensitive information in the log configuration of a container, use the secretOptions
\n container definition parameter.
\n \n \n For more information, see Specifying sensitive data in the\n AWS Batch User Guide .
"
+ "smithy.api#documentation": "An object representing the secret to expose to your container. Secrets can be exposed to a container in the\n following ways:
\n \n \n To inject sensitive data into your containers as environment variables, use the secrets
container\n definition parameter.
\n \n \n To reference sensitive information in the log configuration of a container, use the secretOptions
\n container definition parameter.
\n \n \n For more information, see Specifying\n sensitive data in the AWS Batch User Guide .
"
}
},
"com.amazonaws.batch#SecretList": {
@@ -3216,7 +3305,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Submits an AWS Batch job from a job definition. Parameters that are specified during SubmitJob \n override parameters defined in the job definition. vCPU and memory requirements that are specified in the\n ResourceRequirements
objects in the job definition are the exception. They can't be overridden this way\n using the memory
and vcpus
parameters. Rather, you must specify updates to job definition\n parameters in a ResourceRequirements
object that's included in the containerOverrides
\n parameter.
\n \n Jobs that run on Fargate resources can't be guaranteed to run for more than 14 days. This is because, after\n 14 days, Fargate resources might become unavailable and job might be terminated.
\n ",
+ "smithy.api#documentation": "Submits an AWS Batch job from a job definition. Parameters that are specified during SubmitJob \n override parameters defined in the job definition. vCPU and memory requirements that are specified in the\n ResourceRequirements
objects in the job definition are the exception. They can't be overridden this way\n using the memory
and vcpus
parameters. Rather, you must specify updates to job definition\n parameters in a ResourceRequirements
object that's included in the containerOverrides
\n parameter.
\n \n Jobs that run on Fargate resources can't be guaranteed to run for more than 14 days. This is because, after 14\n days, Fargate resources might become unavailable and job might be terminated.
\n ",
"smithy.api#http": {
"method": "POST",
"uri": "/v1/submitjob",
@@ -3244,7 +3333,7 @@
"arrayProperties": {
"target": "com.amazonaws.batch#ArrayProperties",
"traits": {
- "smithy.api#documentation": "The array properties for the submitted job, such as the size of the array. The array size can be between 2 and\n 10,000. If you specify array properties for a job, it becomes an array job. For more information, see Array Jobs in the\n AWS Batch User Guide .
"
+ "smithy.api#documentation": "The array properties for the submitted job, such as the size of the array. The array size can be between 2 and\n 10,000. If you specify array properties for a job, it becomes an array job. For more information, see Array Jobs in the\n AWS Batch User Guide .
"
}
},
"dependsOn": {
@@ -3655,7 +3744,7 @@
"serviceRole": {
"target": "com.amazonaws.batch#String",
"traits": {
- "smithy.api#documentation": "The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf. For\n more information, see AWS Batch service\n IAM role in the AWS Batch User Guide .
\n If your specified role has a path other than /
, then you must either specify the full role ARN\n (this is recommended) or prefix the role name with the path.
\n \n Depending on how you created your AWS Batch service role, its ARN might contain the service-role
\n path prefix. When you only specify the name of the service role, AWS Batch assumes that your ARN doesn't use the\n service-role
path prefix. Because of this, we recommend that you specify the full ARN of your service\n role when you create compute environments.
\n "
+ "smithy.api#documentation": "The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf. For\n more information, see AWS Batch service IAM\n role in the AWS Batch User Guide .
\n \n If the compute environment has a service-linked role, it cannot be changed to use a regular IAM role. If the\n compute environment has a regular IAM role, it cannot be changed to use a service-linked role.
\n \n \n If your specified role has a path other than /
, then you must either specify the full role ARN\n (this is recommended) or prefix the role name with the path.
\n \n Depending on how you created your AWS Batch service role, its ARN might contain the service-role
\n path prefix. When you only specify the name of the service role, AWS Batch assumes that your ARN doesn't use the\n service-role
path prefix. Because of this, we recommend that you specify the full ARN of your service\n role when you create compute environments.
\n "
}
}
},
@@ -3769,6 +3858,12 @@
"traits": {
"smithy.api#documentation": "The name of the volume. Up to 255 letters (uppercase and lowercase), numbers, hyphens, and underscores are\n allowed. This name is referenced in the sourceVolume
\n parameter of container definition mountPoints
.
"
}
+ },
+ "efsVolumeConfiguration": {
+ "target": "com.amazonaws.batch#EFSVolumeConfiguration",
+ "traits": {
+ "smithy.api#documentation": "This parameter is specified when you are using an Amazon Elastic File System file system for job storage. Jobs running on\n Fargate resources must specify a platformVersion
of at least 1.4.0
.
"
+ }
}
},
"traits": {
diff --git a/codegen/sdk-codegen/aws-models/cloud9.2017-09-23.json b/codegen/sdk-codegen/aws-models/cloud9.2017-09-23.json
index 554a719366b..c5b534238d2 100644
--- a/codegen/sdk-codegen/aws-models/cloud9.2017-09-23.json
+++ b/codegen/sdk-codegen/aws-models/cloud9.2017-09-23.json
@@ -256,6 +256,12 @@
"smithy.api#documentation": "The ID of the subnet in Amazon VPC that AWS Cloud9 will use to communicate with the Amazon EC2 instance.
"
}
},
+ "imageId": {
+ "target": "com.amazonaws.cloud9#ImageId",
+ "traits": {
+ "smithy.api#documentation": "The identifier for the Amazon Machine Image (AMI) that's used to create the EC2 instance. You can specify the AMI for the instance using an AMI alias or an AWS Systems Manager (SSM) path. The default AMI is used if the parameter isn't explicitly assigned a value in the request. \n
\n \n AMI aliases \n
\n \n \n Amazon Linux 2: amazonlinux-2-x86_64
\n
\n \n \n Ubuntu 18.04: ubuntu-18.04-x86_64
\n
\n \n \n Amazon Linux (default): amazonlinux-1-x86_64
\n
\n \n \n \n \n SSM paths \n
\n \n \n Amazon Linux 2: resolve:ssm:/aws/service/cloud9/amis/amazonlinux-2-x86_64
\n
\n \n \n Ubuntu 18.04: resolve:ssm:/aws/service/cloud9/amis/ubuntu-18.04-x86_64
\n
\n \n \n Amazon Linux (default): resolve:ssm:/aws/service/cloud9/amis/amazonlinux-1-x86_64
\n
\n \n "
+ }
+ },
"automaticStopTimeMinutes": {
"target": "com.amazonaws.cloud9#AutomaticStopTimeMinutes",
"traits": {
@@ -277,7 +283,7 @@
"connectionType": {
"target": "com.amazonaws.cloud9#ConnectionType",
"traits": {
- "smithy.api#documentation": "The connection type used for connecting to an Amazon EC2 environment.
"
+ "smithy.api#documentation": "The connection type used for connecting to an Amazon EC2 environment. Valid values are CONNECT_SSH
(default) and CONNECT_SSM
(connected through AWS Systems Manager).
\n For more information, see Accessing no-ingress EC2 instances with AWS Systems Manager in the AWS Cloud9 User Guide .
"
}
}
}
@@ -361,7 +367,8 @@
"membership": {
"target": "com.amazonaws.cloud9#EnvironmentMember",
"traits": {
- "smithy.api#documentation": "Information about the environment member that was added.
"
+ "smithy.api#documentation": "Information about the environment member that was added.
",
+ "smithy.api#required": {}
}
}
}
@@ -622,13 +629,15 @@
"status": {
"target": "com.amazonaws.cloud9#EnvironmentStatus",
"traits": {
- "smithy.api#documentation": "The status of the environment. Available values include:
\n \n \n \n connecting
: The environment is connecting.
\n \n \n \n creating
: The environment is being created.
\n \n \n \n deleting
: The environment is being deleted.
\n \n \n \n error
: The environment is in an error state.
\n \n \n \n ready
: The environment is ready.
\n \n \n \n stopped
: The environment is stopped.
\n \n \n \n stopping
: The environment is stopping.
\n \n "
+ "smithy.api#documentation": "The status of the environment. Available values include:
\n \n \n \n connecting
: The environment is connecting.
\n \n \n \n creating
: The environment is being created.
\n \n \n \n deleting
: The environment is being deleted.
\n \n \n \n error
: The environment is in an error state.
\n \n \n \n ready
: The environment is ready.
\n \n \n \n stopped
: The environment is stopped.
\n \n \n \n stopping
: The environment is stopping.
\n \n ",
+ "smithy.api#required": {}
}
},
"message": {
"target": "com.amazonaws.cloud9#String",
"traits": {
- "smithy.api#documentation": "Any informational message about the status of the environment.
"
+ "smithy.api#documentation": "Any informational message about the status of the environment.
",
+ "smithy.api#required": {}
}
}
}
@@ -715,25 +724,28 @@
"type": {
"target": "com.amazonaws.cloud9#EnvironmentType",
"traits": {
- "smithy.api#documentation": "The type of environment. Valid values include the following:
\n "
+ "smithy.api#documentation": "The type of environment. Valid values include the following:
\n ",
+ "smithy.api#required": {}
}
},
"connectionType": {
"target": "com.amazonaws.cloud9#ConnectionType",
"traits": {
- "smithy.api#documentation": "The connection type used for connecting to an Amazon EC2 environment.
"
+ "smithy.api#documentation": "The connection type used for connecting to an Amazon EC2 environment. CONNECT_SSH
is selected by default.
"
}
},
"arn": {
"target": "com.amazonaws.cloud9#String",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the environment.
"
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the environment.
",
+ "smithy.api#required": {}
}
},
"ownerArn": {
"target": "com.amazonaws.cloud9#String",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the environment owner.
"
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the environment owner.
",
+ "smithy.api#required": {}
}
},
"lifecycle": {
@@ -741,6 +753,12 @@
"traits": {
"smithy.api#documentation": "The state of the environment in its creation or deletion lifecycle.
"
}
+ },
+ "managedCredentialsStatus": {
+ "target": "com.amazonaws.cloud9#ManagedCredentialsStatus",
+ "traits": {
+ "smithy.api#documentation": "Describes the status of AWS managed temporary credentials for the AWS Cloud9 environment. Available values\n are:
\n \n \n \n ENABLED_ON_CREATE
\n
\n \n \n \n ENABLED_BY_OWNER
\n
\n \n \n \n DISABLED_BY_DEFAULT
\n
\n \n \n \n DISABLED_BY_OWNER
\n
\n \n \n \n DISABLED_BY_COLLABORATOR
\n
\n \n \n \n PENDING_REMOVAL_BY_COLLABORATOR
\n
\n \n \n \n PENDING_REMOVAL_BY_OWNER
\n
\n \n \n \n FAILED_REMOVAL_BY_COLLABORATOR
\n
\n \n \n \n ENABLED_BY_OWNER
\n
\n \n \n \n DISABLED_BY_DEFAULT
\n
\n \n "
+ }
}
},
"traits": {
@@ -750,7 +768,7 @@
"com.amazonaws.cloud9#EnvironmentArn": {
"type": "string",
"traits": {
- "smithy.api#pattern": "arn:aws:cloud9:([a-z]{2}-[a-z]+-\\d{1}):[0-9]{12}:environment:[a-zA-Z0-9]{8,32}"
+ "smithy.api#pattern": "arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):cloud9:([a-z]{2}-[a-z]+-\\d{1}):[0-9]{12}:environment:[a-zA-Z0-9]{8,32}"
}
},
"com.amazonaws.cloud9#EnvironmentDescription": {
@@ -840,25 +858,29 @@
"permissions": {
"target": "com.amazonaws.cloud9#Permissions",
"traits": {
- "smithy.api#documentation": "The type of environment member permissions associated with this environment member. Available values include:
\n \n \n \n owner
: Owns the environment.
\n \n \n \n read-only
: Has read-only access to the environment.
\n \n \n \n read-write
: Has read-write access to the environment.
\n \n "
+ "smithy.api#documentation": "The type of environment member permissions associated with this environment member. Available values include:
\n \n \n \n owner
: Owns the environment.
\n \n \n \n read-only
: Has read-only access to the environment.
\n \n \n \n read-write
: Has read-write access to the environment.
\n \n ",
+ "smithy.api#required": {}
}
},
"userId": {
"target": "com.amazonaws.cloud9#String",
"traits": {
- "smithy.api#documentation": "The user ID in AWS Identity and Access Management (AWS IAM) of the environment member.
"
+ "smithy.api#documentation": "The user ID in AWS Identity and Access Management (AWS IAM) of the environment member.
",
+ "smithy.api#required": {}
}
},
"userArn": {
"target": "com.amazonaws.cloud9#UserArn",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the environment member.
"
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the environment member.
",
+ "smithy.api#required": {}
}
},
"environmentId": {
"target": "com.amazonaws.cloud9#EnvironmentId",
"traits": {
- "smithy.api#documentation": "The ID of the environment for the environment member.
"
+ "smithy.api#documentation": "The ID of the environment for the environment member.
",
+ "smithy.api#required": {}
}
},
"lastAccess": {
@@ -955,6 +977,15 @@
"smithy.api#error": "client"
}
},
+ "com.amazonaws.cloud9#ImageId": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 512
+ }
+ }
+ },
"com.amazonaws.cloud9#InstanceType": {
"type": "string",
"traits": {
@@ -1124,6 +1155,57 @@
}
}
},
+ "com.amazonaws.cloud9#ManagedCredentialsStatus": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "ENABLED_ON_CREATE",
+ "name": "ENABLED_ON_CREATE"
+ },
+ {
+ "value": "ENABLED_BY_OWNER",
+ "name": "ENABLED_BY_OWNER"
+ },
+ {
+ "value": "DISABLED_BY_DEFAULT",
+ "name": "DISABLED_BY_DEFAULT"
+ },
+ {
+ "value": "DISABLED_BY_OWNER",
+ "name": "DISABLED_BY_OWNER"
+ },
+ {
+ "value": "DISABLED_BY_COLLABORATOR",
+ "name": "DISABLED_BY_COLLABORATOR"
+ },
+ {
+ "value": "PENDING_REMOVAL_BY_COLLABORATOR",
+ "name": "PENDING_REMOVAL_BY_COLLABORATOR"
+ },
+ {
+ "value": "PENDING_START_REMOVAL_BY_COLLABORATOR",
+ "name": "PENDING_START_REMOVAL_BY_COLLABORATOR"
+ },
+ {
+ "value": "PENDING_REMOVAL_BY_OWNER",
+ "name": "PENDING_REMOVAL_BY_OWNER"
+ },
+ {
+ "value": "PENDING_START_REMOVAL_BY_OWNER",
+ "name": "PENDING_START_REMOVAL_BY_OWNER"
+ },
+ {
+ "value": "FAILED_REMOVAL_BY_COLLABORATOR",
+ "name": "FAILED_REMOVAL_BY_COLLABORATOR"
+ },
+ {
+ "value": "FAILED_REMOVAL_BY_OWNER",
+ "name": "FAILED_REMOVAL_BY_OWNER"
+ }
+ ]
+ }
+ },
"com.amazonaws.cloud9#MaxResults": {
"type": "integer",
"traits": {
@@ -1199,9 +1281,10 @@
"type": "string",
"traits": {
"smithy.api#length": {
- "min": 5,
- "max": 30
- }
+ "min": 15,
+ "max": 24
+ },
+ "smithy.api#pattern": "^(subnet-[0-9a-f]{8}|subnet-[0-9a-f]{17})$"
}
},
"com.amazonaws.cloud9#Tag": {
@@ -1223,7 +1306,8 @@
}
},
"traits": {
- "smithy.api#documentation": "Metadata that is associated with AWS resources. In particular, a name-value pair that can be associated with an AWS Cloud9 development environment. There are two types of tags: user tags and system tags . A user tag is created by the user. A system tag is automatically created by AWS services. A system tag is prefixed with \"aws:\" and cannot be modified by the user.
"
+ "smithy.api#documentation": "Metadata that is associated with AWS resources. In particular, a name-value pair that can be associated with an AWS Cloud9 development environment. There are two types of tags: user tags and system tags . A user tag is created by the user. A system tag is automatically created by AWS services. A system tag is prefixed with \"aws:\" and cannot be modified by the user.
",
+ "smithy.api#sensitive": {}
}
},
"com.amazonaws.cloud9#TagKey": {
@@ -1232,7 +1316,8 @@
"smithy.api#length": {
"min": 1,
"max": 128
- }
+ },
+ "smithy.api#sensitive": {}
}
},
"com.amazonaws.cloud9#TagKeyList": {
@@ -1244,7 +1329,8 @@
"smithy.api#length": {
"min": 0,
"max": 200
- }
+ },
+ "smithy.api#sensitive": {}
}
},
"com.amazonaws.cloud9#TagList": {
@@ -1256,7 +1342,8 @@
"smithy.api#length": {
"min": 0,
"max": 200
- }
+ },
+ "smithy.api#sensitive": {}
}
},
"com.amazonaws.cloud9#TagResource": {
@@ -1314,7 +1401,8 @@
"smithy.api#length": {
"min": 0,
"max": 256
- }
+ },
+ "smithy.api#sensitive": {}
}
},
"com.amazonaws.cloud9#Timestamp": {
@@ -1527,7 +1615,7 @@
"com.amazonaws.cloud9#UserArn": {
"type": "string",
"traits": {
- "smithy.api#pattern": "^arn:aws:(iam|sts)::\\d+:(root|(user\\/[\\w+=/:,.@-]{1,64}|federated-user\\/[\\w+=/:,.@-]{2,32}|assumed-role\\/[\\w+=:,.@-]{1,64}\\/[\\w+=,.@-]{1,64}))$"
+ "smithy.api#pattern": "^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):(iam|sts)::\\d+:(root|(user\\/[\\w+=/:,.@-]{1,64}|federated-user\\/[\\w+=/:,.@-]{2,32}|assumed-role\\/[\\w+=:,.@-]{1,64}\\/[\\w+=,.@-]{1,64}))$"
}
}
}
diff --git a/codegen/sdk-codegen/aws-models/cloudformation.2010-05-15.json b/codegen/sdk-codegen/aws-models/cloudformation.2010-05-15.json
index b7cbd2598e6..be3c94674dc 100644
--- a/codegen/sdk-codegen/aws-models/cloudformation.2010-05-15.json
+++ b/codegen/sdk-codegen/aws-models/cloudformation.2010-05-15.json
@@ -109,6 +109,16 @@
"target": "com.amazonaws.cloudformation#Account"
}
},
+ "com.amazonaws.cloudformation#AccountsUrl": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 5120
+ },
+ "smithy.api#pattern": "(s3://|http(s?)://).+"
+ }
+ },
"com.amazonaws.cloudformation#AllowedValue": {
"type": "string"
},
@@ -1598,6 +1608,9 @@
"smithy.api#documentation": "The names of one or more AWS accounts for which you want to deploy stack set updates.
"
}
},
+ "AccountsUrl": {
+ "target": "com.amazonaws.cloudformation#AccountsUrl"
+ },
"OrganizationalUnitIds": {
"target": "com.amazonaws.cloudformation#OrganizationalUnitIdList",
"traits": {
@@ -4942,6 +4955,21 @@
"smithy.api#pattern": "^[a-zA-Z0-9-]{1,128}$"
}
},
+ "com.amazonaws.cloudformation#RegionConcurrencyType": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "SEQUENTIAL",
+ "name": "SEQUENTIAL"
+ },
+ {
+ "value": "PARALLEL",
+ "name": "PARALLEL"
+ }
+ ]
+ }
+ },
"com.amazonaws.cloudformation#RegionList": {
"type": "list",
"member": {
@@ -7162,6 +7190,9 @@
"com.amazonaws.cloudformation#StackSetOperationPreferences": {
"type": "structure",
"members": {
+ "RegionConcurrencyType": {
+ "target": "com.amazonaws.cloudformation#RegionConcurrencyType"
+ },
"RegionOrder": {
"target": "com.amazonaws.cloudformation#RegionList",
"traits": {
diff --git a/codegen/sdk-codegen/aws-models/cloudwatch.2010-08-01.json b/codegen/sdk-codegen/aws-models/cloudwatch.2010-08-01.json
index d13f07a9731..69c9d52a3e6 100644
--- a/codegen/sdk-codegen/aws-models/cloudwatch.2010-08-01.json
+++ b/codegen/sdk-codegen/aws-models/cloudwatch.2010-08-01.json
@@ -826,6 +826,45 @@
}
}
},
+ "com.amazonaws.cloudwatch#DeleteMetricStream": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.cloudwatch#DeleteMetricStreamInput"
+ },
+ "output": {
+ "target": "com.amazonaws.cloudwatch#DeleteMetricStreamOutput"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.cloudwatch#InternalServiceFault"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#InvalidParameterValueException"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#MissingRequiredParameterException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Permanently deletes the metric stream that you specify.
"
+ }
+ },
+ "com.amazonaws.cloudwatch#DeleteMetricStreamInput": {
+ "type": "structure",
+ "members": {
+ "Name": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamName",
+ "traits": {
+ "smithy.api#documentation": "The name of the metric stream to delete.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.cloudwatch#DeleteMetricStreamOutput": {
+ "type": "structure",
+ "members": {}
+ },
"com.amazonaws.cloudwatch#DescribeAlarmHistory": {
"type": "operation",
"input": {
@@ -1918,6 +1957,112 @@
}
}
},
+ "com.amazonaws.cloudwatch#GetMetricStream": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.cloudwatch#GetMetricStreamInput"
+ },
+ "output": {
+ "target": "com.amazonaws.cloudwatch#GetMetricStreamOutput"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.cloudwatch#InternalServiceFault"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#InvalidParameterCombinationException"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#InvalidParameterValueException"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#MissingRequiredParameterException"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#ResourceNotFoundException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Returns information about the metric stream that you specify.
"
+ }
+ },
+ "com.amazonaws.cloudwatch#GetMetricStreamInput": {
+ "type": "structure",
+ "members": {
+ "Name": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamName",
+ "traits": {
+ "smithy.api#documentation": "The name of the metric stream to retrieve information about.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.cloudwatch#GetMetricStreamOutput": {
+ "type": "structure",
+ "members": {
+ "Arn": {
+ "target": "com.amazonaws.cloudwatch#AmazonResourceName",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the metric stream.
"
+ }
+ },
+ "Name": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamName",
+ "traits": {
+ "smithy.api#documentation": "The name of the metric stream.
"
+ }
+ },
+ "IncludeFilters": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamFilters",
+ "traits": {
+ "smithy.api#documentation": "If this array of metric namespaces is present, then these\n\t\t\tnamespaces are the only\n\t\tmetric namespaces that are streamed by this metric stream.
"
+ }
+ },
+ "ExcludeFilters": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamFilters",
+ "traits": {
+ "smithy.api#documentation": "If this array of metric namespaces is present, then these namespaces are the only\n\t\t\tmetric namespaces that are not streamed by this metric stream. In this case, all other metric namespaces in\n\t\tthe account are streamed by this metric stream.
"
+ }
+ },
+ "FirehoseArn": {
+ "target": "com.amazonaws.cloudwatch#AmazonResourceName",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the Amazon Kinesis Firehose delivery stream that is used by\n\t\tthis metric stream.
"
+ }
+ },
+ "RoleArn": {
+ "target": "com.amazonaws.cloudwatch#AmazonResourceName",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the IAM role that is used by this metric stream.
"
+ }
+ },
+ "State": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamState",
+ "traits": {
+ "smithy.api#documentation": "The state of the metric stream. The possible values are running
\n\t\tand stopped
.
"
+ }
+ },
+ "CreationDate": {
+ "target": "com.amazonaws.cloudwatch#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The date that the metric stream was created.
"
+ }
+ },
+ "LastUpdateDate": {
+ "target": "com.amazonaws.cloudwatch#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The date of the most recent update to the metric stream's configuration.
"
+ }
+ },
+ "OutputFormat": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamOutputFormat",
+ "traits": {
+ "smithy.api#documentation": "
"
+ }
+ }
+ }
+ },
"com.amazonaws.cloudwatch#GetMetricWidgetImage": {
"type": "operation",
"input": {
@@ -1975,6 +2120,9 @@
{
"target": "com.amazonaws.cloudwatch#DeleteInsightRules"
},
+ {
+ "target": "com.amazonaws.cloudwatch#DeleteMetricStream"
+ },
{
"target": "com.amazonaws.cloudwatch#DescribeAlarmHistory"
},
@@ -2014,6 +2162,9 @@
{
"target": "com.amazonaws.cloudwatch#GetMetricStatistics"
},
+ {
+ "target": "com.amazonaws.cloudwatch#GetMetricStream"
+ },
{
"target": "com.amazonaws.cloudwatch#GetMetricWidgetImage"
},
@@ -2023,6 +2174,9 @@
{
"target": "com.amazonaws.cloudwatch#ListMetrics"
},
+ {
+ "target": "com.amazonaws.cloudwatch#ListMetricStreams"
+ },
{
"target": "com.amazonaws.cloudwatch#ListTagsForResource"
},
@@ -2044,9 +2198,18 @@
{
"target": "com.amazonaws.cloudwatch#PutMetricData"
},
+ {
+ "target": "com.amazonaws.cloudwatch#PutMetricStream"
+ },
{
"target": "com.amazonaws.cloudwatch#SetAlarmState"
},
+ {
+ "target": "com.amazonaws.cloudwatch#StartMetricStreams"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#StopMetricStreams"
+ },
{
"target": "com.amazonaws.cloudwatch#TagResource"
},
@@ -2577,6 +2740,81 @@
}
}
},
+ "com.amazonaws.cloudwatch#ListMetricStreams": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.cloudwatch#ListMetricStreamsInput"
+ },
+ "output": {
+ "target": "com.amazonaws.cloudwatch#ListMetricStreamsOutput"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.cloudwatch#InternalServiceFault"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#InvalidNextToken"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#InvalidParameterValueException"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#MissingRequiredParameterException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Returns a list of metric streams in this account.
",
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "pageSize": "MaxResults"
+ }
+ }
+ },
+ "com.amazonaws.cloudwatch#ListMetricStreamsInput": {
+ "type": "structure",
+ "members": {
+ "NextToken": {
+ "target": "com.amazonaws.cloudwatch#NextToken",
+ "traits": {
+ "smithy.api#documentation": "Include this value, if it was returned by the previous call, to get the next set of metric streams.
"
+ }
+ },
+ "MaxResults": {
+ "target": "com.amazonaws.cloudwatch#ListMetricStreamsMaxResults",
+ "traits": {
+ "smithy.api#documentation": "The maximum number of results to return in one operation.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.cloudwatch#ListMetricStreamsMaxResults": {
+ "type": "integer",
+ "traits": {
+ "smithy.api#box": {},
+ "smithy.api#range": {
+ "min": 1,
+ "max": 500
+ }
+ }
+ },
+ "com.amazonaws.cloudwatch#ListMetricStreamsOutput": {
+ "type": "structure",
+ "members": {
+ "NextToken": {
+ "target": "com.amazonaws.cloudwatch#NextToken",
+ "traits": {
+ "smithy.api#documentation": "The token that marks the start of the next batch of returned results. You can use this \n\t\ttoken in a subsequent operation to get the next batch of results.
"
+ }
+ },
+ "Entries": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamEntries",
+ "traits": {
+ "smithy.api#documentation": "The array of metric stream information.
"
+ }
+ }
+ }
+ },
"com.amazonaws.cloudwatch#ListMetrics": {
"type": "operation",
"input": {
@@ -3191,6 +3429,119 @@
"smithy.api#documentation": "This structure defines the metric to be returned, along with the statistics, period, and units.
"
}
},
+ "com.amazonaws.cloudwatch#MetricStreamEntries": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamEntry"
+ }
+ },
+ "com.amazonaws.cloudwatch#MetricStreamEntry": {
+ "type": "structure",
+ "members": {
+ "Arn": {
+ "target": "com.amazonaws.cloudwatch#AmazonResourceName",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the metric stream.
"
+ }
+ },
+ "CreationDate": {
+ "target": "com.amazonaws.cloudwatch#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The date that the metric stream was originally created.
"
+ }
+ },
+ "LastUpdateDate": {
+ "target": "com.amazonaws.cloudwatch#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The date that the configuration of this metric stream was most recently updated.
"
+ }
+ },
+ "Name": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamName",
+ "traits": {
+ "smithy.api#documentation": "The name of the metric stream.
"
+ }
+ },
+ "FirehoseArn": {
+ "target": "com.amazonaws.cloudwatch#AmazonResourceName",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the Kinesis Firehose devlivery stream that is used for this metric stream.
"
+ }
+ },
+ "State": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamState",
+ "traits": {
+ "smithy.api#documentation": "The current state of this stream. Valid values are running
and stopped
.
"
+ }
+ },
+ "OutputFormat": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamOutputFormat",
+ "traits": {
+ "smithy.api#documentation": "The output format of this metric stream. Valid values are \n\t\t\tjson
\n\t\t\tand opentelemetry0.7
.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "This structure contains the configuration information about one metric stream.
"
+ }
+ },
+ "com.amazonaws.cloudwatch#MetricStreamFilter": {
+ "type": "structure",
+ "members": {
+ "Namespace": {
+ "target": "com.amazonaws.cloudwatch#Namespace",
+ "traits": {
+ "smithy.api#documentation": "The name of the metric namespace in the filter.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "This structure contains the name of one of the metric namespaces that is listed in\n\t\ta filter of a metric stream.
"
+ }
+ },
+ "com.amazonaws.cloudwatch#MetricStreamFilters": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamFilter"
+ }
+ },
+ "com.amazonaws.cloudwatch#MetricStreamName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 255
+ }
+ }
+ },
+ "com.amazonaws.cloudwatch#MetricStreamNames": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamName"
+ }
+ },
+ "com.amazonaws.cloudwatch#MetricStreamOutputFormat": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "json",
+ "name": "JSON"
+ },
+ {
+ "value": "opentelemetry0.7",
+ "name": "OPEN_TELEMETRY_0_7"
+ }
+ ],
+ "smithy.api#length": {
+ "min": 1,
+ "max": 255
+ }
+ }
+ },
+ "com.amazonaws.cloudwatch#MetricStreamState": {
+ "type": "string"
+ },
"com.amazonaws.cloudwatch#MetricWidget": {
"type": "string"
},
@@ -3532,7 +3883,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates or updates an alarm and associates it with the specified metric, metric math expression, \n\t\t\tor anomaly detection model.
\n\t\t Alarms based on anomaly detection models cannot have Auto Scaling actions.
\n\t\t When this operation creates an alarm, the alarm state is immediately set to\n\t\t\tINSUFFICIENT_DATA
. The alarm is then evaluated and its state is set\n\t\t\tappropriately. Any actions associated with the new state are then executed.
\n\t\t When you update an existing alarm, its state is left unchanged, but the\n\t\t\tupdate completely overwrites the previous configuration of the alarm.
\n\n\t\t If you are an IAM user, you must have \n\t\t\tAmazon EC2 permissions for some alarm operations:
\n\t\t \n\t\t\n\t\t\n\t\t\n\n\t\t\n\t\t\n\t\t The first time you create an alarm in the \n\t\t\tAWS Management Console, the CLI, or by using the PutMetricAlarm API, CloudWatch\n\t\t\tcreates the necessary service-linked rolea for you. The service-linked roles \n\t\t\tare called AWSServiceRoleForCloudWatchEvents
and \n\t\t\tAWSServiceRoleForCloudWatchAlarms_ActionSSM
.\n\t\t\tFor more information, see AWS service-linked role .
"
+ "smithy.api#documentation": "Creates or updates an alarm and associates it with the specified metric, metric math expression, \n\t\t\tor anomaly detection model.
\n\t\t Alarms based on anomaly detection models cannot have Auto Scaling actions.
\n\t\t When this operation creates an alarm, the alarm state is immediately set to\n\t\t\tINSUFFICIENT_DATA
. The alarm is then evaluated and its state is set\n\t\t\tappropriately. Any actions associated with the new state are then executed.
\n\t\t When you update an existing alarm, its state is left unchanged, but the\n\t\t\tupdate completely overwrites the previous configuration of the alarm.
\n\n\t\t If you are an IAM user, you must have \n\t\t\tAmazon EC2 permissions for some alarm operations:
\n\t\t \n\t\t\n\t\t\n\t\t\n\n\t\t\n\t\t\n\t\t The first time you create an alarm in the \n\t\t\tAWS Management Console, the CLI, or by using the PutMetricAlarm API, CloudWatch\n\t\t\tcreates the necessary service-linked role for you. The service-linked roles \n\t\t\tare called AWSServiceRoleForCloudWatchEvents
and \n\t\t\tAWSServiceRoleForCloudWatchAlarms_ActionSSM
.\n\t\t\tFor more information, see AWS service-linked role .
"
}
},
"com.amazonaws.cloudwatch#PutMetricAlarmInput": {
@@ -3560,7 +3911,7 @@
"OKActions": {
"target": "com.amazonaws.cloudwatch#ResourceList",
"traits": {
- "smithy.api#documentation": "The actions to execute when this alarm transitions to an OK
state\n\t\t\tfrom any other state. Each action is specified as an Amazon Resource Name (ARN).
\n\n\t\t Valid Values: arn:aws:automate:region :ec2:stop
| \n\t\t\tarn:aws:automate:region :ec2:terminate
| \n\t\t\tarn:aws:automate:region :ec2:recover
|\n\t\t\tarn:aws:automate:region :ec2:reboot
|\n\t\t\tarn:aws:sns:region :account-id :sns-topic-name \n
|\n\t\t\tarn:aws:autoscaling:region :account-id :scalingPolicy:policy-id :autoScalingGroupName/group-friendly-name :policyName/policy-friendly-name \n
\n
\n\n\t\t Valid Values (for use with IAM roles):\n\t\t\tarn:aws:swf:region :account-id :action/actions/AWS_EC2.InstanceId.Stop/1.0
|\n\t\t\t\tarn:aws:swf:region :account-id :action/actions/AWS_EC2.InstanceId.Terminate/1.0
|\n\t\t\t\tarn:aws:swf:region :account-id :action/actions/AWS_EC2.InstanceId.Reboot/1.0
\n
"
+ "smithy.api#documentation": "The actions to execute when this alarm transitions to an OK
state\n\t\t\tfrom any other state. Each action is specified as an Amazon Resource Name (ARN).
\n\n\t\t Valid Values: arn:aws:automate:region :ec2:stop
| \n\t\t\tarn:aws:automate:region :ec2:terminate
| \n\t\t\tarn:aws:automate:region :ec2:recover
|\n\t\t\tarn:aws:automate:region :ec2:reboot
|\n\t\t\tarn:aws:sns:region :account-id :sns-topic-name \n
|\n\t\t\tarn:aws:autoscaling:region :account-id :scalingPolicy:policy-id :autoScalingGroupName/group-friendly-name :policyName/policy-friendly-name \n
\n
\n\n\t\t Valid Values (for use with IAM roles):\n\t\t\tarn:aws:swf:region :account-id :action/actions/AWS_EC2.InstanceId.Stop/1.0
|\n\t\t\t\tarn:aws:swf:region :account-id :action/actions/AWS_EC2.InstanceId.Terminate/1.0
|\n\t\t\t\tarn:aws:swf:region :account-id :action/actions/AWS_EC2.InstanceId.Reboot/1.0
|\n\t\t\t arn:aws:swf:region :account-id :action/actions/AWS_EC2.InstanceId.Recover/1.0
\n
"
}
},
"AlarmActions": {
@@ -3717,6 +4068,97 @@
}
}
},
+ "com.amazonaws.cloudwatch#PutMetricStream": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.cloudwatch#PutMetricStreamInput"
+ },
+ "output": {
+ "target": "com.amazonaws.cloudwatch#PutMetricStreamOutput"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.cloudwatch#ConcurrentModificationException"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#InternalServiceFault"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#InvalidParameterCombinationException"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#InvalidParameterValueException"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#MissingRequiredParameterException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Creates or updates a metric stream. Metric streams can automatically stream CloudWatch metrics \n\t\t\tto AWS destinations including\n\t\t\tAmazon S3 and to many third-party solutions.
\n\t\t For more information, see \n\t\tUsing Metric Streams .
\n\t\t To create a metric stream, \n\t\t\tyou must be logged on to an account that has the iam:PassRole
permission\n\t\t\tand either the CloudWatchFullAccess
\n\t\tpolicy or the cloudwatch:PutMetricStream
\n\t\tpermission.
\n\t\t When you create or update a metric stream, you choose one of the following:
\n\t\t \n \n Stream metrics from all metric namespaces in the account.
\n \n \n Stream metrics from all metric namespaces in the account, except\n\t\t\t\tfor the namespaces that you list in ExcludeFilters
.
\n \n \n Stream metrics from only the metric namespaces that you list in \n\t\t\t\tIncludeFilters
.
\n \n \n\t\t\n\t\t When you use PutMetricStream
to create a new metric stream, the stream \n\t\tis created in the running
state. If you use it to update an existing stream, \n\t\tthe state of the stream is not changed.
"
+ }
+ },
+ "com.amazonaws.cloudwatch#PutMetricStreamInput": {
+ "type": "structure",
+ "members": {
+ "Name": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamName",
+ "traits": {
+ "smithy.api#documentation": "If you are creating a new metric stream, this is the name for the new stream. The name\n\t\tmust be different than the names of other metric streams in this account and Region.
\n\t\t If you are updating a metric stream, specify the name of that stream here.
\n\t\t Valid characters are A-Z, a-z, 0-9, \"-\" and \"_\".
",
+ "smithy.api#required": {}
+ }
+ },
+ "IncludeFilters": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamFilters",
+ "traits": {
+ "smithy.api#documentation": "If you specify this parameter, the stream sends only the \n\t\tmetrics from the metric namespaces that you specify here.
\n\t\t You cannot include IncludeFilters
and ExcludeFilters
\n\t\tin the same operation.
"
+ }
+ },
+ "ExcludeFilters": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamFilters",
+ "traits": {
+ "smithy.api#documentation": "If you specify this parameter, the stream sends metrics from all\n\t\t\tmetric namespaces except for the namespaces that you specify here.
\n\t\t You cannot include ExcludeFilters
and IncludeFilters
in \n\t\t\tthe same operation.
"
+ }
+ },
+ "FirehoseArn": {
+ "target": "com.amazonaws.cloudwatch#AmazonResourceName",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the Amazon Kinesis Firehose delivery stream to use for this metric stream.\n\t\tThis Amazon Kinesis Firehose delivery stream must already exist and must be in the same\n\t\taccount as the metric stream.
",
+ "smithy.api#required": {}
+ }
+ },
+ "RoleArn": {
+ "target": "com.amazonaws.cloudwatch#AmazonResourceName",
+ "traits": {
+ "smithy.api#documentation": "The ARN of an IAM role that this metric stream will use to access\n\t\t\tAmazon Kinesis Firehose resources. This IAM role must already \n\t\texist and must be in the same account as the metric stream. This IAM role must include the following permissions:
\n\t\t \n \n firehose:PutRecord
\n \n \n firehose:PutRecordBatch
\n \n ",
+ "smithy.api#required": {}
+ }
+ },
+ "OutputFormat": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamOutputFormat",
+ "traits": {
+ "smithy.api#documentation": "The output format for the stream. Valid values are json
\n\t\tand opentelemetry0.7
. For more information about metric stream\n\t\toutput formats, see \n\t\t\t\n\t\t\t\tMetric streams output formats .
",
+ "smithy.api#required": {}
+ }
+ },
+ "Tags": {
+ "target": "com.amazonaws.cloudwatch#TagList",
+ "traits": {
+ "smithy.api#documentation": "A list of key-value pairs to associate with the metric stream. You can associate as \n\t\t\tmany as 50 tags with a metric stream.
\n\t\t Tags can help you organize and categorize your resources. You can also use them to scope user\n\t\t\tpermissions by granting a user\n\t\t\tpermission to access or change only resources with certain tag values.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.cloudwatch#PutMetricStreamOutput": {
+ "type": "structure",
+ "members": {
+ "Arn": {
+ "target": "com.amazonaws.cloudwatch#AmazonResourceName",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the metric stream.
"
+ }
+ }
+ }
+ },
"com.amazonaws.cloudwatch#Range": {
"type": "structure",
"members": {
@@ -4000,6 +4442,45 @@
]
}
},
+ "com.amazonaws.cloudwatch#StartMetricStreams": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.cloudwatch#StartMetricStreamsInput"
+ },
+ "output": {
+ "target": "com.amazonaws.cloudwatch#StartMetricStreamsOutput"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.cloudwatch#InternalServiceFault"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#InvalidParameterValueException"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#MissingRequiredParameterException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Starts the streaming of metrics for one or more of your metric streams.
"
+ }
+ },
+ "com.amazonaws.cloudwatch#StartMetricStreamsInput": {
+ "type": "structure",
+ "members": {
+ "Names": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamNames",
+ "traits": {
+ "smithy.api#documentation": "The array of the names of metric streams to start streaming.
\n\t\t This is an \"all or nothing\" operation. If you do not have \n\t\tpermission to access all of the metric streams that you list here, then none of the streams that you list\n\t\tin the operation will start streaming.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.cloudwatch#StartMetricStreamsOutput": {
+ "type": "structure",
+ "members": {}
+ },
"com.amazonaws.cloudwatch#Stat": {
"type": "string"
},
@@ -4134,6 +4615,45 @@
]
}
},
+ "com.amazonaws.cloudwatch#StopMetricStreams": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.cloudwatch#StopMetricStreamsInput"
+ },
+ "output": {
+ "target": "com.amazonaws.cloudwatch#StopMetricStreamsOutput"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.cloudwatch#InternalServiceFault"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#InvalidParameterValueException"
+ },
+ {
+ "target": "com.amazonaws.cloudwatch#MissingRequiredParameterException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Stops the streaming of metrics for one or more of your metric streams.
"
+ }
+ },
+ "com.amazonaws.cloudwatch#StopMetricStreamsInput": {
+ "type": "structure",
+ "members": {
+ "Names": {
+ "target": "com.amazonaws.cloudwatch#MetricStreamNames",
+ "traits": {
+ "smithy.api#documentation": "The array of the names of metric streams to stop streaming.
\n\t\t This is an \"all or nothing\" operation. If you do not have \n\t\t\tpermission to access all of the metric streams that you list here, then none of the streams that you list\n\t\t\tin the operation will stop streaming.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.cloudwatch#StopMetricStreamsOutput": {
+ "type": "structure",
+ "members": {}
+ },
"com.amazonaws.cloudwatch#StorageResolution": {
"type": "integer",
"traits": {
diff --git a/codegen/sdk-codegen/aws-models/cloudwatchevents.2015-10-07.json b/codegen/sdk-codegen/aws-models/cloudwatchevents.2015-10-07.json
index 47b70bef3f6..cf4474d6b3c 100644
--- a/codegen/sdk-codegen/aws-models/cloudwatchevents.2015-10-07.json
+++ b/codegen/sdk-codegen/aws-models/cloudwatchevents.2015-10-07.json
@@ -4782,7 +4782,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Adds the specified targets to the specified rule, or updates the targets if they are\n already associated with the rule.
\n Targets are the resources that are invoked when a rule is triggered.
\n You can configure the following as targets for Events:
\n\n \n \n EC2 instances
\n \n \n SSM Run Command
\n \n \n SSM Automation
\n \n \n AWS Lambda functions
\n \n \n Data streams in Amazon Kinesis Data Streams
\n \n \n Data delivery streams in Amazon Kinesis Data Firehose
\n \n \n Amazon ECS tasks
\n \n \n AWS Step Functions state machines
\n \n \n AWS Batch jobs
\n \n \n AWS CodeBuild projects
\n \n \n Pipelines in AWS CodePipeline
\n \n \n Amazon Inspector assessment templates
\n \n \n Amazon SNS topics
\n \n \n Amazon SQS queues, including FIFO queues
\n \n \n The default event bus of another AWS account
\n \n \n Amazon API Gateway REST APIs
\n \n \n Redshift Clusters to invoke Data API ExecuteStatement on
\n \n \n Custom/SaaS HTTPS APIs via EventBridge API Destinations
\n \n \n\n\n\n Creating rules with built-in targets is supported only in the AWS Management Console. The\n built-in targets are EC2 CreateSnapshot API call
, EC2 RebootInstances API\n call
, EC2 StopInstances API call
, and EC2 TerminateInstances API\n call
.
\n\n For some target types, PutTargets
provides target-specific parameters. If the\n target is a Kinesis data stream, you can optionally specify which shard the event goes to by\n using the KinesisParameters
argument. To invoke a command on multiple EC2\n instances with one rule, you can use the RunCommandParameters
field.
\n\n To be able to make API calls against the resources that you own, Amazon EventBridge\n (CloudWatch Events) needs the appropriate permissions. For AWS Lambda and Amazon SNS\n resources, EventBridge relies on resource-based policies. For EC2 instances, Kinesis data\n streams, AWS Step Functions state machines and API Gateway REST APIs, EventBridge relies on\n IAM roles that you specify in the RoleARN
argument in PutTargets
.\n For more information, see Authentication\n and Access Control in the Amazon EventBridge User Guide .
\n\n If another AWS account is in the same region and has granted you permission (using\n PutPermission
), you can send events to that account. Set that account's event\n bus as a target of the rules in your account. To send the matched events to the other account,\n specify that account's event bus as the Arn
value when you run\n PutTargets
. If your account sends events to another account, your account is\n charged for each sent event. Each event sent to another account is charged as a custom event.\n The account receiving the event is not charged. For more information, see Amazon EventBridge (CloudWatch Events)\n Pricing .
\n\n \n \n Input
, InputPath
, and InputTransformer
are not\n available with PutTarget
if the target is an event bus of a different AWS\n account.
\n \n\n If you are setting the event bus of another account as the target, and that account\n granted permission to your account through an organization instead of directly by the account\n ID, then you must specify a RoleArn
with proper permissions in the\n Target
structure. For more information, see Sending and\n Receiving Events Between AWS Accounts in the Amazon EventBridge User\n Guide .
\n\n For more information about enabling cross-account events, see PutPermission .
\n\n \n Input , InputPath , and\n InputTransformer are mutually exclusive and optional\n parameters of a target. When a rule is triggered due to a matched event:
\n\n \n \n If none of the following arguments are specified for a target, then the entire event\n is passed to the target in JSON format (unless the target is Amazon EC2 Run Command or\n Amazon ECS task, in which case nothing from the event is passed to the target).
\n \n \n If Input is specified in the form of valid JSON, then\n the matched event is overridden with this constant.
\n \n \n If InputPath is specified in the form of JSONPath\n (for example, $.detail
), then only the part of the event specified in the\n path is passed to the target (for example, only the detail part of the event is\n passed).
\n \n \n If InputTransformer is specified, then one or more\n specified JSONPaths are extracted from the event and used as values in a template that you\n specify as the input to the target.
\n \n \n\n When you specify InputPath
or InputTransformer
, you must use\n JSON dot notation, not bracket notation.
\n\n When you add targets to a rule and the associated rule triggers soon after, new or updated\n targets might not be immediately invoked. Allow a short period of time for changes to take\n effect.
\n\n This action can partially fail if too many requests are made at the same time. If that\n happens, FailedEntryCount
is non-zero in the response and each entry in\n FailedEntries
provides the ID of the failed target and the error code.
"
+ "smithy.api#documentation": "Adds the specified targets to the specified rule, or updates the targets if they are\n already associated with the rule.
\n Targets are the resources that are invoked when a rule is triggered.
\n You can configure the following as targets for Events:
\n\n \n \n EC2 instances
\n \n \n SSM Run Command
\n \n \n SSM Automation
\n \n \n AWS Lambda functions
\n \n \n Data streams in Amazon Kinesis Data Streams
\n \n \n Data delivery streams in Amazon Kinesis Data Firehose
\n \n \n Amazon ECS tasks
\n \n \n AWS Step Functions state machines
\n \n \n AWS Batch jobs
\n \n \n AWS CodeBuild projects
\n \n \n Pipelines in AWS CodePipeline
\n \n \n Amazon Inspector assessment templates
\n \n \n Amazon SNS topics
\n \n \n Amazon SQS queues, including FIFO queues
\n \n \n The default event bus of another AWS account
\n \n \n Amazon API Gateway REST APIs
\n \n \n Redshift Clusters to invoke Data API ExecuteStatement on
\n \n \n Custom/SaaS HTTPS APIs via EventBridge API Destinations
\n \n \n Amazon SageMaker Model Building Pipelines
\n \n \n\n\n\n Creating rules with built-in targets is supported only in the AWS Management Console. The\n built-in targets are EC2 CreateSnapshot API call
, EC2 RebootInstances API\n call
, EC2 StopInstances API call
, and EC2 TerminateInstances API\n call
.
\n\n For some target types, PutTargets
provides target-specific parameters. If the\n target is a Kinesis data stream, you can optionally specify which shard the event goes to by\n using the KinesisParameters
argument. To invoke a command on multiple EC2\n instances with one rule, you can use the RunCommandParameters
field.
\n\n To be able to make API calls against the resources that you own, Amazon EventBridge\n (CloudWatch Events) needs the appropriate permissions. For AWS Lambda and Amazon SNS\n resources, EventBridge relies on resource-based policies. For EC2 instances, Kinesis data\n streams, AWS Step Functions state machines and API Gateway REST APIs, EventBridge relies on\n IAM roles that you specify in the RoleARN
argument in PutTargets
.\n For more information, see Authentication\n and Access Control in the Amazon EventBridge User Guide .
\n\n If another AWS account is in the same region and has granted you permission (using\n PutPermission
), you can send events to that account. Set that account's event\n bus as a target of the rules in your account. To send the matched events to the other account,\n specify that account's event bus as the Arn
value when you run\n PutTargets
. If your account sends events to another account, your account is\n charged for each sent event. Each event sent to another account is charged as a custom event.\n The account receiving the event is not charged. For more information, see Amazon EventBridge (CloudWatch Events)\n Pricing .
\n\n \n \n Input
, InputPath
, and InputTransformer
are not\n available with PutTarget
if the target is an event bus of a different AWS\n account.
\n \n\n If you are setting the event bus of another account as the target, and that account\n granted permission to your account through an organization instead of directly by the account\n ID, then you must specify a RoleArn
with proper permissions in the\n Target
structure. For more information, see Sending and\n Receiving Events Between AWS Accounts in the Amazon EventBridge User\n Guide .
\n\n For more information about enabling cross-account events, see PutPermission .
\n\n \n Input , InputPath , and\n InputTransformer are mutually exclusive and optional\n parameters of a target. When a rule is triggered due to a matched event:
\n\n \n \n If none of the following arguments are specified for a target, then the entire event\n is passed to the target in JSON format (unless the target is Amazon EC2 Run Command or\n Amazon ECS task, in which case nothing from the event is passed to the target).
\n \n \n If Input is specified in the form of valid JSON, then\n the matched event is overridden with this constant.
\n \n \n If InputPath is specified in the form of JSONPath\n (for example, $.detail
), then only the part of the event specified in the\n path is passed to the target (for example, only the detail part of the event is\n passed).
\n \n \n If InputTransformer is specified, then one or more\n specified JSONPaths are extracted from the event and used as values in a template that you\n specify as the input to the target.
\n \n \n\n When you specify InputPath
or InputTransformer
, you must use\n JSON dot notation, not bracket notation.
\n\n When you add targets to a rule and the associated rule triggers soon after, new or updated\n targets might not be immediately invoked. Allow a short period of time for changes to take\n effect.
\n\n This action can partially fail if too many requests are made at the same time. If that\n happens, FailedEntryCount
is non-zero in the response and each entry in\n FailedEntries
provides the ID of the failed target and the error code.
"
}
},
"com.amazonaws.cloudwatchevents#PutTargetsRequest": {
@@ -5530,6 +5530,73 @@
}
}
},
+ "com.amazonaws.cloudwatchevents#SageMakerPipelineParameter": {
+ "type": "structure",
+ "members": {
+ "Name": {
+ "target": "com.amazonaws.cloudwatchevents#SageMakerPipelineParameterName",
+ "traits": {
+ "smithy.api#documentation": "Name of parameter to start execution of a SageMaker Model Building Pipeline.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Value": {
+ "target": "com.amazonaws.cloudwatchevents#SageMakerPipelineParameterValue",
+ "traits": {
+ "smithy.api#documentation": "Value of parameter to start execution of a SageMaker Model Building Pipeline.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Name/Value pair of a parameter to start execution of a SageMaker Model Building\n Pipeline.
"
+ }
+ },
+ "com.amazonaws.cloudwatchevents#SageMakerPipelineParameterList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.cloudwatchevents#SageMakerPipelineParameter"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 200
+ }
+ }
+ },
+ "com.amazonaws.cloudwatchevents#SageMakerPipelineParameterName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 256
+ },
+ "smithy.api#pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$"
+ }
+ },
+ "com.amazonaws.cloudwatchevents#SageMakerPipelineParameterValue": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 1024
+ }
+ }
+ },
+ "com.amazonaws.cloudwatchevents#SageMakerPipelineParameters": {
+ "type": "structure",
+ "members": {
+ "PipelineParameterList": {
+ "target": "com.amazonaws.cloudwatchevents#SageMakerPipelineParameterList",
+ "traits": {
+ "smithy.api#documentation": "List of Parameter names and values for SageMaker Model Building Pipeline execution.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "These are custom parameters to use when the target is a SageMaker Model Building Pipeline\n that starts based on EventBridge events.
"
+ }
+ },
"com.amazonaws.cloudwatchevents#ScheduleExpression": {
"type": "string",
"traits": {
@@ -5888,6 +5955,12 @@
"smithy.api#documentation": "Contains the Redshift Data API parameters to use when the target is a Redshift\n cluster.
\n If you specify a Redshift Cluster as a Target, you can use this to specify parameters to\n invoke the Redshift Data API ExecuteStatement based on EventBridge events.
"
}
},
+ "SageMakerPipelineParameters": {
+ "target": "com.amazonaws.cloudwatchevents#SageMakerPipelineParameters",
+ "traits": {
+ "smithy.api#documentation": "Contains the SageMaker Model Building Pipeline parameters to start execution of a\n SageMaker Model Building Pipeline.
\n If you specify a SageMaker Model Building Pipeline as a target, you can use this to\n specify parameters to start a pipeline execution based on EventBridge events.
"
+ }
+ },
"DeadLetterConfig": {
"target": "com.amazonaws.cloudwatchevents#DeadLetterConfig",
"traits": {
diff --git a/codegen/sdk-codegen/aws-models/codeartifact.2018-09-22.json b/codegen/sdk-codegen/aws-models/codeartifact.2018-09-22.json
index 9ab18fb82f1..31c9366e7ef 100644
--- a/codegen/sdk-codegen/aws-models/codeartifact.2018-09-22.json
+++ b/codegen/sdk-codegen/aws-models/codeartifact.2018-09-22.json
@@ -192,7 +192,7 @@
"externalConnection": {
"target": "com.amazonaws.codeartifact#ExternalConnectionName",
"traits": {
- "smithy.api#documentation": "\n The name of the external connection to add to the repository. The following values are supported:\n
\n \n \n \n public:npmjs
- for the npm public repository.\n
\n \n \n \n public:pypi
- for the Python Package Index.\n
\n \n \n \n public:maven-central
- for Maven Central.\n
\n \n \n \n public:maven-googleandroid
- for the Google Android repository.\n
\n \n \n \n public:maven-gradleplugins
- for the Gradle plugins repository.\n
\n \n \n \n public:maven-commonsware
- for the CommonsWare Android repository.\n
\n \n \n \n public:nuget-org
- for the NuGet Gallery.\n
\n \n ",
+ "smithy.api#documentation": "\n The name of the external connection to add to the repository. The following values are supported:\n
\n \n \n \n public:npmjs
- for the npm public repository.\n
\n \n \n \n public:pypi
- for the Python Package Index.\n
\n \n \n \n public:maven-central
- for Maven Central.\n
\n \n \n \n public:maven-googleandroid
- for the Google Android repository.\n
\n \n \n \n public:maven-gradleplugins
- for the Gradle plugins repository.\n
\n \n \n \n public:maven-commonsware
- for the CommonsWare Android repository.\n
\n \n ",
"smithy.api#httpQuery": "external-connection",
"smithy.api#required": {}
}
@@ -345,7 +345,7 @@
"name": "codeartifact"
},
"aws.protocols#restJson1": {},
- "smithy.api#documentation": " AWS CodeArtifact is a fully managed artifact repository compatible with language-native\n package managers and build tools such as npm, Apache Maven, NuGet, and pip. You can use CodeArtifact to\n share packages with development teams and pull packages. Packages can be pulled from both\n public and CodeArtifact repositories. You can also create an upstream relationship between a CodeArtifact\n repository and another repository, which effectively merges their contents from the point of\n view of a package manager client.
\n \n \n AWS CodeArtifact Components \n
\n Use the information in this guide to help you work with the following CodeArtifact components:
\n \n \n \n \n Repository : A CodeArtifact repository contains a set of package\n versions , each of which maps to a set of assets, or files. Repositories are\n polyglot, so a single repository can contain packages of any supported type. Each\n repository exposes endpoints for fetching and publishing packages using tools like the\n \n npm
\n CLI, the \n NuGet
\n CLI, \n the Maven CLI (\n mvn
\n ), and \n pip
\n .
\n \n \n \n Domain : Repositories are aggregated into a higher-level entity known as a\n domain . All package assets and metadata are stored in the domain,\n but are consumed through repositories. A given package asset, such as a Maven JAR file, is\n stored once per domain, no matter how many repositories it's present in. All of the assets\n and metadata in a domain are encrypted with the same customer master key (CMK) stored in\n AWS Key Management Service (AWS KMS).
\n Each repository is a member of a single domain and can't be moved to a\n different domain.
\n The domain allows organizational policy to be applied across multiple\n repositories, such as which accounts can access repositories in the domain, and\n which public repositories can be used as sources of packages.
\n Although an organization can have multiple domains, we recommend a single production\n domain that contains all published artifacts so that teams can find and share packages\n across their organization.
\n \n \n \n Package : A package is a bundle of software and the metadata required to\n resolve dependencies and install the software. CodeArtifact supports npm , PyPI , Maven , and NuGet package formats.
\n In CodeArtifact, a package consists of:
\n \n \n A name (for example, webpack
is the name of a\n popular npm package)
\n \n \n An optional namespace (for example, @types
in @types/node
)
\n \n \n A set of versions (for example, 1.0.0
, 1.0.1
,\n 1.0.2
, etc.)
\n \n \n Package-level metadata (for example, npm tags)
\n \n \n \n \n \n Package version : A version of a package, such as @types/node 12.6.9
. The version number\n format and semantics vary for different package formats. For example, npm package versions\n must conform to the Semantic Versioning\n specification . In CodeArtifact, a package version consists of the version identifier,\n metadata at the package version level, and a set of assets.
\n \n \n \n Upstream repository : One repository is upstream of another when the package versions in\n it can be accessed from the repository endpoint of the downstream repository, effectively\n merging the contents of the two repositories from the point of view of a client. CodeArtifact\n allows creating an upstream relationship between two repositories.
\n \n \n \n Asset : An individual file stored in CodeArtifact associated with a package version, such as an npm\n .tgz
file or Maven POM and JAR files.
\n \n \n \n CodeArtifact supports these operations:
\n \n \n \n AssociateExternalConnection
: Adds an existing external \n connection to a repository.\n
\n \n \n \n CopyPackageVersions
: Copies package versions from one \n repository to another repository in the same domain.
\n \n \n \n CreateDomain
: Creates a domain
\n \n \n \n CreateRepository
: Creates a CodeArtifact repository in a domain.
\n \n \n \n DeleteDomain
: Deletes a domain. You cannot delete a domain that contains\n repositories.
\n \n \n \n DeleteDomainPermissionsPolicy
: Deletes the resource policy that is set on a domain.
\n \n \n \n DeletePackageVersions
: Deletes versions of a package. After a package has\n been deleted, it can be republished, but its assets and metadata cannot be restored\n because they have been permanently removed from storage.
\n \n \n \n DeleteRepository
: Deletes a repository. \n
\n \n \n \n DeleteRepositoryPermissionsPolicy
: Deletes the resource policy that is set on a repository.
\n \n \n \n DescribeDomain
: Returns a DomainDescription
object that\n contains information about the requested domain.
\n \n \n \n DescribePackageVersion
: Returns a \n PackageVersionDescription \n
\n object that contains details about a package version.
\n \n \n \n DescribeRepository
: Returns a RepositoryDescription
object\n that contains detailed information about the requested repository.
\n \n \n \n DisposePackageVersions
: Disposes versions of a package. A package version\n with the status Disposed
cannot be restored because they have been\n permanently removed from storage.
\n \n \n \n DisassociateExternalConnection
: Removes an existing external connection from a repository. \n
\n \n \n \n GetAuthorizationToken
: Generates a temporary authorization token for accessing repositories in the domain. The token expires the authorization period has passed. \n The default authorization period is 12 hours and can be customized to any length with a maximum of 12 hours.
\n \n \n \n GetDomainPermissionsPolicy
: Returns the policy of a resource\n that is attached to the specified domain.
\n \n \n \n GetPackageVersionAsset
: Returns the contents of an asset that is in a package version.
\n \n \n \n GetPackageVersionReadme
: Gets the readme file or descriptive text for a package version.
\n \n \n \n GetRepositoryEndpoint
: Returns the endpoint of a repository for a specific package format. A repository has one endpoint for each \n package format:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n \n \n nuget
\n
\n \n \n \n \n \n GetRepositoryPermissionsPolicy
: Returns the resource policy that is set on a repository. \n
\n \n \n \n ListDomains
: Returns a list of DomainSummary
objects. Each\n returned DomainSummary
object contains information about a domain.
\n \n \n \n ListPackages
: Lists the packages in a repository.
\n \n \n \n ListPackageVersionAssets
: Lists the assets for a given package version.
\n \n \n \n ListPackageVersionDependencies
: Returns a list of the direct dependencies for a\n package version.
\n \n \n \n ListPackageVersions
: Returns a list of package versions for a specified\n package in a repository.
\n \n \n \n ListRepositories
: Returns a list of repositories owned by the AWS account that called this method.
\n \n \n \n ListRepositoriesInDomain
: Returns a list of the repositories in a domain.
\n \n \n \n ListTagsForResource
: Returns a list of the tags associated with a resource.
\n \n \n \n PutDomainPermissionsPolicy
: Attaches a resource policy to a domain.
\n \n \n \n PutRepositoryPermissionsPolicy
: Sets the resource policy on a repository\n that specifies permissions to access it.
\n \n \n \n TagResource
: Adds or updates tags for a resource.
\n \n \n \n UntagResource
: Removes a tag from a resource.
\n \n \n \n UpdatePackageVersionsStatus
: Updates the status of one or more versions of a package.
\n \n \n \n UpdateRepository
: Updates the properties of a repository.
\n \n ",
+ "smithy.api#documentation": " AWS CodeArtifact is a fully managed artifact repository compatible with language-native\n package managers and build tools such as npm, Apache Maven, and pip. You can use CodeArtifact to\n share packages with development teams and pull packages. Packages can be pulled from both\n public and CodeArtifact repositories. You can also create an upstream relationship between a CodeArtifact\n repository and another repository, which effectively merges their contents from the point of\n view of a package manager client.
\n \n \n AWS CodeArtifact Components \n
\n Use the information in this guide to help you work with the following CodeArtifact components:
\n \n \n \n \n Repository : A CodeArtifact repository contains a set of package\n versions , each of which maps to a set of assets, or files. Repositories are\n polyglot, so a single repository can contain packages of any supported type. Each\n repository exposes endpoints for fetching and publishing packages using tools like the\n \n npm
\n CLI, the Maven CLI (\n mvn
\n ), and \n pip
\n .
\n \n \n \n Domain : Repositories are aggregated into a higher-level entity known as a\n domain . All package assets and metadata are stored in the domain,\n but are consumed through repositories. A given package asset, such as a Maven JAR file, is\n stored once per domain, no matter how many repositories it's present in. All of the assets\n and metadata in a domain are encrypted with the same customer master key (CMK) stored in\n AWS Key Management Service (AWS KMS).
\n Each repository is a member of a single domain and can't be moved to a\n different domain.
\n The domain allows organizational policy to be applied across multiple\n repositories, such as which accounts can access repositories in the domain, and\n which public repositories can be used as sources of packages.
\n Although an organization can have multiple domains, we recommend a single production\n domain that contains all published artifacts so that teams can find and share packages\n across their organization.
\n \n \n \n Package : A package is a bundle of software and the metadata required to\n resolve dependencies and install the software. CodeArtifact supports npm , PyPI , and Maven package formats.
\n In CodeArtifact, a package consists of:
\n \n \n A name (for example, webpack
is the name of a\n popular npm package)
\n \n \n An optional namespace (for example, @types
in @types/node
)
\n \n \n A set of versions (for example, 1.0.0
, 1.0.1
,\n 1.0.2
, etc.)
\n \n \n Package-level metadata (for example, npm tags)
\n \n \n \n \n \n Package version : A version of a package, such as @types/node 12.6.9
. The version number\n format and semantics vary for different package formats. For example, npm package versions\n must conform to the Semantic Versioning\n specification . In CodeArtifact, a package version consists of the version identifier,\n metadata at the package version level, and a set of assets.
\n \n \n \n Upstream repository : One repository is upstream of another when the package versions in\n it can be accessed from the repository endpoint of the downstream repository, effectively\n merging the contents of the two repositories from the point of view of a client. CodeArtifact\n allows creating an upstream relationship between two repositories.
\n \n \n \n Asset : An individual file stored in CodeArtifact associated with a package version, such as an npm\n .tgz
file or Maven POM and JAR files.
\n \n \n \n CodeArtifact supports these operations:
\n \n \n \n AssociateExternalConnection
: Adds an existing external \n connection to a repository.\n
\n \n \n \n CopyPackageVersions
: Copies package versions from one \n repository to another repository in the same domain.
\n \n \n \n CreateDomain
: Creates a domain
\n \n \n \n CreateRepository
: Creates a CodeArtifact repository in a domain.
\n \n \n \n DeleteDomain
: Deletes a domain. You cannot delete a domain that contains\n repositories.
\n \n \n \n DeleteDomainPermissionsPolicy
: Deletes the resource policy that is set on a domain.
\n \n \n \n DeletePackageVersions
: Deletes versions of a package. After a package has\n been deleted, it can be republished, but its assets and metadata cannot be restored\n because they have been permanently removed from storage.
\n \n \n \n DeleteRepository
: Deletes a repository. \n
\n \n \n \n DeleteRepositoryPermissionsPolicy
: Deletes the resource policy that is set on a repository.
\n \n \n \n DescribeDomain
: Returns a DomainDescription
object that\n contains information about the requested domain.
\n \n \n \n DescribePackageVersion
: Returns a PackageVersionDescription \n object that contains details about a package version.
\n \n \n \n DescribeRepository
: Returns a RepositoryDescription
object\n that contains detailed information about the requested repository.
\n \n \n \n DisposePackageVersions
: Disposes versions of a package. A package version\n with the status Disposed
cannot be restored because they have been\n permanently removed from storage.
\n \n \n \n DisassociateExternalConnection
: Removes an existing external connection from a repository. \n
\n \n \n \n GetAuthorizationToken
: Generates a temporary authorization token for accessing repositories in the domain. The token expires the authorization period has passed. \n The default authorization period is 12 hours and can be customized to any length with a maximum of 12 hours.
\n \n \n \n GetDomainPermissionsPolicy
: Returns the policy of a resource\n that is attached to the specified domain.
\n \n \n \n GetPackageVersionAsset
: Returns the contents of an asset that is in a package version.
\n \n \n \n GetPackageVersionReadme
: Gets the readme file or descriptive text for a package version.
\n \n \n \n GetRepositoryEndpoint
: Returns the endpoint of a repository for a specific package format. A repository has one endpoint for each \n package format:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n \n \n \n \n GetRepositoryPermissionsPolicy
: Returns the resource policy that is set on a repository. \n
\n \n \n \n ListDomains
: Returns a list of DomainSummary
objects. Each\n returned DomainSummary
object contains information about a domain.
\n \n \n \n ListPackages
: Lists the packages in a repository.
\n \n \n \n ListPackageVersionAssets
: Lists the assets for a given package version.
\n \n \n \n ListPackageVersionDependencies
: Returns a list of the direct dependencies for a\n package version.
\n \n \n \n ListPackageVersions
: Returns a list of package versions for a specified\n package in a repository.
\n \n \n \n ListRepositories
: Returns a list of repositories owned by the AWS account that called this method.
\n \n \n \n ListRepositoriesInDomain
: Returns a list of the repositories in a domain.
\n \n \n \n PutDomainPermissionsPolicy
: Attaches a resource policy to a domain.
\n \n \n \n PutRepositoryPermissionsPolicy
: Sets the resource policy on a repository\n that specifies permissions to access it.
\n \n \n \n UpdatePackageVersionsStatus
: Updates the status of one or more versions of a package.
\n \n \n \n UpdateRepository
: Updates the properties of a repository.
\n \n ",
"smithy.api#title": "CodeArtifact"
}
},
@@ -454,7 +454,7 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n The format of the package that is copied. The valid package types are:\n
\n \n \n \n npm
: A Node Package Manager (npm) package.\n
\n \n \n \n pypi
: A Python Package Index (PyPI) package.\n
\n \n \n \n maven
: A Maven package that contains compiled code in a distributable format, such as a JAR file.\n
\n \n \n \n nuget
: A NuGet package.\n
\n \n ",
+ "smithy.api#documentation": "\n The format of the package that is copied. The valid package types are:\n
\n \n \n \n npm
: A Node Package Manager (npm) package.\n
\n \n \n \n pypi
: A Python Package Index (PyPI) package.\n
\n \n \n \n maven
: A Maven package that contains compiled code in a distributable format, such as a JAR file.\n
\n \n ",
"smithy.api#httpQuery": "format",
"smithy.api#required": {}
}
@@ -462,7 +462,7 @@
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n ",
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n ",
"smithy.api#httpQuery": "namespace"
}
},
@@ -639,7 +639,7 @@
"domain": {
"target": "com.amazonaws.codeartifact#DomainName",
"traits": {
- "smithy.api#documentation": "\n The domain that contains the created repository.\n
",
+ "smithy.api#documentation": "\n The name of the domain that contains the created repository.\n
",
"smithy.api#httpQuery": "domain",
"smithy.api#required": {}
}
@@ -859,7 +859,7 @@
}
],
"traits": {
- "smithy.api#documentation": " Deletes one or more versions of a package. A deleted package version cannot be restored\n in your repository. If you want to remove a package version from your repository and be able\n to restore it later, set its status to Archived
. Archived packages cannot be\n downloaded from a repository and don't show up with list package APIs (for example,\n \n ListackageVersions \n
), but you can restore them using \n UpdatePackageVersionsStatus \n
.
",
+ "smithy.api#documentation": " Deletes one or more versions of a package. A deleted package version cannot be restored\n in your repository. If you want to remove a package version from your repository and be able\n to restore it later, set its status to Archived
. Archived packages cannot be\n downloaded from a repository and don't show up with list package APIs (for example,\n ListackageVersions ), but you can restore them using UpdatePackageVersionsStatus .
",
"smithy.api#http": {
"method": "POST",
"uri": "/v1/package/versions/delete",
@@ -896,7 +896,7 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n The format of the package versions to delete. The valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n \n \n nuget
\n
\n \n ",
+ "smithy.api#documentation": "\n The format of the package versions to delete. The valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n ",
"smithy.api#httpQuery": "format",
"smithy.api#required": {}
}
@@ -904,7 +904,7 @@
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n ",
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n ",
"smithy.api#httpQuery": "namespace"
}
},
@@ -1235,7 +1235,7 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n A format that specifies the type of the requested package version. The valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n \n \n nuget
\n
\n \n ",
+ "smithy.api#documentation": "\n A format that specifies the type of the requested package version. The valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n ",
"smithy.api#httpQuery": "format",
"smithy.api#required": {}
}
@@ -1243,7 +1243,7 @@
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n ",
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n ",
"smithy.api#httpQuery": "namespace"
}
},
@@ -1271,7 +1271,7 @@
"packageVersion": {
"target": "com.amazonaws.codeartifact#PackageVersionDescription",
"traits": {
- "smithy.api#documentation": "\n A \n PackageVersionDescription \n
\n object that contains information about the requested package version.\n
",
+ "smithy.api#documentation": "\n A PackageVersionDescription \n object that contains information about the requested package version.\n
",
"smithy.api#required": {}
}
}
@@ -1513,7 +1513,7 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n A format that specifies the type of package versions you want to dispose. The valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n \n \n nuget
\n
\n \n ",
+ "smithy.api#documentation": "\n A format that specifies the type of package versions you want to dispose. The valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n ",
"smithy.api#httpQuery": "format",
"smithy.api#required": {}
}
@@ -1521,7 +1521,7 @@
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n ",
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n ",
"smithy.api#httpQuery": "namespace"
}
},
@@ -1914,7 +1914,7 @@
"domain": {
"target": "com.amazonaws.codeartifact#DomainName",
"traits": {
- "smithy.api#documentation": "\n The domain that contains the repository that contains the package version with the requested asset.\n
",
+ "smithy.api#documentation": "\n The name of the domain that contains the repository that contains the package version with the requested asset.\n
",
"smithy.api#httpQuery": "domain",
"smithy.api#required": {}
}
@@ -1937,7 +1937,7 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n A format that specifies the type of the package version with the requested asset file. The valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n \n \n nuget
\n
\n \n ",
+ "smithy.api#documentation": "\n A format that specifies the type of the package version with the requested asset file. The valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n ",
"smithy.api#httpQuery": "format",
"smithy.api#required": {}
}
@@ -1945,7 +1945,7 @@
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n ",
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n ",
"smithy.api#httpQuery": "namespace"
}
},
@@ -2078,7 +2078,7 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n A format that specifies the type of the package version with the requested readme file. The valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n \n \n nuget
\n
\n \n ",
+ "smithy.api#documentation": "\n A format that specifies the type of the package version with the requested readme file. The valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n ",
"smithy.api#httpQuery": "format",
"smithy.api#required": {}
}
@@ -2086,7 +2086,7 @@
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n ",
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n ",
"smithy.api#httpQuery": "namespace"
}
},
@@ -2114,13 +2114,13 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n The format of the package with the requested readme file. Valid format types are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n \n \n nuget
\n
\n \n "
+ "smithy.api#documentation": "\n The format of the package with the requested readme file. Valid format types are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n "
}
},
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n "
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n "
}
},
"package": {
@@ -2175,7 +2175,7 @@
}
],
"traits": {
- "smithy.api#documentation": "\n Returns the endpoint of a repository for a specific package format. A repository has one endpoint for each \n package format:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n \n \n nuget
\n
\n \n ",
+ "smithy.api#documentation": "\n Returns the endpoint of a repository for a specific package format. A repository has one endpoint for each \n package format:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n ",
"smithy.api#http": {
"method": "GET",
"uri": "/v1/repository/endpoint",
@@ -2212,7 +2212,7 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n Returns which endpoint of a repository to return. A repository has one endpoint for each \n package format:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n \n \n nuget
\n
\n \n ",
+ "smithy.api#documentation": "\n Returns which endpoint of a repository to return. A repository has one endpoint for each \n package format:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n ",
"smithy.api#httpQuery": "format",
"smithy.api#required": {}
}
@@ -2404,7 +2404,7 @@
}
],
"traits": {
- "smithy.api#documentation": " Returns a list of \n DomainSummary \n
objects for all domains owned by the AWS account that makes\n this call. Each returned DomainSummary
object contains information about a\n domain.
",
+ "smithy.api#documentation": " Returns a list of DomainSummary objects for all domains owned by the AWS account that makes\n this call. Each returned DomainSummary
object contains information about a\n domain.
",
"smithy.api#http": {
"method": "POST",
"uri": "/v1/domains",
@@ -2450,7 +2450,7 @@
"domains": {
"target": "com.amazonaws.codeartifact#DomainSummaryList",
"traits": {
- "smithy.api#documentation": "\n The returned list of \n DomainSummary \n
objects.\n
"
+ "smithy.api#documentation": "\n The returned list of DomainSummary objects.\n
"
}
},
"nextToken": {
@@ -2539,7 +2539,7 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n The format of the package that contains the returned package version assets. The valid package types are:\n
\n \n \n \n npm
: A Node Package Manager (npm) package.\n
\n \n \n \n pypi
: A Python Package Index (PyPI) package.\n
\n \n \n \n maven
: A Maven package that contains compiled code in a distributable format, such as a JAR file.\n
\n \n \n \n nuget
: A NuGet package.\n
\n \n ",
+ "smithy.api#documentation": "\n The format of the package that contains the returned package version assets. The valid package types are:\n
\n \n \n \n npm
: A Node Package Manager (npm) package.\n
\n \n \n \n pypi
: A Python Package Index (PyPI) package.\n
\n \n \n \n maven
: A Maven package that contains compiled code in a distributable format, such as a JAR file.\n
\n \n ",
"smithy.api#httpQuery": "format",
"smithy.api#required": {}
}
@@ -2547,7 +2547,7 @@
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n ",
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n ",
"smithy.api#httpQuery": "namespace"
}
},
@@ -2595,7 +2595,7 @@
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n "
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n "
}
},
"package": {
@@ -2670,7 +2670,7 @@
"domain": {
"target": "com.amazonaws.codeartifact#DomainName",
"traits": {
- "smithy.api#documentation": "\n The domain that contains the repository that contains the requested package version dependencies.\n
",
+ "smithy.api#documentation": "\n The name of the domain that contains the repository that contains the requested package version dependencies.\n
",
"smithy.api#httpQuery": "domain",
"smithy.api#required": {}
}
@@ -2693,7 +2693,7 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n The format of the package with the requested dependencies. The valid package types are:\n
\n \n \n \n npm
: A Node Package Manager (npm) package.\n
\n \n \n \n pypi
: A Python Package Index (PyPI) package.\n
\n \n \n \n maven
: A Maven package that contains compiled code in a distributable format, such as a JAR file.\n
\n \n \n \n nuget
: A NuGet package.\n
\n \n ",
+ "smithy.api#documentation": "\n The format of the package with the requested dependencies. The valid package types are:\n
\n \n \n \n npm
: A Node Package Manager (npm) package.\n
\n \n \n \n pypi
: A Python Package Index (PyPI) package.\n
\n \n \n \n maven
: A Maven package that contains compiled code in a distributable format, such as a JAR file.\n
\n \n ",
"smithy.api#httpQuery": "format",
"smithy.api#required": {}
}
@@ -2701,7 +2701,7 @@
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n ",
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n ",
"smithy.api#httpQuery": "namespace"
}
},
@@ -2736,13 +2736,13 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n A format that specifies the type of the package that contains the returned dependencies. The valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n \n \n nuget
\n
\n \n "
+ "smithy.api#documentation": "\n A format that specifies the type of the package that contains the returned dependencies. The valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n "
}
},
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n "
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n "
}
},
"package": {
@@ -2855,7 +2855,7 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n The format of the returned packages. The valid package types are:\n
\n \n \n \n npm
: A Node Package Manager (npm) package.\n
\n \n \n \n pypi
: A Python Package Index (PyPI) package.\n
\n \n \n \n maven
: A Maven package that contains compiled code in a distributable format, such as a JAR file.\n
\n \n \n \n nuget
: A NuGet package.\n
\n \n ",
+ "smithy.api#documentation": "\n The format of the returned packages. The valid package types are:\n
\n \n \n \n npm
: A Node Package Manager (npm) package.\n
\n \n \n \n pypi
: A Python Package Index (PyPI) package.\n
\n \n \n \n maven
: A Maven package that contains compiled code in a distributable format, such as a JAR file.\n
\n \n ",
"smithy.api#httpQuery": "format",
"smithy.api#required": {}
}
@@ -2863,7 +2863,7 @@
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n ",
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n ",
"smithy.api#httpQuery": "namespace"
}
},
@@ -2917,13 +2917,13 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n A format of the package. Valid package format values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n \n \n nuget
\n
\n \n "
+ "smithy.api#documentation": "\n A format of the package. Valid package format values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n "
}
},
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n "
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n "
}
},
"package": {
@@ -3001,7 +3001,7 @@
"domain": {
"target": "com.amazonaws.codeartifact#DomainName",
"traits": {
- "smithy.api#documentation": "\n The domain that contains the repository that contains the requested list of packages.\n
",
+ "smithy.api#documentation": "\n The name of the domain that contains the repository that contains the requested list of packages.\n
",
"smithy.api#httpQuery": "domain",
"smithy.api#required": {}
}
@@ -3024,14 +3024,14 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n The format of the packages. The valid package types are:\n
\n \n \n \n npm
: A Node Package Manager (npm) package.\n
\n \n \n \n pypi
: A Python Package Index (PyPI) package.\n
\n \n \n \n maven
: A Maven package that contains compiled code in a distributable format, such as a JAR file.\n
\n \n \n \n nuget
: A NuGet package.\n
\n \n ",
+ "smithy.api#documentation": "\n The format of the packages. The valid package types are:\n
\n \n \n \n npm
: A Node Package Manager (npm) package.\n
\n \n \n \n pypi
: A Python Package Index (PyPI) package.\n
\n \n \n \n maven
: A Maven package that contains compiled code in a distributable format, such as a JAR file.\n
\n \n ",
"smithy.api#httpQuery": "format"
}
},
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n ",
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n ",
"smithy.api#httpQuery": "namespace"
}
},
@@ -3348,7 +3348,7 @@
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n "
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n "
}
},
"package": {
@@ -3429,13 +3429,13 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n The format of the package. Valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n \n \n nuget
\n
\n \n "
+ "smithy.api#documentation": "\n The format of the package. Valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n "
}
},
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n "
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n "
}
},
"package": {
@@ -3471,13 +3471,13 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n The format of the package version. The valid package formats are:\n
\n \n \n \n npm
: A Node Package Manager (npm) package.\n
\n \n \n \n pypi
: A Python Package Index (PyPI) package.\n
\n \n \n \n maven
: A Maven package that contains compiled code in a distributable format, such as a JAR file.\n
\n \n \n \n nuget
: A NuGet package.\n
\n \n "
+ "smithy.api#documentation": "\n The format of the package version. The valid package formats are:\n
\n \n \n \n npm
: A Node Package Manager (npm) package.\n
\n \n \n \n pypi
: A Python Package Index (PyPI) package.\n
\n \n \n \n maven
: A Maven package that contains compiled code in a distributable format, such as a JAR file.\n
\n \n "
}
},
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n "
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n "
}
},
"packageName": {
@@ -3983,7 +3983,7 @@
"packageFormat": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n The package format associated with a repository's external connection. The valid package formats are:\n
\n \n \n \n npm
: A Node Package Manager (npm) package.\n
\n \n \n \n pypi
: A Python Package Index (PyPI) package.\n
\n \n \n \n maven
: A Maven package that contains compiled code in a distributable format, such as a JAR file.\n
\n \n \n \n nuget
: A NuGet package.\n
\n \n "
+ "smithy.api#documentation": "\n The package format associated with a repository's external connection. The valid package formats are:\n
\n \n \n \n npm
: A Node Package Manager (npm) package.\n
\n \n \n \n pypi
: A Python Package Index (PyPI) package.\n
\n \n \n \n maven
: A Maven package that contains compiled code in a distributable format, such as a JAR file.\n
\n \n "
}
},
"status": {
@@ -4465,7 +4465,7 @@
"domain": {
"target": "com.amazonaws.codeartifact#DomainName",
"traits": {
- "smithy.api#documentation": "\n The domain that contains the repository that contains the package versions with a status to be updated.\n
",
+ "smithy.api#documentation": "\n The name of the domain that contains the repository that contains the package versions with a status to be updated.\n
",
"smithy.api#httpQuery": "domain",
"smithy.api#required": {}
}
@@ -4488,7 +4488,7 @@
"format": {
"target": "com.amazonaws.codeartifact#PackageFormat",
"traits": {
- "smithy.api#documentation": "\n A format that specifies the type of the package with the statuses to update. The valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n \n \n nuget
\n
\n \n ",
+ "smithy.api#documentation": "\n A format that specifies the type of the package with the statuses to update. The valid values are:\n
\n \n \n \n npm
\n
\n \n \n \n pypi
\n
\n \n \n \n maven
\n
\n \n ",
"smithy.api#httpQuery": "format",
"smithy.api#required": {}
}
@@ -4496,7 +4496,7 @@
"namespace": {
"target": "com.amazonaws.codeartifact#PackageNamespace",
"traits": {
- "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n \n \n A NuGet package does not contain a corresponding component, so \n NuGet packages do not have a namespace.\n
\n \n ",
+ "smithy.api#documentation": "\n The namespace of the package. The package component that specifies its \n namespace depends on its type. For example:\n
\n \n \n \n The namespace of a Maven package is its groupId
.\n
\n \n \n \n The namespace of an npm package is its scope
.\n
\n \n \n \n A Python package does not contain a corresponding component, so \n Python packages do not have a namespace.\n
\n \n ",
"smithy.api#httpQuery": "namespace"
}
},
diff --git a/codegen/sdk-codegen/aws-models/cognitosync.2014-06-30.json b/codegen/sdk-codegen/aws-models/cognitosync.2014-06-30.json
index 6c5e2c03225..0570ffe3eca 100644
--- a/codegen/sdk-codegen/aws-models/cognitosync.2014-06-30.json
+++ b/codegen/sdk-codegen/aws-models/cognitosync.2014-06-30.json
@@ -97,7 +97,7 @@
"name": "cognito-sync"
},
"aws.protocols#restJson1": {},
- "smithy.api#documentation": "Amazon Cognito Sync \n Amazon Cognito Sync provides an AWS service and client library that enable cross-device syncing of application-related user data. High-level client libraries are available for both iOS and Android. You can use these libraries to persist data locally so that it's available even if the device is offline. Developer credentials don't need to be stored on the mobile device to access the service. You can use Amazon Cognito to obtain a normalized user ID and credentials. User data is persisted in a dataset that can store up to 1 MB of key-value pairs, and you can have up to 20 datasets per user identity.
\n With Amazon Cognito Sync, the data stored for each identity is accessible only to\n credentials assigned to that identity. In order to use the Cognito Sync service, you need\n to make API calls using credentials retrieved with Amazon Cognito Identity service .
\n If you want to use Cognito Sync in an Android or iOS application, you will probably want to\n make API calls via the AWS Mobile SDK. To learn more, see the Developer Guide for Android and the Developer Guide for iOS .
",
+ "smithy.api#documentation": "Amazon Cognito Sync \n Amazon Cognito Sync provides an AWS service and client library that enable cross-device syncing of\n application-related user data. High-level client libraries are available for both iOS and\n Android. You can use these libraries to persist data locally so that it's available even if\n the device is offline. Developer credentials don't need to be stored on the mobile device\n to access the service. You can use Amazon Cognito to obtain a normalized user ID and\n credentials. User data is persisted in a dataset that can store up to 1 MB of key-value\n pairs, and you can have up to 20 datasets per user identity.
\n With Amazon Cognito Sync, the data stored for each identity is accessible only to\n credentials assigned to that identity. In order to use the Cognito Sync service, you need\n to make API calls using credentials retrieved with Amazon Cognito Identity service .
\n If you want to use Cognito Sync in an Android or iOS application, you will probably want to\n make API calls via the AWS Mobile SDK. To learn more, see the Developer Guide for Android and the Developer Guide for iOS .
",
"smithy.api#title": "Amazon Cognito Sync",
"smithy.api#xmlNamespace": {
"uri": "http://cognito-sync.amazonaws.com/doc/2014-06-30/"
@@ -110,13 +110,13 @@
"message": {
"target": "com.amazonaws.cognitosync#ExceptionMessage",
"traits": {
- "smithy.api#documentation": "The message associated with the AlreadyStreamedException exception.
",
+ "smithy.api#documentation": "The message associated with the AlreadyStreamedException exception.",
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "An exception thrown when a bulk publish operation is requested less than 24 hours after a previous bulk publish operation completed successfully.
",
+ "smithy.api#documentation": "An exception thrown when a bulk publish operation is requested less than 24 hours after a previous bulk publish operation completed successfully.",
"smithy.api#error": "client",
"smithy.api#httpError": 400
}
@@ -175,7 +175,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Initiates a bulk publish of all existing datasets for an Identity Pool to the configured stream. Customers are limited to one successful bulk publish per 24 hours. Bulk publish is an asynchronous request, customers can see the status of the request via the GetBulkPublishDetails operation.
\n This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.
",
+ "smithy.api#documentation": "Initiates a bulk publish of all existing datasets for an Identity Pool to the configured stream. Customers are limited to one successful bulk publish per 24 hours. Bulk publish is an asynchronous request, customers can see the status of the request via the GetBulkPublishDetails operation.
This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.
",
"smithy.api#http": {
"method": "POST",
"uri": "/identitypools/{IdentityPoolId}/bulkpublish",
@@ -189,14 +189,14 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region.",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "The input for the BulkPublish operation.
"
+ "smithy.api#documentation": "The input for the BulkPublish operation."
}
},
"com.amazonaws.cognitosync#BulkPublishResponse": {
@@ -205,12 +205,12 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.
"
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region."
}
}
},
"traits": {
- "smithy.api#documentation": "The output for the BulkPublish operation.
"
+ "smithy.api#documentation": "The output for the BulkPublish operation."
}
},
"com.amazonaws.cognitosync#BulkPublishStatus": {
@@ -248,30 +248,24 @@
"StreamName": {
"target": "com.amazonaws.cognitosync#StreamName",
"traits": {
- "smithy.api#documentation": "The name of the Cognito stream to receive updates. This stream must be in the developers account and in the same region as the identity pool.
"
+ "smithy.api#documentation": "The name of the Cognito stream to receive updates. This stream must be in the developers account and in the same region as the identity pool."
}
},
"RoleArn": {
"target": "com.amazonaws.cognitosync#AssumeRoleArn",
"traits": {
- "smithy.api#documentation": "The ARN of the role Amazon Cognito can assume in order to publish to the stream. This role must grant access to Amazon Cognito (cognito-sync) to invoke PutRecord on your Cognito stream.
"
+ "smithy.api#documentation": "The ARN of the role Amazon Cognito can assume in order to publish to the stream. This role must grant access to Amazon Cognito (cognito-sync) to invoke PutRecord on your Cognito stream."
}
},
"StreamingStatus": {
"target": "com.amazonaws.cognitosync#StreamingStatus",
"traits": {
- "smithy.api#documentation": "Status of the Cognito streams. Valid values are:
\n "
- }
- },
- "DisabledReason": {
- "target": "com.amazonaws.cognitosync#String",
- "traits": {
- "smithy.api#documentation": "A string containing the reason why streaming of updates to the identity pool was disabled.
"
+ "smithy.api#documentation": "Status of the Cognito streams. Valid values are:\n ENABLED - Streaming of updates to identity pool is enabled.
\n DISABLED - Streaming of updates to identity pool is disabled. Bulk publish will also fail if StreamingStatus is DISABLED.
"
}
}
},
"traits": {
- "smithy.api#documentation": "Configuration options for configure Cognito streams.
"
+ "smithy.api#documentation": "Configuration options for configure Cognito streams."
}
},
"com.amazonaws.cognitosync#ConcurrentModificationException": {
@@ -280,7 +274,7 @@
"message": {
"target": "com.amazonaws.cognitosync#String",
"traits": {
- "smithy.api#documentation": "The message returned by a ConcurrentModificationException.
",
+ "smithy.api#documentation": "The message returned by a ConcurrentModicationException.
",
"smithy.api#required": {}
}
}
@@ -297,48 +291,48 @@
"IdentityId": {
"target": "com.amazonaws.cognitosync#IdentityId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE)\n created by Amazon Cognito. GUID generation is unique within a region.
"
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region."
}
},
"DatasetName": {
"target": "com.amazonaws.cognitosync#DatasetName",
"traits": {
- "smithy.api#documentation": "A string of up to 128 characters. Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (dash), and '.' (dot).
"
+ "smithy.api#documentation": "A string of up to 128 characters. Allowed characters\n are a-z, A-Z, 0-9, '_' (underscore), '-' (dash), and '.' (dot)."
}
},
"CreationDate": {
"target": "com.amazonaws.cognitosync#Date",
"traits": {
- "smithy.api#documentation": "Date on which the dataset was created.
"
+ "smithy.api#documentation": "Date on which the dataset was\n created."
}
},
"LastModifiedDate": {
"target": "com.amazonaws.cognitosync#Date",
"traits": {
- "smithy.api#documentation": "Date when the dataset was last modified.
"
+ "smithy.api#documentation": "Date when the dataset was last\n modified."
}
},
"LastModifiedBy": {
"target": "com.amazonaws.cognitosync#String",
"traits": {
- "smithy.api#documentation": "The device that made the last change to this dataset.
"
+ "smithy.api#documentation": "The device that made the last change to this\n dataset."
}
},
"DataStorage": {
"target": "com.amazonaws.cognitosync#Long",
"traits": {
- "smithy.api#documentation": "Total size in bytes of the records in this dataset.
"
+ "smithy.api#documentation": "Total size in bytes of the records in this\n dataset."
}
},
"NumRecords": {
"target": "com.amazonaws.cognitosync#Long",
"traits": {
- "smithy.api#documentation": "Number of records in this dataset.
"
+ "smithy.api#documentation": "Number of records in this dataset."
}
}
},
"traits": {
- "smithy.api#documentation": "A collection of data for an identity pool. An identity pool can have multiple\n datasets. A dataset is per identity and can be general or associated with a particular entity\n in an application (like a saved game). Datasets are automatically created if they don't\n exist. Data is synced by dataset, and a dataset can hold up to 1MB of key-value pairs.
"
+ "smithy.api#documentation": "A collection of data for an identity pool. An identity pool can\n have multiple datasets. A dataset is per identity and can be general or associated with a\n particular entity in an application (like a saved game). Datasets are automatically created if\n they don't exist. Data is synced by dataset, and a dataset can hold up to 1MB of key-value\n pairs."
}
},
"com.amazonaws.cognitosync#DatasetList": {
@@ -389,7 +383,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the specific dataset. The dataset will be deleted permanently, and the action can't be undone. Datasets that this dataset was merged with will no longer report the merge. Any subsequent operation on this dataset will result in a ResourceNotFoundException.
\n This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials.
",
+ "smithy.api#documentation": "Deletes the specific dataset. The dataset will be deleted permanently, and the action can't\n be undone. Datasets that this dataset was merged with will no longer report the merge. Any\n subsequent operation on this dataset will result in a\n ResourceNotFoundException.
\n This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials.
",
"smithy.api#http": {
"method": "DELETE",
"uri": "/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}",
@@ -403,7 +397,7 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE)\n created by Amazon Cognito. GUID generation is unique within a region.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region.",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -411,7 +405,7 @@
"IdentityId": {
"target": "com.amazonaws.cognitosync#IdentityId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE)\n created by Amazon Cognito. GUID generation is unique within a region.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region.",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -419,14 +413,14 @@
"DatasetName": {
"target": "com.amazonaws.cognitosync#DatasetName",
"traits": {
- "smithy.api#documentation": "A string of up to 128 characters. Allowed characters are a-z, A-Z, 0-9, '_'\n (underscore), '-' (dash), and '.' (dot).
",
+ "smithy.api#documentation": "A string of up to 128 characters.\n Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (dash), and '.'\n (dot).",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "A request to delete the specific dataset.
"
+ "smithy.api#documentation": "A request to delete the specific\n dataset."
}
},
"com.amazonaws.cognitosync#DeleteDatasetResponse": {
@@ -435,12 +429,12 @@
"Dataset": {
"target": "com.amazonaws.cognitosync#Dataset",
"traits": {
- "smithy.api#documentation": "A collection of data for an identity pool. An identity pool can have multiple\n datasets. A dataset is per identity and can be general or associated with a particular entity\n in an application (like a saved game). Datasets are automatically created if they don't\n exist. Data is synced by dataset, and a dataset can hold up to 1MB of key-value pairs.
"
+ "smithy.api#documentation": "A collection of data for an identity pool.\n An identity pool can have multiple datasets. A dataset is per identity and can be general or\n associated with a particular entity in an application (like a saved game). Datasets are\n automatically created if they don't exist. Data is synced by dataset, and a dataset can hold\n up to 1MB of key-value pairs."
}
}
},
"traits": {
- "smithy.api#documentation": "Response to a successful DeleteDataset request.
"
+ "smithy.api#documentation": "Response to a successful DeleteDataset\n request."
}
},
"com.amazonaws.cognitosync#DescribeDataset": {
@@ -469,7 +463,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Gets meta data about a dataset by identity and dataset name. With Amazon Cognito Sync, each identity has access only to its own data. Thus, the credentials used to make this API call need to have access to the identity data.
\n This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials. You should use Cognito Identity credentials to make this API call.
",
+ "smithy.api#documentation": "Gets meta data about a dataset by identity and dataset name. With Amazon Cognito Sync, each\n identity has access only to its own data. Thus, the credentials used to make this API call\n need to have access to the identity data.
\n This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials. You should use Cognito Identity credentials to make this API call.
",
"smithy.api#http": {
"method": "GET",
"uri": "/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}",
@@ -483,7 +477,7 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE)\n created by Amazon Cognito. GUID generation is unique within a region.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region.",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -491,7 +485,7 @@
"IdentityId": {
"target": "com.amazonaws.cognitosync#IdentityId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE)\n created by Amazon Cognito. GUID generation is unique within a region.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region.",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -499,14 +493,14 @@
"DatasetName": {
"target": "com.amazonaws.cognitosync#DatasetName",
"traits": {
- "smithy.api#documentation": "A string of up to 128 characters. Allowed characters are a-z, A-Z, 0-9, '_'\n (underscore), '-' (dash), and '.' (dot).
",
+ "smithy.api#documentation": "A string of up to 128 characters.\n Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (dash), and '.'\n (dot).",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "A request for meta data about a dataset (creation date, number of records, size) by\n owner and dataset name.
"
+ "smithy.api#documentation": "A request for meta data about a dataset (creation\n date, number of records, size) by owner and dataset name."
}
},
"com.amazonaws.cognitosync#DescribeDatasetResponse": {
@@ -515,12 +509,12 @@
"Dataset": {
"target": "com.amazonaws.cognitosync#Dataset",
"traits": {
- "smithy.api#documentation": "Metadata for a collection of data for an identity. An identity can have multiple\n datasets. A dataset can be general or associated with a particular entity in an application\n (like a saved game). Datasets are automatically created if they don't exist. Data is synced\n by dataset, and a dataset can hold up to 1MB of key-value pairs
"
+ "smithy.api#documentation": "Meta data for a collection of data for an\n identity. An identity can have multiple datasets. A dataset can be general or associated with\n a particular entity in an application (like a saved game). Datasets are automatically created\n if they don't exist. Data is synced by dataset, and a dataset can hold up to 1MB of key-value\n pairs."
}
}
},
"traits": {
- "smithy.api#documentation": "Response to a successful DescribeDataset request.
"
+ "smithy.api#documentation": "Response to a successful DescribeDataset\n request."
}
},
"com.amazonaws.cognitosync#DescribeIdentityPoolUsage": {
@@ -549,7 +543,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Gets usage details (for example, data storage) about a particular identity pool.
\n This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.
",
+ "smithy.api#documentation": "Gets usage details (for example, data storage) about a particular identity pool.
\n This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.
\n\n \n \n DescribeIdentityPoolUsage \n The following examples have been edited for readability. \n \nPOST / HTTP/1.1\nCONTENT-TYPE: application/json\nX-AMZN-REQUESTID: 8dc0e749-c8cd-48bd-8520-da6be00d528b\nX-AMZ-TARGET: com.amazonaws.cognito.sync.model.AWSCognitoSyncService.DescribeIdentityPoolUsage\nHOST: cognito-sync.us-east-1.amazonaws.com:443\nX-AMZ-DATE: 20141111T205737Z\nAUTHORIZATION: AWS4-HMAC-SHA256 Credential=, SignedHeaders=content-type;host;x-amz-date;x-amz-target;x-amzn-requestid, Signature=\n \n{\n \"Operation\": \"com.amazonaws.cognito.sync.model#DescribeIdentityPoolUsage\",\n \"Service\": \"com.amazonaws.cognito.sync.model#AWSCognitoSyncService\",\n \"Input\":\n {\n \"IdentityPoolId\": \"IDENTITY_POOL_ID\"\n }\n}\n \n \n1.1 200 OK\nx-amzn-requestid: 8dc0e749-c8cd-48bd-8520-da6be00d528b\ncontent-type: application/json\ncontent-length: 271\ndate: Tue, 11 Nov 2014 20:57:37 GMT\n \n{\n \"Output\":\n {\n \"__type\": \"com.amazonaws.cognito.sync.model#DescribeIdentityPoolUsageResponse\",\n \"IdentityPoolUsage\":\n {\n \"DataStorage\": 0,\n \"IdentityPoolId\": \"IDENTITY_POOL_ID\",\n \"LastModifiedDate\": 1.413231134115E9,\n \"SyncSessionsCount\": null\n }\n },\n \"Version\": \"1.0\"\n}\n \n \n ",
"smithy.api#http": {
"method": "GET",
"uri": "/identitypools/{IdentityPoolId}",
@@ -563,14 +557,14 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE)\n created by Amazon Cognito. GUID generation is unique within a region.
",
+ "smithy.api#documentation": "A name-spaced GUID (for\n example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID\n generation is unique within a region.",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "A request for usage information about the identity pool.
"
+ "smithy.api#documentation": "A request for usage information about\n the identity pool."
}
},
"com.amazonaws.cognitosync#DescribeIdentityPoolUsageResponse": {
@@ -579,12 +573,12 @@
"IdentityPoolUsage": {
"target": "com.amazonaws.cognitosync#IdentityPoolUsage",
"traits": {
- "smithy.api#documentation": "Information about the usage of the identity pool.
"
+ "smithy.api#documentation": "Information about the\n usage of the identity pool."
}
}
},
"traits": {
- "smithy.api#documentation": "Response to a successful DescribeIdentityPoolUsage request.
"
+ "smithy.api#documentation": "Response to a successful\n DescribeIdentityPoolUsage request."
}
},
"com.amazonaws.cognitosync#DescribeIdentityUsage": {
@@ -613,7 +607,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Gets usage information for an identity, including number of datasets and data usage.
\n This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials.
",
+ "smithy.api#documentation": "Gets usage information for an identity, including number of datasets and data usage.
\n This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials.
\n \n \n DescribeIdentityUsage \n The following examples have been edited for readability. \n \nPOST / HTTP/1.1\nCONTENT-TYPE: application/json\nX-AMZN-REQUESTID: 33f9b4e4-a177-4aad-a3bb-6edb7980b283\nX-AMZ-TARGET: com.amazonaws.cognito.sync.model.AWSCognitoSyncService.DescribeIdentityUsage\nHOST: cognito-sync.us-east-1.amazonaws.com:443\nX-AMZ-DATE: 20141111T215129Z\nAUTHORIZATION: AWS4-HMAC-SHA256 Credential=, SignedHeaders=content-type;host;x-amz-date;x-amz-target;x-amzn-requestid, Signature=\n \n{\n \"Operation\": \"com.amazonaws.cognito.sync.model#DescribeIdentityUsage\",\n \"Service\": \"com.amazonaws.cognito.sync.model#AWSCognitoSyncService\",\n \"Input\":\n {\n \"IdentityPoolId\": \"IDENTITY_POOL_ID\",\n \"IdentityId\": \"IDENTITY_ID\"\n }\n}\n \n \n 1.1 200 OK\nx-amzn-requestid: 33f9b4e4-a177-4aad-a3bb-6edb7980b283\ncontent-type: application/json\ncontent-length: 318\ndate: Tue, 11 Nov 2014 21:51:29 GMT\n \n{\n \"Output\":\n {\n \"__type\": \"com.amazonaws.cognito.sync.model#DescribeIdentityUsageResponse\",\n \"IdentityUsage\":\n {\n \"DataStorage\": 16,\n \"DatasetCount\": 1,\n \"IdentityId\": \"IDENTITY_ID\",\n \"IdentityPoolId\": \"IDENTITY_POOL_ID\",\n \"LastModifiedDate\": 1.412974081336E9\n }\n },\n \"Version\": \"1.0\"\n}\n \n \n ",
"smithy.api#http": {
"method": "GET",
"uri": "/identitypools/{IdentityPoolId}/identities/{IdentityId}",
@@ -627,7 +621,7 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE)\n created by Amazon Cognito. GUID generation is unique within a region.
",
+ "smithy.api#documentation": "A name-spaced GUID (for\n example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID\n generation is unique within a region.",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -635,14 +629,14 @@
"IdentityId": {
"target": "com.amazonaws.cognitosync#IdentityId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE)\n created by Amazon Cognito. GUID generation is unique within a region.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region.",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "A request for information about the usage of an identity pool.
"
+ "smithy.api#documentation": "A request for information about the usage of\n an identity pool."
}
},
"com.amazonaws.cognitosync#DescribeIdentityUsageResponse": {
@@ -651,12 +645,12 @@
"IdentityUsage": {
"target": "com.amazonaws.cognitosync#IdentityUsage",
"traits": {
- "smithy.api#documentation": "Usage information for the identity.
"
+ "smithy.api#documentation": "Usage information for the\n identity."
}
}
},
"traits": {
- "smithy.api#documentation": "The response to a successful DescribeIdentityUsage request.
"
+ "smithy.api#documentation": "The response to a successful\n DescribeIdentityUsage request."
}
},
"com.amazonaws.cognitosync#DeviceId": {
@@ -674,13 +668,13 @@
"message": {
"target": "com.amazonaws.cognitosync#ExceptionMessage",
"traits": {
- "smithy.api#documentation": "The message associated with the DuplicateRequestException exception.
",
+ "smithy.api#documentation": "The message associated with the DuplicateRequestException exception.",
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "An exception thrown when there is an IN_PROGRESS bulk publish operation for the given identity pool.
",
+ "smithy.api#documentation": "An exception thrown when there is an IN_PROGRESS bulk publish operation for the given identity pool.",
"smithy.api#error": "client",
"smithy.api#httpError": 400
}
@@ -726,7 +720,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Get the status of the last BulkPublish operation for an identity pool.
\n This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.
",
+ "smithy.api#documentation": "Get the status of the last BulkPublish operation for an identity pool.
This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.
",
"smithy.api#http": {
"method": "POST",
"uri": "/identitypools/{IdentityPoolId}/getBulkPublishDetails",
@@ -740,14 +734,14 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region.",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "The input for the GetBulkPublishDetails operation.
"
+ "smithy.api#documentation": "The input for the GetBulkPublishDetails operation."
}
},
"com.amazonaws.cognitosync#GetBulkPublishDetailsResponse": {
@@ -756,36 +750,36 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.
"
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region."
}
},
"BulkPublishStartTime": {
"target": "com.amazonaws.cognitosync#Date",
"traits": {
- "smithy.api#documentation": "The date/time at which the last bulk publish was initiated.
"
+ "smithy.api#documentation": "The date/time at which the last bulk publish was initiated."
}
},
"BulkPublishCompleteTime": {
"target": "com.amazonaws.cognitosync#Date",
"traits": {
- "smithy.api#documentation": "If BulkPublishStatus is SUCCEEDED, the time the last bulk publish operation completed.
"
+ "smithy.api#documentation": "If BulkPublishStatus is SUCCEEDED, the time the last bulk publish operation completed."
}
},
"BulkPublishStatus": {
"target": "com.amazonaws.cognitosync#BulkPublishStatus",
"traits": {
- "smithy.api#documentation": "Status of the last bulk publish operation, valid values are:
\n \n \n NOT_STARTED - No bulk publish has been requested for this identity pool
\n \n \n IN_PROGRESS - Data is being published to the configured stream
\n \n \n SUCCEEDED - All data for the identity pool has been published to the configured stream
\n \n \n FAILED - Some portion of the data has failed to publish, check FailureMessage for the cause.
\n \n "
+ "smithy.api#documentation": "Status of the last bulk publish operation, valid values are: \n NOT_STARTED - No bulk publish has been requested for this identity pool
\n IN_PROGRESS - Data is being published to the configured stream
\n SUCCEEDED - All data for the identity pool has been published to the configured stream
\n FAILED - Some portion of the data has failed to publish, check FailureMessage for the cause.
"
}
},
"FailureMessage": {
"target": "com.amazonaws.cognitosync#String",
"traits": {
- "smithy.api#documentation": "If BulkPublishStatus is FAILED this field will contain the error message that caused the bulk publish to fail.
"
+ "smithy.api#documentation": "If BulkPublishStatus is FAILED this field will contain the error message that caused the bulk publish to fail."
}
}
},
"traits": {
- "smithy.api#documentation": "The output for the GetBulkPublishDetails operation.
"
+ "smithy.api#documentation": "The output for the GetBulkPublishDetails operation."
}
},
"com.amazonaws.cognitosync#GetCognitoEvents": {
@@ -814,7 +808,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Gets the events and the corresponding Lambda functions associated with an identity pool.
\n This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.
",
+ "smithy.api#documentation": "Gets the events and the corresponding Lambda functions associated with an identity pool.
This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.
",
"smithy.api#http": {
"method": "GET",
"uri": "/identitypools/{IdentityPoolId}/events",
@@ -878,7 +872,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Gets the configuration settings of an identity pool.
\n This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.
",
+ "smithy.api#documentation": "Gets the configuration settings of an identity pool.
This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.
\n \n \n GetIdentityPoolConfiguration \n The following examples have been edited for readability. \n \nPOST / HTTP/1.1\nCONTENT-TYPE: application/json\nX-AMZN-REQUESTID: b1cfdd4b-f620-4fe4-be0f-02024a1d33da\nX-AMZ-TARGET: com.amazonaws.cognito.sync.model.AWSCognitoSyncService.GetIdentityPoolConfiguration\nHOST: cognito-sync.us-east-1.amazonaws.com\nX-AMZ-DATE: 20141004T195722Z\nAUTHORIZATION: AWS4-HMAC-SHA256 Credential=, SignedHeaders=content-type;content-length;host;x-amz-date;x-amz-target, Signature=\n\n{\n \"Operation\": \"com.amazonaws.cognito.sync.model#GetIdentityPoolConfiguration\",\n \"Service\": \"com.amazonaws.cognito.sync.model#AWSCognitoSyncService\",\n \"Input\":\n {\n \"IdentityPoolId\": \"ID_POOL_ID\"\n }\n}\n \n \n \n1.1 200 OK\nx-amzn-requestid: b1cfdd4b-f620-4fe4-be0f-02024a1d33da\ndate: Sat, 04 Oct 2014 19:57:22 GMT\ncontent-type: application/json\ncontent-length: 332\n\n{\n \"Output\":\n {\n \"__type\": \"com.amazonaws.cognito.sync.model#GetIdentityPoolConfigurationResponse\",\n \"IdentityPoolId\": \"ID_POOL_ID\",\n \"PushSync\":\n {\n \"ApplicationArns\": [\"PLATFORMARN1\", \"PLATFORMARN2\"],\n \"RoleArn\": \"ROLEARN\"\n }\n },\n \"Version\": \"1.0\"\n}\n \n \n ",
"smithy.api#http": {
"method": "GET",
"uri": "/identitypools/{IdentityPoolId}/configuration",
@@ -892,7 +886,7 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. This is the ID of the pool for which to return a configuration.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by\n Amazon Cognito. This is the ID of the pool for which to return a configuration.
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -908,7 +902,7 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito.
"
+ "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by\n Amazon Cognito.
"
}
},
"PushSync": {
@@ -920,7 +914,7 @@
"CognitoStreams": {
"target": "com.amazonaws.cognitosync#CognitoStreams",
"traits": {
- "smithy.api#documentation": "Options to apply to this identity pool for Amazon Cognito streams.
"
+ "smithy.api#documentation": "Options to apply to this identity pool for Amazon Cognito streams."
}
}
},
@@ -954,30 +948,30 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE)\n created by Amazon Cognito. GUID generation is unique within a region.
"
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region."
}
},
"SyncSessionsCount": {
"target": "com.amazonaws.cognitosync#Long",
"traits": {
- "smithy.api#documentation": "Number of sync sessions for the identity pool.
"
+ "smithy.api#documentation": "Number of sync sessions for the\n identity pool."
}
},
"DataStorage": {
"target": "com.amazonaws.cognitosync#Long",
"traits": {
- "smithy.api#documentation": "Data storage information for the identity pool.
"
+ "smithy.api#documentation": "Data storage information for the identity\n pool."
}
},
"LastModifiedDate": {
"target": "com.amazonaws.cognitosync#Date",
"traits": {
- "smithy.api#documentation": "Date on which the identity pool was last modified.
"
+ "smithy.api#documentation": "Date on which the identity pool was\n last modified."
}
}
},
"traits": {
- "smithy.api#documentation": "Usage information for the identity pool.
"
+ "smithy.api#documentation": "Usage information for the identity\n pool."
}
},
"com.amazonaws.cognitosync#IdentityPoolUsageList": {
@@ -992,36 +986,36 @@
"IdentityId": {
"target": "com.amazonaws.cognitosync#IdentityId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE)\n created by Amazon Cognito. GUID generation is unique within a region.
"
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region."
}
},
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE)\n created by Amazon Cognito. GUID generation is unique within a region.
"
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region."
}
},
"LastModifiedDate": {
"target": "com.amazonaws.cognitosync#Date",
"traits": {
- "smithy.api#documentation": "Date on which the identity was last modified.
"
+ "smithy.api#documentation": "Date on which the identity was last\n modified."
}
},
"DatasetCount": {
"target": "com.amazonaws.cognitosync#Integer",
"traits": {
- "smithy.api#documentation": "Number of datasets for the identity.
"
+ "smithy.api#documentation": "Number of datasets for the\n identity."
}
},
"DataStorage": {
"target": "com.amazonaws.cognitosync#Long",
"traits": {
- "smithy.api#documentation": "Total data storage for this identity.
"
+ "smithy.api#documentation": "Total data storage for this\n identity."
}
}
},
"traits": {
- "smithy.api#documentation": "Usage information for the identity.
"
+ "smithy.api#documentation": "Usage information for the identity."
}
},
"com.amazonaws.cognitosync#Integer": {
@@ -1036,13 +1030,13 @@
"message": {
"target": "com.amazonaws.cognitosync#ExceptionMessage",
"traits": {
- "smithy.api#documentation": "Message returned by InternalErrorException.
",
+ "smithy.api#documentation": "Message returned by\n InternalErrorException.",
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "Indicates an internal service error.
",
+ "smithy.api#documentation": "Indicates an internal service\n error.",
"smithy.api#error": "server",
"smithy.api#httpError": 500
}
@@ -1053,13 +1047,12 @@
"message": {
"target": "com.amazonaws.cognitosync#ExceptionMessage",
"traits": {
- "smithy.api#documentation": "Message returned by InvalidConfigurationException.
",
+ "smithy.api#documentation": "Message returned by\n InvalidConfigurationException.",
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "This exception is thrown when Amazon Cognito detects an invalid configuration.
",
"smithy.api#error": "client",
"smithy.api#httpError": 400
}
@@ -1087,13 +1080,13 @@
"message": {
"target": "com.amazonaws.cognitosync#ExceptionMessage",
"traits": {
- "smithy.api#documentation": "Message returned by InvalidParameterException.
",
+ "smithy.api#documentation": "Message returned by\n InvalidParameterException.",
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "Thrown when a request parameter does not comply with the associated constraints.
",
+ "smithy.api#documentation": "Thrown when a request parameter does not comply\n with the associated constraints.",
"smithy.api#error": "client",
"smithy.api#httpError": 400
}
@@ -1101,22 +1094,6 @@
"com.amazonaws.cognitosync#LambdaFunctionArn": {
"type": "string"
},
- "com.amazonaws.cognitosync#LambdaSocketTimeoutException": {
- "type": "structure",
- "members": {
- "message": {
- "target": "com.amazonaws.cognitosync#ExceptionMessage",
- "traits": {
- "smithy.api#required": {}
- }
- }
- },
- "traits": {
- "smithy.api#documentation": "This exception is thrown when your Lambda function fails to respond within 5 seconds.\n For more information, see Amazon\n Cognito Events .
",
- "smithy.api#error": "client",
- "smithy.api#httpError": 400
- }
- },
"com.amazonaws.cognitosync#LambdaThrottledException": {
"type": "structure",
"members": {
@@ -1140,13 +1117,13 @@
"message": {
"target": "com.amazonaws.cognitosync#ExceptionMessage",
"traits": {
- "smithy.api#documentation": "Message returned by LimitExceededException.
",
+ "smithy.api#documentation": "Message returned by\n LimitExceededException.",
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "Thrown when the limit on the number of objects or operations has been exceeded.
",
+ "smithy.api#documentation": "Thrown when the limit on the number of objects or\n operations has been exceeded.",
"smithy.api#error": "client",
"smithy.api#httpError": 400
}
@@ -1174,7 +1151,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists datasets for an identity. With Amazon Cognito Sync, each identity has access only to its own data. Thus, the credentials used to make this API call need to have access to the identity data.
\n ListDatasets can be called with temporary user credentials provided by Cognito Identity or with developer credentials. You should use the Cognito Identity credentials to make this API call.
",
+ "smithy.api#documentation": "Lists datasets for an identity. With Amazon Cognito Sync, each identity has access only to\n its own data. Thus, the credentials used to make this API call need to have access to the\n identity data.
\n ListDatasets can be called with temporary user credentials provided by Cognito\n Identity or with developer credentials. You should use the Cognito Identity credentials to\n make this API call.
\n \n \n ListDatasets \n The following examples have been edited for readability. \n \nPOST / HTTP/1.1\nCONTENT-TYPE: application/json\nX-AMZN-REQUESTID: 15225768-209f-4078-aaed-7494ace9f2db\nX-AMZ-TARGET: com.amazonaws.cognito.sync.model.AWSCognitoSyncService.ListDatasets\nHOST: cognito-sync.us-east-1.amazonaws.com:443\nX-AMZ-DATE: 20141111T215640Z\nAUTHORIZATION: AWS4-HMAC-SHA256 Credential=, SignedHeaders=content-type;host;x-amz-date;x-amz-target;x-amzn-requestid, Signature=\n \n{\n \"Operation\": \"com.amazonaws.cognito.sync.model#ListDatasets\",\n \"Service\": \"com.amazonaws.cognito.sync.model#AWSCognitoSyncService\",\n \"Input\":\n {\n \"IdentityPoolId\": \"IDENTITY_POOL_ID\",\n \"IdentityId\": \"IDENTITY_ID\",\n \"MaxResults\": \"3\"\n }\n}\n \n \n1.1 200 OK\nx-amzn-requestid: 15225768-209f-4078-aaed-7494ace9f2db, 15225768-209f-4078-aaed-7494ace9f2db\ncontent-type: application/json\ncontent-length: 355\ndate: Tue, 11 Nov 2014 21:56:40 GMT\n \n{\n \"Output\":\n {\n \"__type\": \"com.amazonaws.cognito.sync.model#ListDatasetsResponse\",\n \"Count\": 1,\n \"Datasets\": [\n {\n \"CreationDate\": 1.412974057151E9,\n \"DataStorage\": 16,\n \"DatasetName\": \"my_list\",\n \"IdentityId\": \"IDENTITY_ID\",\n \"LastModifiedBy\": \"123456789012\",\n \"LastModifiedDate\": 1.412974057244E9,\n \"NumRecords\": 1\n }],\n \"NextToken\": null\n },\n \"Version\": \"1.0\"\n}\n \n \n ",
"smithy.api#http": {
"method": "GET",
"uri": "/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets",
@@ -1188,7 +1165,7 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region.",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -1196,7 +1173,7 @@
"IdentityId": {
"target": "com.amazonaws.cognitosync#IdentityId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region.",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -1204,20 +1181,20 @@
"NextToken": {
"target": "com.amazonaws.cognitosync#String",
"traits": {
- "smithy.api#documentation": "A pagination token for obtaining the next page of results.
",
+ "smithy.api#documentation": "A pagination token for obtaining the next\n page of results.",
"smithy.api#httpQuery": "nextToken"
}
},
"MaxResults": {
- "target": "com.amazonaws.cognitosync#PostiveIntString",
+ "target": "com.amazonaws.cognitosync#IntegerString",
"traits": {
- "smithy.api#documentation": "The maximum number of results to be returned.
",
+ "smithy.api#documentation": "The maximum number of results to be\n returned.",
"smithy.api#httpQuery": "maxResults"
}
}
},
"traits": {
- "smithy.api#documentation": "Request for a list of datasets for an identity.
"
+ "smithy.api#documentation": "Request for a list of datasets for an\n identity."
}
},
"com.amazonaws.cognitosync#ListDatasetsResponse": {
@@ -1226,24 +1203,24 @@
"Datasets": {
"target": "com.amazonaws.cognitosync#DatasetList",
"traits": {
- "smithy.api#documentation": "A set of datasets.
"
+ "smithy.api#documentation": "A set of datasets."
}
},
"Count": {
"target": "com.amazonaws.cognitosync#Integer",
"traits": {
- "smithy.api#documentation": "Number of datasets returned.
"
+ "smithy.api#documentation": "Number of datasets returned."
}
},
"NextToken": {
"target": "com.amazonaws.cognitosync#String",
"traits": {
- "smithy.api#documentation": "A pagination token for obtaining the next page of results.
"
+ "smithy.api#documentation": "A pagination token for obtaining the next\n page of results."
}
}
},
"traits": {
- "smithy.api#documentation": "Returned for a successful ListDatasets request.
"
+ "smithy.api#documentation": "Returned for a successful ListDatasets\n request."
}
},
"com.amazonaws.cognitosync#ListIdentityPoolUsage": {
@@ -1269,7 +1246,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Gets a list of identity pools registered with Cognito.
\n ListIdentityPoolUsage can only be called with developer credentials. You cannot make this API call with the temporary user credentials provided by Cognito Identity.
",
+ "smithy.api#documentation": "Gets a list of identity pools registered with Cognito.
\n ListIdentityPoolUsage can only be called with developer credentials. You\n cannot make this API call with the temporary user credentials provided by Cognito\n Identity.
\n \n \n ListIdentityPoolUsage \n The following examples have been edited for readability. \n \nPOST / HTTP/1.1\nCONTENT-TYPE: application/json\nX-AMZN-REQUESTID: 9be7c425-ef05-48c0-aef3-9f0ff2fe17d3\nX-AMZ-TARGET: com.amazonaws.cognito.sync.model.AWSCognitoSyncService.ListIdentityPoolUsage\nHOST: cognito-sync.us-east-1.amazonaws.com:443\nX-AMZ-DATE: 20141111T211414Z\nAUTHORIZATION: AWS4-HMAC-SHA256 Credential=, SignedHeaders=content-type;host;x-amz-date;x-amz-target;x-amzn-requestid, Signature=\n \n{\n \"Operation\": \"com.amazonaws.cognito.sync.model#ListIdentityPoolUsage\",\n \"Service\": \"com.amazonaws.cognito.sync.model#AWSCognitoSyncService\",\n \"Input\":\n {\n \"MaxResults\": \"2\"\n }\n}\n \n \n1.1 200 OK\nx-amzn-requestid: 9be7c425-ef05-48c0-aef3-9f0ff2fe17d3\ncontent-type: application/json\ncontent-length: 519\ndate: Tue, 11 Nov 2014 21:14:14 GMT\n \n{\n \"Output\":\n {\n \"__type\": \"com.amazonaws.cognito.sync.model#ListIdentityPoolUsageResponse\",\n \"Count\": 2,\n \"IdentityPoolUsages\": [\n {\n \"DataStorage\": 0,\n \"IdentityPoolId\": \"IDENTITY_POOL_ID\",\n \"LastModifiedDate\": 1.413836234607E9,\n \"SyncSessionsCount\": null\n },\n {\n \"DataStorage\": 0,\n \"IdentityPoolId\": \"IDENTITY_POOL_ID\",\n \"LastModifiedDate\": 1.410892165601E9,\n \"SyncSessionsCount\": null\n }],\n \"MaxResults\": 2,\n \"NextToken\": \"dXMtZWFzdC0xOjBjMWJhMDUyLWUwOTgtNDFmYS1hNzZlLWVhYTJjMTI1Zjg2MQ==\"\n },\n \"Version\": \"1.0\"\n} \n \n \n ",
"smithy.api#http": {
"method": "GET",
"uri": "/identitypools",
@@ -1283,20 +1260,20 @@
"NextToken": {
"target": "com.amazonaws.cognitosync#String",
"traits": {
- "smithy.api#documentation": "A pagination token for obtaining the next page of results.
",
+ "smithy.api#documentation": "A pagination token for obtaining\n the next page of results.",
"smithy.api#httpQuery": "nextToken"
}
},
"MaxResults": {
"target": "com.amazonaws.cognitosync#IntegerString",
"traits": {
- "smithy.api#documentation": "The maximum number of results to be returned.
",
+ "smithy.api#documentation": "The maximum number of results to\n be returned.",
"smithy.api#httpQuery": "maxResults"
}
}
},
"traits": {
- "smithy.api#documentation": "A request for usage information on an identity pool.
"
+ "smithy.api#documentation": "A request for usage information on an\n identity pool."
}
},
"com.amazonaws.cognitosync#ListIdentityPoolUsageResponse": {
@@ -1305,30 +1282,30 @@
"IdentityPoolUsages": {
"target": "com.amazonaws.cognitosync#IdentityPoolUsageList",
"traits": {
- "smithy.api#documentation": "Usage information for the identity pools.
"
+ "smithy.api#documentation": "Usage information for\n the identity pools."
}
},
"MaxResults": {
"target": "com.amazonaws.cognitosync#Integer",
"traits": {
- "smithy.api#documentation": "The maximum number of results to be returned.
"
+ "smithy.api#documentation": "The maximum number of results to\n be returned."
}
},
"Count": {
"target": "com.amazonaws.cognitosync#Integer",
"traits": {
- "smithy.api#documentation": "Total number of identities for the identity pool.
"
+ "smithy.api#documentation": "Total number of identities for the\n identity pool."
}
},
"NextToken": {
"target": "com.amazonaws.cognitosync#String",
"traits": {
- "smithy.api#documentation": "A pagination token for obtaining the next page of results.
"
+ "smithy.api#documentation": "A pagination token for obtaining\n the next page of results."
}
}
},
"traits": {
- "smithy.api#documentation": "Returned for a successful ListIdentityPoolUsage request.
"
+ "smithy.api#documentation": "Returned for a successful\n ListIdentityPoolUsage request."
}
},
"com.amazonaws.cognitosync#ListRecords": {
@@ -1354,7 +1331,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Gets paginated records, optionally changed after a particular sync count for a dataset and identity. With Amazon Cognito Sync, each identity has access only to its own data. Thus, the credentials used to make this API call need to have access to the identity data.
\n ListRecords can be called with temporary user credentials provided by Cognito Identity or with developer credentials. You should use Cognito Identity credentials to make this API call.
",
+ "smithy.api#documentation": "Gets paginated records, optionally changed after a particular sync count for a dataset and\n identity. With Amazon Cognito Sync, each identity has access only to its own data. Thus,\n the credentials used to make this API call need to have access to the identity data.
\n ListRecords can be called with temporary user credentials provided by Cognito\n Identity or with developer credentials. You should use Cognito Identity credentials to make\n this API call.
\n \n \n ListRecords \n The following examples have been edited for readability. \n \nPOST / HTTP/1.1\nCONTENT-TYPE: application/json\nX-AMZN-REQUESTID: b3d2e31e-d6b7-4612-8e84-c9ba288dab5d\nX-AMZ-TARGET: com.amazonaws.cognito.sync.model.AWSCognitoSyncService.ListRecords\nHOST: cognito-sync.us-east-1.amazonaws.com:443\nX-AMZ-DATE: 20141111T183230Z\nAUTHORIZATION: AWS4-HMAC-SHA256 Credential=, SignedHeaders=content-type;host;x-amz-date;x-amz-target;x-amzn-requestid, Signature=\n \n{\n \"Operation\": \"com.amazonaws.cognito.sync.model#ListRecords\",\n \"Service\": \"com.amazonaws.cognito.sync.model#AWSCognitoSyncService\",\n \"Input\":\n {\n \"IdentityPoolId\": \"IDENTITY_POOL_ID\",\n \"IdentityId\": \"IDENTITY_ID\",\n \"DatasetName\": \"newDataSet\"\n }\n}\n \n \n1.1 200 OK\nx-amzn-requestid: b3d2e31e-d6b7-4612-8e84-c9ba288dab5d\ncontent-type: application/json\ncontent-length: 623\ndate: Tue, 11 Nov 2014 18:32:30 GMT\n \n{\n \"Output\":\n {\n \"__type\": \"com.amazonaws.cognito.sync.model#ListRecordsResponse\",\n \"Count\": 0,\n \"DatasetDeletedAfterRequestedSyncCount\": false,\n \"DatasetExists\": false,\n \"DatasetSyncCount\": 0,\n \"LastModifiedBy\": null,\n \"MergedDatasetNames\": null,\n \"NextToken\": null,\n \"Records\": [],\n \"SyncSessionToken\": \"SYNC_SESSION_TOKEN\"\n },\n \"Version\": \"1.0\"\n}\n \n \n ",
"smithy.api#http": {
"method": "GET",
"uri": "/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}/records",
@@ -1368,7 +1345,7 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region.",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -1376,7 +1353,7 @@
"IdentityId": {
"target": "com.amazonaws.cognitosync#IdentityId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region.",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -1384,7 +1361,7 @@
"DatasetName": {
"target": "com.amazonaws.cognitosync#DatasetName",
"traits": {
- "smithy.api#documentation": "A string of up to 128 characters. Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (dash), and '.' (dot).
",
+ "smithy.api#documentation": "A string of up to 128 characters. Allowed\n characters are a-z, A-Z, 0-9, '_' (underscore), '-' (dash), and '.' (dot).",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -1392,34 +1369,34 @@
"LastSyncCount": {
"target": "com.amazonaws.cognitosync#Long",
"traits": {
- "smithy.api#documentation": "The last server sync count for this record.
",
+ "smithy.api#documentation": "The last server sync count for this\n record.",
"smithy.api#httpQuery": "lastSyncCount"
}
},
"NextToken": {
"target": "com.amazonaws.cognitosync#String",
"traits": {
- "smithy.api#documentation": "A pagination token for obtaining the next page of results.
",
+ "smithy.api#documentation": "A pagination token for obtaining the next\n page of results.",
"smithy.api#httpQuery": "nextToken"
}
},
"MaxResults": {
"target": "com.amazonaws.cognitosync#IntegerString",
"traits": {
- "smithy.api#documentation": "The maximum number of results to be returned.
",
+ "smithy.api#documentation": "The maximum number of results to be\n returned.",
"smithy.api#httpQuery": "maxResults"
}
},
"SyncSessionToken": {
"target": "com.amazonaws.cognitosync#SyncSessionToken",
"traits": {
- "smithy.api#documentation": "A token containing a session ID, identity ID, and expiration.
",
+ "smithy.api#documentation": "A token containing a session ID,\n identity ID, and expiration.",
"smithy.api#httpQuery": "syncSessionToken"
}
}
},
"traits": {
- "smithy.api#documentation": "A request for a list of records.
"
+ "smithy.api#documentation": "A request for a list of records."
}
},
"com.amazonaws.cognitosync#ListRecordsResponse": {
@@ -1428,60 +1405,60 @@
"Records": {
"target": "com.amazonaws.cognitosync#RecordList",
"traits": {
- "smithy.api#documentation": "A list of all records.
"
+ "smithy.api#documentation": "A list of all records."
}
},
"NextToken": {
"target": "com.amazonaws.cognitosync#String",
"traits": {
- "smithy.api#documentation": "A pagination token for obtaining the next page of results.
"
+ "smithy.api#documentation": "A pagination token for obtaining the next\n page of results."
}
},
"Count": {
"target": "com.amazonaws.cognitosync#Integer",
"traits": {
- "smithy.api#documentation": "Total number of records.
"
+ "smithy.api#documentation": "Total number of records."
}
},
"DatasetSyncCount": {
"target": "com.amazonaws.cognitosync#Long",
"traits": {
- "smithy.api#documentation": "Server sync count for this dataset.
"
+ "smithy.api#documentation": "Server sync count for this\n dataset."
}
},
"LastModifiedBy": {
"target": "com.amazonaws.cognitosync#String",
"traits": {
- "smithy.api#documentation": "The user/device that made the last change to this record.
"
+ "smithy.api#documentation": "The user/device that made the last\n change to this record."
}
},
"MergedDatasetNames": {
"target": "com.amazonaws.cognitosync#MergedDatasetNameList",
"traits": {
- "smithy.api#documentation": "Names of merged datasets.
"
+ "smithy.api#documentation": "Names of merged\n datasets."
}
},
"DatasetExists": {
"target": "com.amazonaws.cognitosync#Boolean",
"traits": {
- "smithy.api#documentation": "Indicates whether the dataset exists.
"
+ "smithy.api#documentation": "Indicates whether the dataset\n exists."
}
},
"DatasetDeletedAfterRequestedSyncCount": {
"target": "com.amazonaws.cognitosync#Boolean",
"traits": {
- "smithy.api#documentation": "A boolean value specifying whether to delete the dataset locally.
"
+ "smithy.api#documentation": "A boolean value\n specifying whether to delete the dataset locally."
}
},
"SyncSessionToken": {
"target": "com.amazonaws.cognitosync#String",
"traits": {
- "smithy.api#documentation": "A token containing a session ID, identity ID, and expiration.
"
+ "smithy.api#documentation": "A token containing a session ID,\n identity ID, and expiration."
}
}
},
"traits": {
- "smithy.api#documentation": "Returned for a successful ListRecordsRequest.
"
+ "smithy.api#documentation": "Returned for a successful\n ListRecordsRequest."
}
},
"com.amazonaws.cognitosync#Long": {
@@ -1502,13 +1479,13 @@
"message": {
"target": "com.amazonaws.cognitosync#ExceptionMessage",
"traits": {
- "smithy.api#documentation": "The message returned by a NotAuthorizedException.
",
+ "smithy.api#documentation": "The message returned by a\n NotAuthorizedException.",
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "Thrown when a user is not authorized to access the requested resource.
",
+ "smithy.api#documentation": "Thrown when a user is not authorized to access the\n requested resource.",
"smithy.api#error": "client",
"smithy.api#httpError": 403
}
@@ -1551,16 +1528,6 @@
]
}
},
- "com.amazonaws.cognitosync#PostiveIntString": {
- "type": "string",
- "traits": {
- "smithy.api#length": {
- "min": 0,
- "max": 19
- },
- "smithy.api#pattern": "^[1-9]\\d*"
- }
- },
"com.amazonaws.cognitosync#PushSync": {
"type": "structure",
"members": {
@@ -1590,42 +1557,42 @@
"Key": {
"target": "com.amazonaws.cognitosync#RecordKey",
"traits": {
- "smithy.api#documentation": "The key for the record.
"
+ "smithy.api#documentation": "The key for the record."
}
},
"Value": {
"target": "com.amazonaws.cognitosync#RecordValue",
"traits": {
- "smithy.api#documentation": "The value for the record.
"
+ "smithy.api#documentation": "The value for the record."
}
},
"SyncCount": {
"target": "com.amazonaws.cognitosync#Long",
"traits": {
- "smithy.api#documentation": "The server sync count for this record.
"
+ "smithy.api#documentation": "The server sync count for this record."
}
},
"LastModifiedDate": {
"target": "com.amazonaws.cognitosync#Date",
"traits": {
- "smithy.api#documentation": "The date on which the record was last modified.
"
+ "smithy.api#documentation": "The date on which the record was last\n modified."
}
},
"LastModifiedBy": {
"target": "com.amazonaws.cognitosync#String",
"traits": {
- "smithy.api#documentation": "The user/device that made the last change to this record.
"
+ "smithy.api#documentation": "The user/device that made the last change to this\n record."
}
},
"DeviceLastModifiedDate": {
"target": "com.amazonaws.cognitosync#Date",
"traits": {
- "smithy.api#documentation": "The last modified date of the client device.
"
+ "smithy.api#documentation": "The last modified date of the client\n device."
}
}
},
"traits": {
- "smithy.api#documentation": "The basic data structure of a dataset.
"
+ "smithy.api#documentation": "The basic data structure of a dataset."
}
},
"com.amazonaws.cognitosync#RecordKey": {
@@ -1649,39 +1616,39 @@
"Op": {
"target": "com.amazonaws.cognitosync#Operation",
"traits": {
- "smithy.api#documentation": "An operation, either replace or remove.
",
+ "smithy.api#documentation": "An operation, either replace or remove.",
"smithy.api#required": {}
}
},
"Key": {
"target": "com.amazonaws.cognitosync#RecordKey",
"traits": {
- "smithy.api#documentation": "The key associated with the record patch.
",
+ "smithy.api#documentation": "The key associated with the record patch.",
"smithy.api#required": {}
}
},
"Value": {
"target": "com.amazonaws.cognitosync#RecordValue",
"traits": {
- "smithy.api#documentation": "The value associated with the record patch.
"
+ "smithy.api#documentation": "The value associated with the record\n patch."
}
},
"SyncCount": {
"target": "com.amazonaws.cognitosync#Long",
"traits": {
- "smithy.api#documentation": "Last known server sync count for this record. Set to 0 if unknown.
",
+ "smithy.api#documentation": "Last known server sync count for this record. Set\n to 0 if unknown.",
"smithy.api#required": {}
}
},
"DeviceLastModifiedDate": {
"target": "com.amazonaws.cognitosync#Date",
"traits": {
- "smithy.api#documentation": "The last modified date of the client device.
"
+ "smithy.api#documentation": "The last modified date of the client\n device."
}
}
},
"traits": {
- "smithy.api#documentation": "An update operation for a record.
"
+ "smithy.api#documentation": "An update operation for a record."
}
},
"com.amazonaws.cognitosync#RecordPatchList": {
@@ -1695,7 +1662,7 @@
"traits": {
"smithy.api#length": {
"min": 0,
- "max": 4194304
+ "max": 1048575
}
}
},
@@ -1728,7 +1695,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Registers a device to receive push sync notifications.
\n This API can only be called with temporary credentials provided by Cognito Identity. You cannot call this API with developer credentials.
",
+ "smithy.api#documentation": "Registers a device to receive push sync notifications.
This API can only be called with temporary credentials provided by Cognito Identity. You cannot call this API with developer credentials.
\n \n \n RegisterDevice \n The following examples have been edited for readability. \n \nPOST / HTTP/1.1\nCONTENT-TYPE: application/json\nX-AMZN-REQUESTID: 368f9200-3eca-449e-93b3-7b9c08d8e185\nX-AMZ-TARGET: com.amazonaws.cognito.sync.model.AWSCognitoSyncService.RegisterDevice\nHOST: cognito-sync.us-east-1.amazonaws.com\nX-AMZ-DATE: 20141004T194643Z\nX-AMZ-SECURITY-TOKEN: \nAUTHORIZATION: AWS4-HMAC-SHA256 Credential=, SignedHeaders=content-type;content-length;host;x-amz-date;x-amz-target, Signature=\n\n{\n \"Operation\": \"com.amazonaws.cognito.sync.model#RegisterDevice\",\n \"Service\": \"com.amazonaws.cognito.sync.model#AWSCognitoSyncService\",\n \"Input\":\n {\n \"IdentityPoolId\": \"ID_POOL_ID\",\n \"IdentityId\": \"IDENTITY_ID\",\n \"Platform\": \"GCM\",\n \"Token\": \"PUSH_TOKEN\"\n }\n}\n \n \n1.1 200 OK\nx-amzn-requestid: 368f9200-3eca-449e-93b3-7b9c08d8e185\ndate: Sat, 04 Oct 2014 19:46:44 GMT\ncontent-type: application/json\ncontent-length: 145\n\n{\n \"Output\":\n {\n \"__type\": \"com.amazonaws.cognito.sync.model#RegisterDeviceResponse\",\n \"DeviceId\": \"5cd28fbe-dd83-47ab-9f83-19093a5fb014\"\n },\n \"Version\": \"1.0\"\n}\n \n \n ",
"smithy.api#http": {
"method": "POST",
"uri": "/identitypools/{IdentityPoolId}/identity/{IdentityId}/device",
@@ -1742,7 +1709,7 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. Here, the ID of the pool that the identity belongs to.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by\n Amazon Cognito. Here, the ID of the pool that the identity belongs to.
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -1794,13 +1761,13 @@
"message": {
"target": "com.amazonaws.cognitosync#ExceptionMessage",
"traits": {
- "smithy.api#documentation": "The message returned by a ResourceConflictException.
",
+ "smithy.api#documentation": "The message returned by a\n ResourceConflictException.",
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "Thrown if an update can't be applied because the resource was changed by another call and this would result in a conflict.
",
+ "smithy.api#documentation": "Thrown if an update can't be applied because\n the resource was changed by another call and this would result in a conflict.",
"smithy.api#error": "client",
"smithy.api#httpError": 409
}
@@ -1811,13 +1778,13 @@
"message": {
"target": "com.amazonaws.cognitosync#ExceptionMessage",
"traits": {
- "smithy.api#documentation": "Message returned by a ResourceNotFoundException.
",
+ "smithy.api#documentation": "Message returned by a\n ResourceNotFoundException.",
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "Thrown if the resource doesn't exist.
",
+ "smithy.api#documentation": "Thrown if the resource doesn't\n exist.",
"smithy.api#error": "client",
"smithy.api#httpError": 404
}
@@ -1845,7 +1812,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Sets the AWS Lambda function for a given event type for an identity pool. This request only updates the key/value pair specified. Other key/values pairs are not updated. To remove a key value pair, pass a empty value for the particular key.
\n This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.
",
+ "smithy.api#documentation": "Sets the AWS Lambda function for a given event type for an identity pool. This request only updates the key/value pair specified. Other key/values pairs are not updated. To remove a key value pair, pass a empty value for the particular key.
This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.
",
"smithy.api#http": {
"method": "POST",
"uri": "/identitypools/{IdentityPoolId}/events",
@@ -1873,7 +1840,7 @@
}
},
"traits": {
- "smithy.api#documentation": "A request to configure Cognito Events.
"
+ "smithy.api#documentation": "A request to configure Cognito Events\"
\""
}
},
"com.amazonaws.cognitosync#SetIdentityPoolConfiguration": {
@@ -1905,7 +1872,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Sets the necessary configuration for push sync.
\n This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.
",
+ "smithy.api#documentation": "Sets the necessary configuration for push sync.
This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.
\n \n \n SetIdentityPoolConfiguration \n The following examples have been edited for readability. \n \nPOST / HTTP/1.1\nCONTENT-TYPE: application/json\nX-AMZN-REQUESTID: a46db021-f5dd-45d6-af5b-7069fa4a211b\nX-AMZ-TARGET: com.amazonaws.cognito.sync.model.AWSCognitoSyncService.SetIdentityPoolConfiguration\nHOST: cognito-sync.us-east-1.amazonaws.com\nX-AMZ-DATE: 20141004T200006Z\nAUTHORIZATION: AWS4-HMAC-SHA256 Credential=, SignedHeaders=content-type;content-length;host;x-amz-date;x-amz-target, Signature=\n\n{\n \"Operation\": \"com.amazonaws.cognito.sync.model#SetIdentityPoolConfiguration\",\n \"Service\": \"com.amazonaws.cognito.sync.model#AWSCognitoSyncService\",\n \"Input\":\n {\n \"IdentityPoolId\": \"ID_POOL_ID\",\n \"PushSync\":\n {\n \"ApplicationArns\": [\"PLATFORMARN1\", \"PLATFORMARN2\"],\n \"RoleArn\": \"ROLEARN\"\n }\n }\n}\n \n \n1.1 200 OK\nx-amzn-requestid: a46db021-f5dd-45d6-af5b-7069fa4a211b\ndate: Sat, 04 Oct 2014 20:00:06 GMT\ncontent-type: application/json\ncontent-length: 332\n\n{\n \"Output\":\n {\n \"__type\": \"com.amazonaws.cognito.sync.model#SetIdentityPoolConfigurationResponse\",\n \"IdentityPoolId\": \"ID_POOL_ID\",\n \"PushSync\":\n {\n \"ApplicationArns\": [\"PLATFORMARN1\", \"PLATFORMARN2\"],\n \"RoleArn\": \"ROLEARN\"\n }\n },\n \"Version\": \"1.0\"\n}\n \n \n ",
"smithy.api#http": {
"method": "POST",
"uri": "/identitypools/{IdentityPoolId}/configuration",
@@ -1919,7 +1886,7 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. This is the ID of the pool to modify.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by\n Amazon Cognito. This is the ID of the pool to modify.
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -1933,7 +1900,7 @@
"CognitoStreams": {
"target": "com.amazonaws.cognitosync#CognitoStreams",
"traits": {
- "smithy.api#documentation": "Options to apply to this identity pool for Amazon Cognito streams.
"
+ "smithy.api#documentation": "Options to apply to this identity pool for Amazon Cognito streams."
}
}
},
@@ -1947,7 +1914,7 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito.
"
+ "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by\n Amazon Cognito.
"
}
},
"PushSync": {
@@ -1959,7 +1926,7 @@
"CognitoStreams": {
"target": "com.amazonaws.cognitosync#CognitoStreams",
"traits": {
- "smithy.api#documentation": "Options to apply to this identity pool for Amazon Cognito streams.
"
+ "smithy.api#documentation": "Options to apply to this identity pool for Amazon Cognito streams."
}
}
},
@@ -2023,7 +1990,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Subscribes to receive notifications when a dataset is modified by another device.
\n This API can only be called with temporary credentials provided by Cognito Identity. You cannot call this API with developer credentials.
",
+ "smithy.api#documentation": "Subscribes to receive notifications when a dataset is modified by another device.
This API can only be called with temporary credentials provided by Cognito Identity. You cannot call this API with developer credentials.
\n \n \n SubscribeToDataset \n The following examples have been edited for readability. \n \nPOST / HTTP/1.1\nCONTENT-TYPE: application/json\nX-AMZN-REQUESTID: 8b9932b7-201d-4418-a960-0a470e11de9f\nX-AMZ-TARGET: com.amazonaws.cognito.sync.model.AWSCognitoSyncService.SubscribeToDataset\nHOST: cognito-sync.us-east-1.amazonaws.com\nX-AMZ-DATE: 20141004T195350Z\nX-AMZ-SECURITY-TOKEN: \nAUTHORIZATION: AWS4-HMAC-SHA256 Credential=, SignedHeaders=content-type;content-length;host;x-amz-date;x-amz-target, Signature=\n\n{\n \"Operation\": \"com.amazonaws.cognito.sync.model#SubscribeToDataset\",\n \"Service\": \"com.amazonaws.cognito.sync.model#AWSCognitoSyncService\",\n \"Input\":\n {\n \"IdentityPoolId\": \"ID_POOL_ID\",\n \"IdentityId\": \"IDENTITY_ID\",\n \"DatasetName\": \"Rufus\",\n \"DeviceId\": \"5cd28fbe-dd83-47ab-9f83-19093a5fb014\"\n }\n}\n \n \n1.1 200 OK\nx-amzn-requestid: 8b9932b7-201d-4418-a960-0a470e11de9f\ndate: Sat, 04 Oct 2014 19:53:50 GMT\ncontent-type: application/json\ncontent-length: 99\n\n{\n \"Output\":\n {\n \"__type\": \"com.amazonaws.cognito.sync.model#SubscribeToDatasetResponse\"\n },\n \"Version\": \"1.0\"\n}\n \n \n ",
"smithy.api#http": {
"method": "POST",
"uri": "/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}/subscriptions/{DeviceId}",
@@ -2037,7 +2004,7 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. The ID of the pool to which the identity belongs.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by\n Amazon Cognito. The ID of the pool to which the identity belongs.
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -2087,13 +2054,13 @@
"message": {
"target": "com.amazonaws.cognitosync#ExceptionMessage",
"traits": {
- "smithy.api#documentation": "Message returned by a TooManyRequestsException.
",
+ "smithy.api#documentation": "Message returned by a\n TooManyRequestsException.",
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "Thrown if the request is throttled.
",
+ "smithy.api#documentation": "Thrown if the request is\n throttled.",
"smithy.api#error": "client",
"smithy.api#httpError": 429
}
@@ -2127,7 +2094,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Unsubscribes from receiving notifications when a dataset is modified by another device.
\n This API can only be called with temporary credentials provided by Cognito Identity. You cannot call this API with developer credentials.
",
+ "smithy.api#documentation": "Unsubscribes from receiving notifications when a dataset is modified by another device.
This API can only be called with temporary credentials provided by Cognito Identity. You cannot call this API with developer credentials.
\n \n \n UnsubscribeFromDataset \n The following examples have been edited for readability. \n \nPOST / HTTP/1.1\nCONTENT-TYPE: application/json\nX-AMZ-REQUESTSUPERTRACE: true\nX-AMZN-REQUESTID: 676896d6-14ca-45b1-8029-6d36b10a077e\nX-AMZ-TARGET: com.amazonaws.cognito.sync.model.AWSCognitoSyncService.UnsubscribeFromDataset\nHOST: cognito-sync.us-east-1.amazonaws.com\nX-AMZ-DATE: 20141004T195446Z\nX-AMZ-SECURITY-TOKEN: \nAUTHORIZATION: AWS4-HMAC-SHA256 Credential=, SignedHeaders=content-type;content-length;host;x-amz-date;x-amz-target, Signature=\n\n{\n \"Operation\": \"com.amazonaws.cognito.sync.model#UnsubscribeFromDataset\",\n \"Service\": \"com.amazonaws.cognito.sync.model#AWSCognitoSyncService\",\n \"Input\":\n {\n \"IdentityPoolId\": \"ID_POOL_ID\",\n \"IdentityId\": \"IDENTITY_ID\",\n \"DatasetName\": \"Rufus\",\n \"DeviceId\": \"5cd28fbe-dd83-47ab-9f83-19093a5fb014\"\n }\n}\n \n \n1.1 200 OK\nx-amzn-requestid: 676896d6-14ca-45b1-8029-6d36b10a077e\ndate: Sat, 04 Oct 2014 19:54:46 GMT\ncontent-type: application/json\ncontent-length: 103\n\n{\n \"Output\":\n {\n \"__type\": \"com.amazonaws.cognito.sync.model#UnsubscribeFromDatasetResponse\"\n },\n \"Version\": \"1.0\"\n}\n \n \n ",
"smithy.api#http": {
"method": "DELETE",
"uri": "/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}/subscriptions/{DeviceId}",
@@ -2141,7 +2108,7 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. The ID of the pool to which this identity belongs.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by\n Amazon Cognito. The ID of the pool to which this identity belongs.
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -2200,9 +2167,6 @@
{
"target": "com.amazonaws.cognitosync#InvalidParameterException"
},
- {
- "target": "com.amazonaws.cognitosync#LambdaSocketTimeoutException"
- },
{
"target": "com.amazonaws.cognitosync#LambdaThrottledException"
},
@@ -2223,7 +2187,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Posts updates to records and adds and deletes records for a dataset and user.
\n The sync count in the record patch is your last known sync count for that record. The server will reject an UpdateRecords request with a ResourceConflictException if you try to patch a record with a new value but a stale sync count.
\n For example, if the sync count on the server is 5 for a key called highScore and you try and submit a new highScore with sync count of 4, the request will be rejected. To obtain the current sync count for a record, call ListRecords. On a successful update of the record, the response returns the new sync count for that record. You should present that sync count the next time you try to update that same record. When the record does not exist, specify the sync count as 0.
\n This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials.
",
+ "smithy.api#documentation": "Posts updates to records and adds and deletes records for a dataset and user.
\n The sync count in the record patch is your last known sync count for that record. The server will reject an UpdateRecords request with a ResourceConflictException if you try to patch a record with a new value but a stale sync count.
For example, if the sync count on the server is 5 for a key called highScore and you try and submit a new highScore with sync count of 4, the request will be rejected. To obtain the current sync count for a record, call ListRecords. On a successful update of the record, the response returns the new sync count for that record. You should present that sync count the next time you try to update that same record. When the record does not exist, specify the sync count as 0.
\n This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials.
",
"smithy.api#http": {
"method": "POST",
"uri": "/identitypools/{IdentityPoolId}/identities/{IdentityId}/datasets/{DatasetName}",
@@ -2237,7 +2201,7 @@
"IdentityPoolId": {
"target": "com.amazonaws.cognitosync#IdentityPoolId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region.",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -2245,7 +2209,7 @@
"IdentityId": {
"target": "com.amazonaws.cognitosync#IdentityId",
"traits": {
- "smithy.api#documentation": "A name-spaced GUID (for example, us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is unique within a region.
",
+ "smithy.api#documentation": "A name-spaced GUID (for example,\n us-east-1:23EC4050-6AEA-7089-A2DD-08002EXAMPLE) created by Amazon Cognito. GUID generation is\n unique within a region.",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -2253,7 +2217,7 @@
"DatasetName": {
"target": "com.amazonaws.cognitosync#DatasetName",
"traits": {
- "smithy.api#documentation": "A string of up to 128 characters. Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (dash), and '.' (dot).
",
+ "smithy.api#documentation": "A string of up to 128 characters.\n Allowed characters are a-z, A-Z, 0-9, '_' (underscore), '-' (dash), and '.'\n (dot).",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -2267,26 +2231,26 @@
"RecordPatches": {
"target": "com.amazonaws.cognitosync#RecordPatchList",
"traits": {
- "smithy.api#documentation": "A list of patch operations.
"
+ "smithy.api#documentation": "A list of patch\n operations."
}
},
"SyncSessionToken": {
"target": "com.amazonaws.cognitosync#SyncSessionToken",
"traits": {
- "smithy.api#documentation": "The SyncSessionToken returned by a previous call to ListRecords for this dataset and identity.
",
+ "smithy.api#documentation": "The SyncSessionToken returned by a\n previous call to ListRecords for this dataset and identity.",
"smithy.api#required": {}
}
},
"ClientContext": {
"target": "com.amazonaws.cognitosync#ClientContext",
"traits": {
- "smithy.api#documentation": "Intended to supply a device ID that will populate the lastModifiedBy field referenced in other methods. The ClientContext field is not yet implemented.
",
+ "smithy.api#documentation": "Intended to supply a device ID that\n will populate the lastModifiedBy field referenced in other methods. The\n ClientContext field is not yet implemented.",
"smithy.api#httpHeader": "x-amz-Client-Context"
}
}
},
"traits": {
- "smithy.api#documentation": "A request to post updates to records or add and delete records for a dataset and user.
"
+ "smithy.api#documentation": "A request to post updates to records or add and\n delete records for a dataset and user."
}
},
"com.amazonaws.cognitosync#UpdateRecordsResponse": {
@@ -2295,12 +2259,12 @@
"Records": {
"target": "com.amazonaws.cognitosync#RecordList",
"traits": {
- "smithy.api#documentation": "A list of records that have been updated.
"
+ "smithy.api#documentation": "A list of records that have been\n updated."
}
}
},
"traits": {
- "smithy.api#documentation": "Returned for a successful UpdateRecordsRequest.
"
+ "smithy.api#documentation": "Returned for a successful\n UpdateRecordsRequest."
}
}
}
diff --git a/codegen/sdk-codegen/aws-models/comprehend.2017-11-27.json b/codegen/sdk-codegen/aws-models/comprehend.2017-11-27.json
index 7a2dc60bbc9..ecb61a670a2 100644
--- a/codegen/sdk-codegen/aws-models/comprehend.2017-11-27.json
+++ b/codegen/sdk-codegen/aws-models/comprehend.2017-11-27.json
@@ -1153,6 +1153,12 @@
"traits": {
"smithy.api#documentation": "Indicates the mode in which the classifier will be trained. The classifier can be trained\n in multi-class mode, which identifies one and only one class for each document, or multi-label\n mode, which identifies one or more labels for each document. In multi-label mode, multiple\n labels for an individual document are separated by a delimiter. The default delimiter between\n labels is a pipe (|).
"
}
+ },
+ "ModelKmsKeyId": {
+ "target": "com.amazonaws.comprehend#KmsKeyId",
+ "traits": {
+ "smithy.api#documentation": "ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses to encrypt\n trained custom models. The ModelKmsKeyId can be either of the following formats:
\n "
+ }
}
}
},
@@ -1241,6 +1247,12 @@
"traits": {
"smithy.api#documentation": "Tags associated with the endpoint being created. A tag is a key-value pair that adds\n metadata to the endpoint. For example, a tag with \"Sales\" as the key might be added to an\n endpoint to indicate its use by the sales department.
"
}
+ },
+ "DataAccessRoleArn": {
+ "target": "com.amazonaws.comprehend#IamRoleArn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the AWS identity and Access Management (IAM) role that\n grants Amazon Comprehend read access to trained custom models encrypted with a customer\n managed key (ModelKmsKeyId).
"
+ }
}
}
},
@@ -1348,6 +1360,12 @@
"traits": {
"smithy.api#documentation": "Configuration parameters for an optional private Virtual Private Cloud (VPC) containing\n the resources you are using for your custom entity recognizer. For more information, see\n Amazon\n VPC .
"
}
+ },
+ "ModelKmsKeyId": {
+ "target": "com.amazonaws.comprehend#KmsKeyId",
+ "traits": {
+ "smithy.api#documentation": "ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses to encrypt\n trained custom models. The ModelKmsKeyId can be either of the following formats
\n "
+ }
}
}
},
@@ -2776,6 +2794,12 @@
"traits": {
"smithy.api#documentation": "Indicates the mode in which the specific classifier was trained. This also indicates the\n format of input documents and the format of the confusion matrix. Each classifier can only be\n trained in one mode and this cannot be changed once the classifier is trained.
"
}
+ },
+ "ModelKmsKeyId": {
+ "target": "com.amazonaws.comprehend#KmsKeyId",
+ "traits": {
+ "smithy.api#documentation": "ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses to encrypt\n trained custom models. The ModelKmsKeyId can be either of the following formats:
\n "
+ }
}
},
"traits": {
@@ -3028,6 +3052,12 @@
"traits": {
"smithy.api#documentation": "The date and time that the endpoint was last modified.
"
}
+ },
+ "DataAccessRoleArn": {
+ "target": "com.amazonaws.comprehend#IamRoleArn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the AWS identity and Access Management (IAM) role that\n grants Amazon Comprehend read access to trained custom models encrypted with a customer\n managed key (ModelKmsKeyId).
"
+ }
}
},
"traits": {
@@ -3577,6 +3607,12 @@
"traits": {
"smithy.api#documentation": " Configuration parameters for a private Virtual Private Cloud (VPC) containing the\n resources you are using for your custom entity recognizer. For more information, see Amazon\n VPC .
"
}
+ },
+ "ModelKmsKeyId": {
+ "target": "com.amazonaws.comprehend#KmsKeyId",
+ "traits": {
+ "smithy.api#documentation": "ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses to encrypt\n trained custom models. The ModelKmsKeyId can be either of the following formats:
\n "
+ }
}
},
"traits": {
diff --git a/codegen/sdk-codegen/aws-models/configservice.2014-11-12.json b/codegen/sdk-codegen/aws-models/configservice.2014-11-12.json
index 2f971c870c5..07d7cc5870a 100644
--- a/codegen/sdk-codegen/aws-models/configservice.2014-11-12.json
+++ b/codegen/sdk-codegen/aws-models/configservice.2014-11-12.json
@@ -126,6 +126,44 @@
"target": "com.amazonaws.configservice#AggregateComplianceByConfigRule"
}
},
+ "com.amazonaws.configservice#AggregateComplianceByConformancePack": {
+ "type": "structure",
+ "members": {
+ "ConformancePackName": {
+ "target": "com.amazonaws.configservice#ConformancePackName",
+ "traits": {
+ "smithy.api#documentation": "The name of the conformance pack.
"
+ }
+ },
+ "Compliance": {
+ "target": "com.amazonaws.configservice#AggregateConformancePackCompliance",
+ "traits": {
+ "smithy.api#documentation": "The compliance status of the conformance pack.
"
+ }
+ },
+ "AccountId": {
+ "target": "com.amazonaws.configservice#AccountId",
+ "traits": {
+ "smithy.api#documentation": "The 12-digit AWS account ID of the source account.
"
+ }
+ },
+ "AwsRegion": {
+ "target": "com.amazonaws.configservice#AwsRegion",
+ "traits": {
+ "smithy.api#documentation": "The source AWS Region from where the data is aggregated.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Provides aggregate compliance of the conformance pack. Indicates whether a conformance pack is compliant based on the name of the conformance pack, account ID, and region.
\n\t\t A conformance pack is compliant if all of the rules in that conformance packs are compliant. It is noncompliant if any of the rules are not compliant.
\n\t\t \n If a conformance pack has rules that return INSUFFICIENT_DATA, the conformance pack returns INSUFFICIENT_DATA only if all the rules within that conformance pack return INSUFFICIENT_DATA.\n\t\t\tIf some of the rules in a conformance pack are compliant and others return INSUFFICIENT_DATA, the conformance pack shows compliant.
\n "
+ }
+ },
+ "com.amazonaws.configservice#AggregateComplianceByConformancePackList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.configservice#AggregateComplianceByConformancePack"
+ }
+ },
"com.amazonaws.configservice#AggregateComplianceCount": {
"type": "structure",
"members": {
@@ -152,6 +190,151 @@
"target": "com.amazonaws.configservice#AggregateComplianceCount"
}
},
+ "com.amazonaws.configservice#AggregateConformancePackCompliance": {
+ "type": "structure",
+ "members": {
+ "ComplianceType": {
+ "target": "com.amazonaws.configservice#ConformancePackComplianceType",
+ "traits": {
+ "smithy.api#documentation": "The compliance status of the conformance pack.
"
+ }
+ },
+ "CompliantRuleCount": {
+ "target": "com.amazonaws.configservice#Integer",
+ "traits": {
+ "smithy.api#documentation": "The number of compliant AWS Config Rules.
"
+ }
+ },
+ "NonCompliantRuleCount": {
+ "target": "com.amazonaws.configservice#Integer",
+ "traits": {
+ "smithy.api#documentation": "The number of noncompliant AWS Config Rules.
"
+ }
+ },
+ "TotalRuleCount": {
+ "target": "com.amazonaws.configservice#Integer",
+ "traits": {
+ "smithy.api#documentation": "Total number of compliant rules, noncompliant rules, and the rules that do not have any applicable resources to evaluate upon resulting in insufficient data.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Provides the number of compliant and noncompliant rules within a conformance pack. \n\t\t\tAlso provides the total count of compliant rules, noncompliant rules, and the rules that do not have any applicable resources to evaluate upon resulting in insufficient data. \n\t\t\t
"
+ }
+ },
+ "com.amazonaws.configservice#AggregateConformancePackComplianceCount": {
+ "type": "structure",
+ "members": {
+ "CompliantConformancePackCount": {
+ "target": "com.amazonaws.configservice#Integer",
+ "traits": {
+ "smithy.api#documentation": "Number of compliant conformance packs.
"
+ }
+ },
+ "NonCompliantConformancePackCount": {
+ "target": "com.amazonaws.configservice#Integer",
+ "traits": {
+ "smithy.api#documentation": "Number of noncompliant conformance packs.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The number of conformance packs that are compliant and noncompliant.
"
+ }
+ },
+ "com.amazonaws.configservice#AggregateConformancePackComplianceFilters": {
+ "type": "structure",
+ "members": {
+ "ConformancePackName": {
+ "target": "com.amazonaws.configservice#ConformancePackName",
+ "traits": {
+ "smithy.api#documentation": "The name of the conformance pack.
"
+ }
+ },
+ "ComplianceType": {
+ "target": "com.amazonaws.configservice#ConformancePackComplianceType",
+ "traits": {
+ "smithy.api#documentation": "The compliance status of the conformance pack.
"
+ }
+ },
+ "AccountId": {
+ "target": "com.amazonaws.configservice#AccountId",
+ "traits": {
+ "smithy.api#documentation": "The 12-digit AWS account ID of the source account.
"
+ }
+ },
+ "AwsRegion": {
+ "target": "com.amazonaws.configservice#AwsRegion",
+ "traits": {
+ "smithy.api#documentation": "The source AWS Region from where the data is aggregated.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Filters the conformance packs based on an account ID, region, compliance type, and the name of the conformance pack.
"
+ }
+ },
+ "com.amazonaws.configservice#AggregateConformancePackComplianceSummary": {
+ "type": "structure",
+ "members": {
+ "ComplianceSummary": {
+ "target": "com.amazonaws.configservice#AggregateConformancePackComplianceCount",
+ "traits": {
+ "smithy.api#documentation": "Returns an AggregateConformancePackComplianceCount
object.
"
+ }
+ },
+ "GroupName": {
+ "target": "com.amazonaws.configservice#StringWithCharLimit256",
+ "traits": {
+ "smithy.api#documentation": "Groups the result based on AWS Account ID or AWS Region.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Provides a summary of compliance based on either account ID or region.
"
+ }
+ },
+ "com.amazonaws.configservice#AggregateConformancePackComplianceSummaryFilters": {
+ "type": "structure",
+ "members": {
+ "AccountId": {
+ "target": "com.amazonaws.configservice#AccountId",
+ "traits": {
+ "smithy.api#documentation": "The 12-digit AWS account ID of the source account.
"
+ }
+ },
+ "AwsRegion": {
+ "target": "com.amazonaws.configservice#AwsRegion",
+ "traits": {
+ "smithy.api#documentation": "The source AWS Region from where the data is aggregated.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Filters the results based on account ID and region.
"
+ }
+ },
+ "com.amazonaws.configservice#AggregateConformancePackComplianceSummaryGroupKey": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "ACCOUNT_ID",
+ "name": "ACCOUNT_ID"
+ },
+ {
+ "value": "AWS_REGION",
+ "name": "AWS_REGION"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.configservice#AggregateConformancePackComplianceSummaryList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.configservice#AggregateConformancePackComplianceSummary"
+ }
+ },
"com.amazonaws.configservice#AggregateEvaluationResult": {
"type": "structure",
"members": {
@@ -1618,7 +1801,7 @@
"ComplianceType": {
"target": "com.amazonaws.configservice#ConformancePackComplianceType",
"traits": {
- "smithy.api#documentation": "Filters the results by compliance.
\n\t\t The allowed values are COMPLIANT
and NON_COMPLIANT
.
"
+ "smithy.api#documentation": "Filters the results by compliance.
\n\t\t The allowed values are COMPLIANT
and NON_COMPLIANT
. INSUFFICIENT_DATA
is not supported.
"
}
}
},
@@ -1651,7 +1834,7 @@
"ConformancePackComplianceStatus": {
"target": "com.amazonaws.configservice#ConformancePackComplianceType",
"traits": {
- "smithy.api#documentation": "The status of the conformance pack. The allowed values are COMPLIANT and NON_COMPLIANT.
",
+ "smithy.api#documentation": "The status of the conformance pack. The allowed values are COMPLIANT
, NON_COMPLIANT
and INSUFFICIENT_DATA
.
",
"smithy.api#required": {}
}
}
@@ -1786,7 +1969,7 @@
"ComplianceType": {
"target": "com.amazonaws.configservice#ConformancePackComplianceType",
"traits": {
- "smithy.api#documentation": "Filters the results by compliance.
\n\t\t The allowed values are COMPLIANT
and NON_COMPLIANT
.
"
+ "smithy.api#documentation": "Filters the results by compliance.
\n\t\t The allowed values are COMPLIANT
and NON_COMPLIANT
. INSUFFICIENT_DATA
is not supported.
"
}
},
"ResourceType": {
@@ -1812,7 +1995,7 @@
"ComplianceType": {
"target": "com.amazonaws.configservice#ConformancePackComplianceType",
"traits": {
- "smithy.api#documentation": "The compliance type. The allowed values are COMPLIANT
and NON_COMPLIANT
.
",
+ "smithy.api#documentation": "The compliance type. The allowed values are COMPLIANT
and NON_COMPLIANT
. INSUFFICIENT_DATA
is not supported.
",
"smithy.api#required": {}
}
},
@@ -1936,7 +2119,13 @@
"ComplianceType": {
"target": "com.amazonaws.configservice#ConformancePackComplianceType",
"traits": {
- "smithy.api#documentation": "Compliance of the AWS Config rule
\n\t\t The allowed values are COMPLIANT
and NON_COMPLIANT
.
"
+ "smithy.api#documentation": "Compliance of the AWS Config rule.
\n\t\t The allowed values are COMPLIANT
, NON_COMPLIANT
, and INSUFFICIENT_DATA
.
"
+ }
+ },
+ "Controls": {
+ "target": "com.amazonaws.configservice#ControlsList",
+ "traits": {
+ "smithy.api#documentation": "Controls for the conformance pack. A control is a process to prevent or detect problems while meeting objectives.\n\t\t\tA control can align with a specific compliance regime or map to internal controls defined by an organization.
"
}
}
},
@@ -2093,6 +2282,18 @@
"smithy.api#error": "client"
}
},
+ "com.amazonaws.configservice#ControlsList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.configservice#StringWithCharLimit128"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 20
+ }
+ }
+ },
"com.amazonaws.configservice#CosmosPageLimit": {
"type": "integer",
"traits": {
@@ -2874,6 +3075,79 @@
}
}
},
+ "com.amazonaws.configservice#DescribeAggregateComplianceByConformancePacks": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.configservice#DescribeAggregateComplianceByConformancePacksRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.configservice#DescribeAggregateComplianceByConformancePacksResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.configservice#InvalidLimitException"
+ },
+ {
+ "target": "com.amazonaws.configservice#InvalidNextTokenException"
+ },
+ {
+ "target": "com.amazonaws.configservice#NoSuchConfigurationAggregatorException"
+ },
+ {
+ "target": "com.amazonaws.configservice#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Returns a list of the conformance packs and their associated compliance status with the count of compliant and noncompliant AWS Config rules within each conformance pack.
\n\t\t \n The results can return an empty result page, but if you have a nextToken
, the results are displayed on the next page.
\n "
+ }
+ },
+ "com.amazonaws.configservice#DescribeAggregateComplianceByConformancePacksRequest": {
+ "type": "structure",
+ "members": {
+ "ConfigurationAggregatorName": {
+ "target": "com.amazonaws.configservice#ConfigurationAggregatorName",
+ "traits": {
+ "smithy.api#documentation": "The name of the configuration aggregator.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Filters": {
+ "target": "com.amazonaws.configservice#AggregateConformancePackComplianceFilters",
+ "traits": {
+ "smithy.api#documentation": "Filters the result by AggregateConformancePackComplianceFilters
object.
"
+ }
+ },
+ "Limit": {
+ "target": "com.amazonaws.configservice#Limit",
+ "traits": {
+ "smithy.api#documentation": "The maximum number of conformance packs details returned on each page. The default is maximum. If you specify 0, AWS Config uses the default.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.configservice#NextToken",
+ "traits": {
+ "smithy.api#documentation": "The nextToken
string returned on a previous page that you use to get the next page of results in a paginated response.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.configservice#DescribeAggregateComplianceByConformancePacksResponse": {
+ "type": "structure",
+ "members": {
+ "AggregateComplianceByConformancePacks": {
+ "target": "com.amazonaws.configservice#AggregateComplianceByConformancePackList",
+ "traits": {
+ "smithy.api#documentation": "Returns the AggregateComplianceByConformancePack
object.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.configservice#NextToken",
+ "traits": {
+ "smithy.api#documentation": "The nextToken
string returned on a previous page that you use to get the next page of results in a paginated response.
"
+ }
+ }
+ }
+ },
"com.amazonaws.configservice#DescribeAggregationAuthorizations": {
"type": "operation",
"input": {
@@ -4854,6 +5128,91 @@
}
}
},
+ "com.amazonaws.configservice#GetAggregateConformancePackComplianceSummary": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.configservice#GetAggregateConformancePackComplianceSummaryRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.configservice#GetAggregateConformancePackComplianceSummaryResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.configservice#InvalidLimitException"
+ },
+ {
+ "target": "com.amazonaws.configservice#InvalidNextTokenException"
+ },
+ {
+ "target": "com.amazonaws.configservice#NoSuchConfigurationAggregatorException"
+ },
+ {
+ "target": "com.amazonaws.configservice#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Returns the count of compliant and noncompliant conformance packs across all AWS Accounts and AWS Regions. You can filter based on AWS Account ID or AWS Region.
\n\t\t \n The results can return an empty result page, but if you have a nextToken, the results are displayed on the next page.
\n "
+ }
+ },
+ "com.amazonaws.configservice#GetAggregateConformancePackComplianceSummaryRequest": {
+ "type": "structure",
+ "members": {
+ "ConfigurationAggregatorName": {
+ "target": "com.amazonaws.configservice#ConfigurationAggregatorName",
+ "traits": {
+ "smithy.api#documentation": "The name of the configuration aggregator.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Filters": {
+ "target": "com.amazonaws.configservice#AggregateConformancePackComplianceSummaryFilters",
+ "traits": {
+ "smithy.api#documentation": "Filters the results based on the AggregateConformancePackComplianceSummaryFilters
object.
"
+ }
+ },
+ "GroupByKey": {
+ "target": "com.amazonaws.configservice#AggregateConformancePackComplianceSummaryGroupKey",
+ "traits": {
+ "smithy.api#documentation": "Groups the result based on AWS Account ID or AWS Region.
"
+ }
+ },
+ "Limit": {
+ "target": "com.amazonaws.configservice#Limit",
+ "traits": {
+ "smithy.api#documentation": "The maximum number of results returned on each page. The default is maximum. If you specify 0, AWS Config uses the default.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.configservice#NextToken",
+ "traits": {
+ "smithy.api#documentation": "The nextToken
string returned on a previous page that you use to get the next page of results in a paginated response.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.configservice#GetAggregateConformancePackComplianceSummaryResponse": {
+ "type": "structure",
+ "members": {
+ "AggregateConformancePackComplianceSummaries": {
+ "target": "com.amazonaws.configservice#AggregateConformancePackComplianceSummaryList",
+ "traits": {
+ "smithy.api#documentation": "Returns a list of AggregateConformancePackComplianceSummary
object.
"
+ }
+ },
+ "GroupByKey": {
+ "target": "com.amazonaws.configservice#StringWithCharLimit256",
+ "traits": {
+ "smithy.api#documentation": "Groups the result based on AWS Account ID or AWS Region.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.configservice#NextToken",
+ "traits": {
+ "smithy.api#documentation": "The nextToken
string returned on a previous page that you use to get the next page of results in a paginated response.
"
+ }
+ }
+ }
+ },
"com.amazonaws.configservice#GetAggregateDiscoveredResourceCounts": {
"type": "operation",
"input": {
@@ -8188,7 +8547,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deploys conformance packs across member accounts in an AWS Organization.
\n\t\t Only a master account and a delegated administrator can call this API. \n\t\t\tWhen calling this API with a delegated administrator, you must ensure AWS Organizations \n\t\t\tListDelegatedAdministrator
permissions are added.
\n\t\t This API enables organization service access for config-multiaccountsetup.amazonaws.com
\n\t\t\tthrough the EnableAWSServiceAccess
action and creates a \n\t\t\tservice linked role AWSServiceRoleForConfigMultiAccountSetup
in the master or delegated administrator account of your organization. \n\t\t\tThe service linked role is created only when the role does not exist in the caller account. \n\t\t\tTo use this API with delegated administrator, register a delegated administrator by calling AWS Organization \n\t\t\tregister-delegate-admin
for config-multiaccountsetup.amazonaws.com
.
\n\n\t\t\t\n\t\t\t \n\t\t \n\t\t\t Prerequisite: Ensure you call EnableAllFeatures
API to enable all features in an organization.
\n\t\t\t You must specify either the TemplateS3Uri
or the TemplateBody
parameter, but not both. \n\t\t\tIf you provide both AWS Config uses the TemplateS3Uri
parameter and ignores the TemplateBody
parameter.
\n\t\t\t AWS Config sets the state of a conformance pack to CREATE_IN_PROGRESS and UPDATE_IN_PROGRESS until the conformance pack is created or updated. \n\t\t\t\tYou cannot update a conformance pack while it is in this state.
\n\t\t\t You can create 6 conformance packs with 25 AWS Config rules in each pack and 3 delegated administrator per organization.
\n "
+ "smithy.api#documentation": "Deploys conformance packs across member accounts in an AWS Organization.
\n\t\t Only a master account and a delegated administrator can call this API. \n\t\t\tWhen calling this API with a delegated administrator, you must ensure AWS Organizations \n\t\t\tListDelegatedAdministrator
permissions are added.
\n\t\t This API enables organization service access for config-multiaccountsetup.amazonaws.com
\n\t\t\tthrough the EnableAWSServiceAccess
action and creates a \n\t\t\tservice linked role AWSServiceRoleForConfigMultiAccountSetup
in the master or delegated administrator account of your organization. \n\t\t\tThe service linked role is created only when the role does not exist in the caller account. \n\t\t\tTo use this API with delegated administrator, register a delegated administrator by calling AWS Organization \n\t\t\tregister-delegate-admin
for config-multiaccountsetup.amazonaws.com
.
\n\n\t\t\t\n\t\t\t \n\t\t \n\t\t\t Prerequisite: Ensure you call EnableAllFeatures
API to enable all features in an organization.
\n\t\t\t You must specify either the TemplateS3Uri
or the TemplateBody
parameter, but not both. \n\t\t\tIf you provide both AWS Config uses the TemplateS3Uri
parameter and ignores the TemplateBody
parameter.
\n\t\t\t AWS Config sets the state of a conformance pack to CREATE_IN_PROGRESS and UPDATE_IN_PROGRESS until the conformance pack is created or updated. \n\t\t\t\tYou cannot update a conformance pack while it is in this state.
\n\t\t\t You can create 50 conformance packs with 25 AWS Config rules in each pack and 3 delegated administrator per organization.
\n "
}
},
"com.amazonaws.configservice#PutOrganizationConformancePackRequest": {
@@ -8216,7 +8575,7 @@
"DeliveryS3Bucket": {
"target": "com.amazonaws.configservice#DeliveryS3Bucket",
"traits": {
- "smithy.api#documentation": "Amazon S3 bucket where AWS Config stores conformance pack templates.
\n\t\t \n This field is optional.
\n "
+ "smithy.api#documentation": "Amazon S3 bucket where AWS Config stores conformance pack templates.
\n\t\t \n This field is optional. If used, it must be prefixed with awsconfigconforms
.
\n "
}
},
"DeliveryS3KeyPrefix": {
@@ -8628,7 +8987,7 @@
"resourceTypes": {
"target": "com.amazonaws.configservice#ResourceTypeList",
"traits": {
- "smithy.api#documentation": "A comma-separated list that specifies the types of AWS\n\t\t\tresources for which AWS Config records configuration changes (for\n\t\t\texample, AWS::EC2::Instance
or\n\t\t\t\tAWS::CloudTrail::Trail
).
\n\t\t To record all configuration changes, you must\n\t\t\tset the allSupported
option to\n\t\t\tfalse
.
\n\t\t If you set this option to true
, when AWS Config\n\t\t\tadds support for a new type of resource, it will not record\n\t\t\tresources of that type unless you manually add that type to your\n\t\t\trecording group.
\n\t\t For a list of valid resourceTypes
values, see the\n\t\t\t\tresourceType Value column in\n\t\t\t\tSupported AWS Resource Types .
"
+ "smithy.api#documentation": "A comma-separated list that specifies the types of AWS\n\t\t\tresources for which AWS Config records configuration changes (for\n\t\t\texample, AWS::EC2::Instance
or\n\t\t\t\tAWS::CloudTrail::Trail
).
\n\t\t To record all configuration changes, you must\n\t\t\tset the allSupported
option to\n\t\t\ttrue
.
\n\t\t If you set this option to false
, when AWS Config\n\t\t\tadds support for a new type of resource, it will not record\n\t\t\tresources of that type unless you manually add that type to your\n\t\t\trecording group.
\n\t\t For a list of valid resourceTypes
values, see the\n\t\t\t\tresourceType Value column in\n\t\t\t\tSupported AWS Resource Types .
"
}
}
},
@@ -9662,6 +10021,10 @@
"value": "AWS::ShieldRegional::Protection",
"name": "RegionalProtection"
},
+ {
+ "value": "AWS::Config::ConformancePackCompliance",
+ "name": "ConformancePackCompliance"
+ },
{
"value": "AWS::Config::ResourceCompliance",
"name": "ResourceCompliance"
@@ -10220,6 +10583,9 @@
{
"target": "com.amazonaws.configservice#DescribeAggregateComplianceByConfigRules"
},
+ {
+ "target": "com.amazonaws.configservice#DescribeAggregateComplianceByConformancePacks"
+ },
{
"target": "com.amazonaws.configservice#DescribeAggregationAuthorizations"
},
@@ -10295,6 +10661,9 @@
{
"target": "com.amazonaws.configservice#GetAggregateConfigRuleComplianceSummary"
},
+ {
+ "target": "com.amazonaws.configservice#GetAggregateConformancePackComplianceSummary"
+ },
{
"target": "com.amazonaws.configservice#GetAggregateDiscoveredResourceCounts"
},
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 95ae3a9e88b..6d6e1e42738 100644
--- a/codegen/sdk-codegen/aws-models/costexplorer.2017-10-25.json
+++ b/codegen/sdk-codegen/aws-models/costexplorer.2017-10-25.json
@@ -545,12 +545,50 @@
"traits": {
"smithy.api#documentation": "\n The list of processing statuses for Cost Management products for a specific cost category.\n
"
}
+ },
+ "DefaultValue": {
+ "target": "com.amazonaws.costexplorer#CostCategoryValue"
}
},
"traits": {
"smithy.api#documentation": "The structure of Cost Categories. This includes detailed metadata and the set of rules for the CostCategory
object.
"
}
},
+ "com.amazonaws.costexplorer#CostCategoryInheritedValueDimension": {
+ "type": "structure",
+ "members": {
+ "DimensionName": {
+ "target": "com.amazonaws.costexplorer#CostCategoryInheritedValueDimensionName",
+ "traits": {
+ "smithy.api#documentation": "The name of dimension for which to group costs.
\n\t If you specify LINKED_ACCOUNT_NAME
, the cost category value will be based on account name. If you specify TAG
, the cost category value will be based on the value of the specified tag key.
"
+ }
+ },
+ "DimensionKey": {
+ "target": "com.amazonaws.costexplorer#GenericString",
+ "traits": {
+ "smithy.api#documentation": "The key to extract cost category values.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "When creating or updating a cost category, you can define the CostCategoryRule
rule type as INHERITED_VALUE
. This rule type adds the flexibility of defining a rule that dynamically inherits the cost category value from the dimension value defined by CostCategoryInheritedValueDimension
. For example, if you wanted to dynamically group costs based on the value of a specific tag key, you would first choose an inherited value rule type, then choose the tag dimension and specify the tag key to use.
"
+ }
+ },
+ "com.amazonaws.costexplorer#CostCategoryInheritedValueDimensionName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "LINKED_ACCOUNT_NAME",
+ "name": "LINKED_ACCOUNT_NAME"
+ },
+ {
+ "value": "TAG",
+ "name": "TAG"
+ }
+ ]
+ }
+ },
"com.amazonaws.costexplorer#CostCategoryMaxResults": {
"type": "integer",
"traits": {
@@ -566,7 +604,7 @@
"smithy.api#documentation": "The unique name of the Cost Category.
",
"smithy.api#length": {
"min": 1,
- "max": 255
+ "max": 50
},
"smithy.api#pattern": "^(?! )[\\p{L}\\p{N}\\p{Z}-_]*(?\n A list of unique cost category values in a specific cost category.\n "
}
+ },
+ "DefaultValue": {
+ "target": "com.amazonaws.costexplorer#CostCategoryValue"
}
},
"traits": {
@@ -660,16 +701,24 @@
"type": "structure",
"members": {
"Value": {
- "target": "com.amazonaws.costexplorer#CostCategoryValue",
- "traits": {
- "smithy.api#required": {}
- }
+ "target": "com.amazonaws.costexplorer#CostCategoryValue"
},
"Rule": {
"target": "com.amazonaws.costexplorer#Expression",
"traits": {
- "smithy.api#documentation": "An Expression \n object used to categorize costs. This supports dimensions, tags, and nested expressions.\n Currently the only dimensions supported are LINKED_ACCOUNT
,\n SERVICE_CODE
, RECORD_TYPE
, and\n LINKED_ACCOUNT_NAME
.
\n Root level OR
is not supported. We recommend that you create a separate\n rule instead.
\n \n \n RECORD_TYPE
is a dimension used for Cost Explorer APIs, and is also\n supported for Cost Category expressions. This dimension uses different terms, depending\n on whether you're using the console or API/JSON editor. For a detailed comparison, see\n Term Comparisons in the AWS Billing and Cost Management User\n Guide .
",
- "smithy.api#required": {}
+ "smithy.api#documentation": "An Expression \n object used to categorize costs. This supports dimensions, tags, and nested expressions.\n Currently the only dimensions supported are LINKED_ACCOUNT
,\n SERVICE_CODE
, RECORD_TYPE
, and\n LINKED_ACCOUNT_NAME
.
\n Root level OR
is not supported. We recommend that you create a separate\n rule instead.
\n \n \n RECORD_TYPE
is a dimension used for Cost Explorer APIs, and is also\n supported for Cost Category expressions. This dimension uses different terms, depending\n on whether you're using the console or API/JSON editor. For a detailed comparison, see\n Term Comparisons in the AWS Billing and Cost Management User\n Guide .
"
+ }
+ },
+ "InheritedValue": {
+ "target": "com.amazonaws.costexplorer#CostCategoryInheritedValueDimension",
+ "traits": {
+ "smithy.api#documentation": "The value the line item will be categorized as, if the line item contains the matched dimension.
"
+ }
+ },
+ "Type": {
+ "target": "com.amazonaws.costexplorer#CostCategoryRuleType",
+ "traits": {
+ "smithy.api#documentation": "You can define the CostCategoryRule
rule type as either REGULAR
or INHERITED_VALUE
. The INHERITED_VALUE
rule type adds the flexibility of defining a rule that dynamically inherits the cost category value from the dimension value defined by CostCategoryInheritedValueDimension
. For example, if you wanted to dynamically group costs based on the value of a specific tag key, you would first choose an inherited value rule type, then choose the tag dimension and specify the tag key to use.
"
}
}
},
@@ -677,6 +726,21 @@
"smithy.api#documentation": "Rules are processed in order. If there are multiple rules that match the line item, then the first rule to match is used to determine that Cost Category value.
"
}
},
+ "com.amazonaws.costexplorer#CostCategoryRuleType": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "REGULAR",
+ "name": "REGULAR"
+ },
+ {
+ "value": "INHERITED_VALUE",
+ "name": "INHERITED_VALUE"
+ }
+ ]
+ }
+ },
"com.amazonaws.costexplorer#CostCategoryRuleVersion": {
"type": "string",
"traits": {
@@ -730,10 +794,10 @@
"com.amazonaws.costexplorer#CostCategoryValue": {
"type": "string",
"traits": {
- "smithy.api#documentation": "The value a line item will be categorized as, if it matches the rule.
",
+ "smithy.api#documentation": "The default value for the cost category.
",
"smithy.api#length": {
"min": 1,
- "max": 255
+ "max": 50
},
"smithy.api#pattern": "^(?! )[\\p{L}\\p{N}\\p{Z}-_]*(?The Cost Category rules used to categorize costs. For more information, see\n CostCategoryRule .",
"smithy.api#required": {}
}
+ },
+ "DefaultValue": {
+ "target": "com.amazonaws.costexplorer#CostCategoryValue"
}
}
},
@@ -6163,6 +6230,9 @@
"smithy.api#documentation": "The Expression
object used to categorize costs. For more information, see\n CostCategoryRule .
",
"smithy.api#required": {}
}
+ },
+ "DefaultValue": {
+ "target": "com.amazonaws.costexplorer#CostCategoryValue"
}
}
},
diff --git a/codegen/sdk-codegen/aws-models/customerprofiles.2020-08-15.json b/codegen/sdk-codegen/aws-models/customerprofiles.2020-08-15.json
index 88c6cd7e6a4..daedb12e487 100644
--- a/codegen/sdk-codegen/aws-models/customerprofiles.2020-08-15.json
+++ b/codegen/sdk-codegen/aws-models/customerprofiles.2020-08-15.json
@@ -217,6 +217,56 @@
"smithy.api#httpError": 400
}
},
+ "com.amazonaws.customerprofiles#BucketName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 3,
+ "max": 63
+ },
+ "smithy.api#pattern": "\\S+"
+ }
+ },
+ "com.amazonaws.customerprofiles#BucketPrefix": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 512
+ },
+ "smithy.api#pattern": ".*"
+ }
+ },
+ "com.amazonaws.customerprofiles#ConnectorOperator": {
+ "type": "structure",
+ "members": {
+ "Marketo": {
+ "target": "com.amazonaws.customerprofiles#MarketoConnectorOperator"
+ },
+ "S3": {
+ "target": "com.amazonaws.customerprofiles#S3ConnectorOperator"
+ },
+ "Salesforce": {
+ "target": "com.amazonaws.customerprofiles#SalesforceConnectorOperator"
+ },
+ "ServiceNow": {
+ "target": "com.amazonaws.customerprofiles#ServiceNowConnectorOperator"
+ },
+ "Zendesk": {
+ "target": "com.amazonaws.customerprofiles#ZendeskConnectorOperator"
+ }
+ }
+ },
+ "com.amazonaws.customerprofiles#ConnectorProfileName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ },
+ "smithy.api#pattern": "[\\w/!@#+=.-]+"
+ }
+ },
"com.amazonaws.customerprofiles#CreateDomain": {
"type": "operation",
"input": {
@@ -630,6 +680,34 @@
"smithy.api#title": "Amazon Connect Customer Profiles"
}
},
+ "com.amazonaws.customerprofiles#DataPullMode": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "Incremental",
+ "name": "INCREMENTAL"
+ },
+ {
+ "value": "Complete",
+ "name": "COMPLETE"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.customerprofiles#Date": {
+ "type": "timestamp"
+ },
+ "com.amazonaws.customerprofiles#DatetimeTypeFieldName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ },
+ "smithy.api#pattern": ".*"
+ }
+ },
"com.amazonaws.customerprofiles#DeleteDomain": {
"type": "operation",
"input": {
@@ -1045,6 +1123,16 @@
}
}
},
+ "com.amazonaws.customerprofiles#DestinationField": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ },
+ "smithy.api#pattern": ".*"
+ }
+ },
"com.amazonaws.customerprofiles#DomainList": {
"type": "list",
"member": {
@@ -1125,6 +1213,64 @@
"target": "com.amazonaws.customerprofiles#name"
}
},
+ "com.amazonaws.customerprofiles#FlowDefinition": {
+ "type": "structure",
+ "members": {
+ "Description": {
+ "target": "com.amazonaws.customerprofiles#FlowDescription"
+ },
+ "FlowName": {
+ "target": "com.amazonaws.customerprofiles#FlowName",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ },
+ "KmsArn": {
+ "target": "com.amazonaws.customerprofiles#KmsArn",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ },
+ "SourceFlowConfig": {
+ "target": "com.amazonaws.customerprofiles#SourceFlowConfig",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ },
+ "Tasks": {
+ "target": "com.amazonaws.customerprofiles#Tasks",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ },
+ "TriggerConfig": {
+ "target": "com.amazonaws.customerprofiles#TriggerConfig",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.customerprofiles#FlowDescription": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 2048
+ },
+ "smithy.api#pattern": "[\\w!@#\\-.?,\\s]*"
+ }
+ },
+ "com.amazonaws.customerprofiles#FlowName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ },
+ "smithy.api#pattern": "[a-zA-Z0-9][\\w!@#.-]+"
+ }
+ },
"com.amazonaws.customerprofiles#Gender": {
"type": "string",
"traits": {
@@ -1563,6 +1709,14 @@
}
}
},
+ "com.amazonaws.customerprofiles#IncrementalPullConfig": {
+ "type": "structure",
+ "members": {
+ "DatetimeTypeFieldName": {
+ "target": "com.amazonaws.customerprofiles#DatetimeTypeFieldName"
+ }
+ }
+ },
"com.amazonaws.customerprofiles#IntegrationList": {
"type": "list",
"member": {
@@ -1591,6 +1745,16 @@
"target": "com.amazonaws.customerprofiles#ObjectTypeKeyList"
}
},
+ "com.amazonaws.customerprofiles#KmsArn": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 20,
+ "max": 2048
+ },
+ "smithy.api#pattern": "arn:aws:kms:.*:[0-9]+:.*"
+ }
+ },
"com.amazonaws.customerprofiles#ListAccountIntegrations": {
"type": "operation",
"input": {
@@ -2284,6 +2448,98 @@
}
}
},
+ "com.amazonaws.customerprofiles#MarketoConnectorOperator": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "PROJECTION",
+ "name": "PROJECTION"
+ },
+ {
+ "value": "LESS_THAN",
+ "name": "LESS_THAN"
+ },
+ {
+ "value": "GREATER_THAN",
+ "name": "GREATER_THAN"
+ },
+ {
+ "value": "BETWEEN",
+ "name": "BETWEEN"
+ },
+ {
+ "value": "ADDITION",
+ "name": "ADDITION"
+ },
+ {
+ "value": "MULTIPLICATION",
+ "name": "MULTIPLICATION"
+ },
+ {
+ "value": "DIVISION",
+ "name": "DIVISION"
+ },
+ {
+ "value": "SUBTRACTION",
+ "name": "SUBTRACTION"
+ },
+ {
+ "value": "MASK_ALL",
+ "name": "MASK_ALL"
+ },
+ {
+ "value": "MASK_FIRST_N",
+ "name": "MASK_FIRST_N"
+ },
+ {
+ "value": "MASK_LAST_N",
+ "name": "MASK_LAST_N"
+ },
+ {
+ "value": "VALIDATE_NON_NULL",
+ "name": "VALIDATE_NON_NULL"
+ },
+ {
+ "value": "VALIDATE_NON_ZERO",
+ "name": "VALIDATE_NON_ZERO"
+ },
+ {
+ "value": "VALIDATE_NON_NEGATIVE",
+ "name": "VALIDATE_NON_NEGATIVE"
+ },
+ {
+ "value": "VALIDATE_NUMERIC",
+ "name": "VALIDATE_NUMERIC"
+ },
+ {
+ "value": "NO_OP",
+ "name": "NO_OP"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.customerprofiles#MarketoSourceProperties": {
+ "type": "structure",
+ "members": {
+ "Object": {
+ "target": "com.amazonaws.customerprofiles#Object",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.customerprofiles#Object": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 512
+ },
+ "smithy.api#pattern": "\\S+"
+ }
+ },
"com.amazonaws.customerprofiles#ObjectTypeField": {
"type": "structure",
"members": {
@@ -2336,6 +2592,69 @@
"target": "com.amazonaws.customerprofiles#ObjectTypeKey"
}
},
+ "com.amazonaws.customerprofiles#OperatorPropertiesKeys": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "VALUE",
+ "name": "VALUE"
+ },
+ {
+ "value": "VALUES",
+ "name": "VALUES"
+ },
+ {
+ "value": "DATA_TYPE",
+ "name": "DATA_TYPE"
+ },
+ {
+ "value": "UPPER_BOUND",
+ "name": "UPPER_BOUND"
+ },
+ {
+ "value": "LOWER_BOUND",
+ "name": "LOWER_BOUND"
+ },
+ {
+ "value": "SOURCE_DATA_TYPE",
+ "name": "SOURCE_DATA_TYPE"
+ },
+ {
+ "value": "DESTINATION_DATA_TYPE",
+ "name": "DESTINATION_DATA_TYPE"
+ },
+ {
+ "value": "VALIDATION_ACTION",
+ "name": "VALIDATION_ACTION"
+ },
+ {
+ "value": "MASK_VALUE",
+ "name": "MASK_VALUE"
+ },
+ {
+ "value": "MASK_LENGTH",
+ "name": "MASK_LENGTH"
+ },
+ {
+ "value": "TRUNCATE_LENGTH",
+ "name": "TRUNCATE_LENGTH"
+ },
+ {
+ "value": "MATH_OPERATION_FIELDS_ORDER",
+ "name": "MATH_OPERATION_FIELDS_ORDER"
+ },
+ {
+ "value": "CONCAT_FORMAT",
+ "name": "CONCAT_FORMAT"
+ },
+ {
+ "value": "SUBFIELD_CATEGORY_MAP",
+ "name": "SUBFIELD_CATEGORY_MAP"
+ }
+ ]
+ }
+ },
"com.amazonaws.customerprofiles#PartyType": {
"type": "string",
"traits": {
@@ -2519,6 +2838,16 @@
"target": "com.amazonaws.customerprofiles#ListProfileObjectTypeTemplateItem"
}
},
+ "com.amazonaws.customerprofiles#Property": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 2048
+ },
+ "smithy.api#pattern": ".+"
+ }
+ },
"com.amazonaws.customerprofiles#PutIntegration": {
"type": "operation",
"input": {
@@ -2567,8 +2896,7 @@
"Uri": {
"target": "com.amazonaws.customerprofiles#string1To255",
"traits": {
- "smithy.api#documentation": "The URI of the S3 bucket or any other type of data source.
",
- "smithy.api#required": {}
+ "smithy.api#documentation": "The URI of the S3 bucket or any other type of data source.
"
}
},
"ObjectTypeName": {
@@ -2583,6 +2911,9 @@
"traits": {
"smithy.api#documentation": "The tags used to organize, track, or control access for this resource.
"
}
+ },
+ "FlowDefinition": {
+ "target": "com.amazonaws.customerprofiles#FlowDefinition"
}
}
},
@@ -2894,54 +3225,314 @@
"smithy.api#httpError": 404
}
},
- "com.amazonaws.customerprofiles#SearchProfiles": {
- "type": "operation",
- "input": {
- "target": "com.amazonaws.customerprofiles#SearchProfilesRequest"
- },
- "output": {
- "target": "com.amazonaws.customerprofiles#SearchProfilesResponse"
- },
- "errors": [
- {
- "target": "com.amazonaws.customerprofiles#AccessDeniedException"
- },
- {
- "target": "com.amazonaws.customerprofiles#BadRequestException"
- },
- {
- "target": "com.amazonaws.customerprofiles#InternalServerException"
- },
- {
- "target": "com.amazonaws.customerprofiles#ResourceNotFoundException"
- },
- {
- "target": "com.amazonaws.customerprofiles#ThrottlingException"
- }
- ],
+ "com.amazonaws.customerprofiles#S3ConnectorOperator": {
+ "type": "string",
"traits": {
- "smithy.api#documentation": "Searches for profiles within a specific domain name using name, phone number, email\n address, account number, or a custom defined index.
",
- "smithy.api#http": {
- "method": "POST",
- "uri": "/domains/{DomainName}/profiles/search",
- "code": 200
- }
- }
- },
- "com.amazonaws.customerprofiles#SearchProfilesRequest": {
- "type": "structure",
- "members": {
- "NextToken": {
- "target": "com.amazonaws.customerprofiles#token",
- "traits": {
- "smithy.api#documentation": "The pagination token from the previous SearchProfiles API call.
",
- "smithy.api#httpQuery": "next-token"
- }
- },
- "MaxResults": {
- "target": "com.amazonaws.customerprofiles#maxSize100",
- "traits": {
- "smithy.api#documentation": "The maximum number of objects returned per page.
",
+ "smithy.api#enum": [
+ {
+ "value": "PROJECTION",
+ "name": "PROJECTION"
+ },
+ {
+ "value": "LESS_THAN",
+ "name": "LESS_THAN"
+ },
+ {
+ "value": "GREATER_THAN",
+ "name": "GREATER_THAN"
+ },
+ {
+ "value": "BETWEEN",
+ "name": "BETWEEN"
+ },
+ {
+ "value": "LESS_THAN_OR_EQUAL_TO",
+ "name": "LESS_THAN_OR_EQUAL_TO"
+ },
+ {
+ "value": "GREATER_THAN_OR_EQUAL_TO",
+ "name": "GREATER_THAN_OR_EQUAL_TO"
+ },
+ {
+ "value": "EQUAL_TO",
+ "name": "EQUAL_TO"
+ },
+ {
+ "value": "NOT_EQUAL_TO",
+ "name": "NOT_EQUAL_TO"
+ },
+ {
+ "value": "ADDITION",
+ "name": "ADDITION"
+ },
+ {
+ "value": "MULTIPLICATION",
+ "name": "MULTIPLICATION"
+ },
+ {
+ "value": "DIVISION",
+ "name": "DIVISION"
+ },
+ {
+ "value": "SUBTRACTION",
+ "name": "SUBTRACTION"
+ },
+ {
+ "value": "MASK_ALL",
+ "name": "MASK_ALL"
+ },
+ {
+ "value": "MASK_FIRST_N",
+ "name": "MASK_FIRST_N"
+ },
+ {
+ "value": "MASK_LAST_N",
+ "name": "MASK_LAST_N"
+ },
+ {
+ "value": "VALIDATE_NON_NULL",
+ "name": "VALIDATE_NON_NULL"
+ },
+ {
+ "value": "VALIDATE_NON_ZERO",
+ "name": "VALIDATE_NON_ZERO"
+ },
+ {
+ "value": "VALIDATE_NON_NEGATIVE",
+ "name": "VALIDATE_NON_NEGATIVE"
+ },
+ {
+ "value": "VALIDATE_NUMERIC",
+ "name": "VALIDATE_NUMERIC"
+ },
+ {
+ "value": "NO_OP",
+ "name": "NO_OP"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.customerprofiles#S3SourceProperties": {
+ "type": "structure",
+ "members": {
+ "BucketName": {
+ "target": "com.amazonaws.customerprofiles#BucketName",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ },
+ "BucketPrefix": {
+ "target": "com.amazonaws.customerprofiles#BucketPrefix"
+ }
+ }
+ },
+ "com.amazonaws.customerprofiles#SalesforceConnectorOperator": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "PROJECTION",
+ "name": "PROJECTION"
+ },
+ {
+ "value": "LESS_THAN",
+ "name": "LESS_THAN"
+ },
+ {
+ "value": "CONTAINS",
+ "name": "CONTAINS"
+ },
+ {
+ "value": "GREATER_THAN",
+ "name": "GREATER_THAN"
+ },
+ {
+ "value": "BETWEEN",
+ "name": "BETWEEN"
+ },
+ {
+ "value": "LESS_THAN_OR_EQUAL_TO",
+ "name": "LESS_THAN_OR_EQUAL_TO"
+ },
+ {
+ "value": "GREATER_THAN_OR_EQUAL_TO",
+ "name": "GREATER_THAN_OR_EQUAL_TO"
+ },
+ {
+ "value": "EQUAL_TO",
+ "name": "EQUAL_TO"
+ },
+ {
+ "value": "NOT_EQUAL_TO",
+ "name": "NOT_EQUAL_TO"
+ },
+ {
+ "value": "ADDITION",
+ "name": "ADDITION"
+ },
+ {
+ "value": "MULTIPLICATION",
+ "name": "MULTIPLICATION"
+ },
+ {
+ "value": "DIVISION",
+ "name": "DIVISION"
+ },
+ {
+ "value": "SUBTRACTION",
+ "name": "SUBTRACTION"
+ },
+ {
+ "value": "MASK_ALL",
+ "name": "MASK_ALL"
+ },
+ {
+ "value": "MASK_FIRST_N",
+ "name": "MASK_FIRST_N"
+ },
+ {
+ "value": "MASK_LAST_N",
+ "name": "MASK_LAST_N"
+ },
+ {
+ "value": "VALIDATE_NON_NULL",
+ "name": "VALIDATE_NON_NULL"
+ },
+ {
+ "value": "VALIDATE_NON_ZERO",
+ "name": "VALIDATE_NON_ZERO"
+ },
+ {
+ "value": "VALIDATE_NON_NEGATIVE",
+ "name": "VALIDATE_NON_NEGATIVE"
+ },
+ {
+ "value": "VALIDATE_NUMERIC",
+ "name": "VALIDATE_NUMERIC"
+ },
+ {
+ "value": "NO_OP",
+ "name": "NO_OP"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.customerprofiles#SalesforceSourceProperties": {
+ "type": "structure",
+ "members": {
+ "Object": {
+ "target": "com.amazonaws.customerprofiles#Object",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ },
+ "EnableDynamicFieldUpdate": {
+ "target": "com.amazonaws.customerprofiles#boolean"
+ },
+ "IncludeDeletedRecords": {
+ "target": "com.amazonaws.customerprofiles#boolean"
+ }
+ }
+ },
+ "com.amazonaws.customerprofiles#ScheduleExpression": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ },
+ "smithy.api#pattern": ".*"
+ }
+ },
+ "com.amazonaws.customerprofiles#ScheduleOffset": {
+ "type": "long",
+ "traits": {
+ "smithy.api#range": {
+ "min": 0,
+ "max": 36000
+ }
+ }
+ },
+ "com.amazonaws.customerprofiles#ScheduledTriggerProperties": {
+ "type": "structure",
+ "members": {
+ "ScheduleExpression": {
+ "target": "com.amazonaws.customerprofiles#ScheduleExpression",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ },
+ "DataPullMode": {
+ "target": "com.amazonaws.customerprofiles#DataPullMode"
+ },
+ "ScheduleStartTime": {
+ "target": "com.amazonaws.customerprofiles#Date"
+ },
+ "ScheduleEndTime": {
+ "target": "com.amazonaws.customerprofiles#Date"
+ },
+ "Timezone": {
+ "target": "com.amazonaws.customerprofiles#Timezone"
+ },
+ "ScheduleOffset": {
+ "target": "com.amazonaws.customerprofiles#ScheduleOffset",
+ "traits": {
+ "smithy.api#box": {}
+ }
+ },
+ "FirstExecutionFrom": {
+ "target": "com.amazonaws.customerprofiles#Date"
+ }
+ }
+ },
+ "com.amazonaws.customerprofiles#SearchProfiles": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.customerprofiles#SearchProfilesRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.customerprofiles#SearchProfilesResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.customerprofiles#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.customerprofiles#BadRequestException"
+ },
+ {
+ "target": "com.amazonaws.customerprofiles#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.customerprofiles#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.customerprofiles#ThrottlingException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Searches for profiles within a specific domain name using name, phone number, email\n address, account number, or a custom defined index.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/domains/{DomainName}/profiles/search",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.customerprofiles#SearchProfilesRequest": {
+ "type": "structure",
+ "members": {
+ "NextToken": {
+ "target": "com.amazonaws.customerprofiles#token",
+ "traits": {
+ "smithy.api#documentation": "The pagination token from the previous SearchProfiles API call.
",
+ "smithy.api#httpQuery": "next-token"
+ }
+ },
+ "MaxResults": {
+ "target": "com.amazonaws.customerprofiles#maxSize100",
+ "traits": {
+ "smithy.api#documentation": "The maximum number of objects returned per page.
",
"smithy.api#httpQuery": "max-results"
}
},
@@ -2986,6 +3577,184 @@
}
}
},
+ "com.amazonaws.customerprofiles#ServiceNowConnectorOperator": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "PROJECTION",
+ "name": "PROJECTION"
+ },
+ {
+ "value": "CONTAINS",
+ "name": "CONTAINS"
+ },
+ {
+ "value": "LESS_THAN",
+ "name": "LESS_THAN"
+ },
+ {
+ "value": "GREATER_THAN",
+ "name": "GREATER_THAN"
+ },
+ {
+ "value": "BETWEEN",
+ "name": "BETWEEN"
+ },
+ {
+ "value": "LESS_THAN_OR_EQUAL_TO",
+ "name": "LESS_THAN_OR_EQUAL_TO"
+ },
+ {
+ "value": "GREATER_THAN_OR_EQUAL_TO",
+ "name": "GREATER_THAN_OR_EQUAL_TO"
+ },
+ {
+ "value": "EQUAL_TO",
+ "name": "EQUAL_TO"
+ },
+ {
+ "value": "NOT_EQUAL_TO",
+ "name": "NOT_EQUAL_TO"
+ },
+ {
+ "value": "ADDITION",
+ "name": "ADDITION"
+ },
+ {
+ "value": "MULTIPLICATION",
+ "name": "MULTIPLICATION"
+ },
+ {
+ "value": "DIVISION",
+ "name": "DIVISION"
+ },
+ {
+ "value": "SUBTRACTION",
+ "name": "SUBTRACTION"
+ },
+ {
+ "value": "MASK_ALL",
+ "name": "MASK_ALL"
+ },
+ {
+ "value": "MASK_FIRST_N",
+ "name": "MASK_FIRST_N"
+ },
+ {
+ "value": "MASK_LAST_N",
+ "name": "MASK_LAST_N"
+ },
+ {
+ "value": "VALIDATE_NON_NULL",
+ "name": "VALIDATE_NON_NULL"
+ },
+ {
+ "value": "VALIDATE_NON_ZERO",
+ "name": "VALIDATE_NON_ZERO"
+ },
+ {
+ "value": "VALIDATE_NON_NEGATIVE",
+ "name": "VALIDATE_NON_NEGATIVE"
+ },
+ {
+ "value": "VALIDATE_NUMERIC",
+ "name": "VALIDATE_NUMERIC"
+ },
+ {
+ "value": "NO_OP",
+ "name": "NO_OP"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.customerprofiles#ServiceNowSourceProperties": {
+ "type": "structure",
+ "members": {
+ "Object": {
+ "target": "com.amazonaws.customerprofiles#Object",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.customerprofiles#SourceConnectorProperties": {
+ "type": "structure",
+ "members": {
+ "Marketo": {
+ "target": "com.amazonaws.customerprofiles#MarketoSourceProperties"
+ },
+ "S3": {
+ "target": "com.amazonaws.customerprofiles#S3SourceProperties"
+ },
+ "Salesforce": {
+ "target": "com.amazonaws.customerprofiles#SalesforceSourceProperties"
+ },
+ "ServiceNow": {
+ "target": "com.amazonaws.customerprofiles#ServiceNowSourceProperties"
+ },
+ "Zendesk": {
+ "target": "com.amazonaws.customerprofiles#ZendeskSourceProperties"
+ }
+ }
+ },
+ "com.amazonaws.customerprofiles#SourceConnectorType": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "Salesforce",
+ "name": "SALESFORCE"
+ },
+ {
+ "value": "Marketo",
+ "name": "MARKETO"
+ },
+ {
+ "value": "Zendesk",
+ "name": "ZENDESK"
+ },
+ {
+ "value": "Servicenow",
+ "name": "SERVICENOW"
+ },
+ {
+ "value": "S3",
+ "name": "S3"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.customerprofiles#SourceFields": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.customerprofiles#stringTo2048"
+ }
+ },
+ "com.amazonaws.customerprofiles#SourceFlowConfig": {
+ "type": "structure",
+ "members": {
+ "ConnectorProfileName": {
+ "target": "com.amazonaws.customerprofiles#ConnectorProfileName"
+ },
+ "ConnectorType": {
+ "target": "com.amazonaws.customerprofiles#SourceConnectorType",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ },
+ "IncrementalPullConfig": {
+ "target": "com.amazonaws.customerprofiles#IncrementalPullConfig"
+ },
+ "SourceConnectorProperties": {
+ "target": "com.amazonaws.customerprofiles#SourceConnectorProperties",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
"com.amazonaws.customerprofiles#StandardIdentifier": {
"type": "string",
"traits": {
@@ -3127,6 +3896,82 @@
}
}
},
+ "com.amazonaws.customerprofiles#Task": {
+ "type": "structure",
+ "members": {
+ "ConnectorOperator": {
+ "target": "com.amazonaws.customerprofiles#ConnectorOperator"
+ },
+ "DestinationField": {
+ "target": "com.amazonaws.customerprofiles#DestinationField"
+ },
+ "SourceFields": {
+ "target": "com.amazonaws.customerprofiles#SourceFields",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ },
+ "TaskProperties": {
+ "target": "com.amazonaws.customerprofiles#TaskPropertiesMap"
+ },
+ "TaskType": {
+ "target": "com.amazonaws.customerprofiles#TaskType",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.customerprofiles#TaskPropertiesMap": {
+ "type": "map",
+ "key": {
+ "target": "com.amazonaws.customerprofiles#OperatorPropertiesKeys"
+ },
+ "value": {
+ "target": "com.amazonaws.customerprofiles#Property"
+ }
+ },
+ "com.amazonaws.customerprofiles#TaskType": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "Arithmetic",
+ "name": "ARITHMETIC"
+ },
+ {
+ "value": "Filter",
+ "name": "FILTER"
+ },
+ {
+ "value": "Map",
+ "name": "MAP"
+ },
+ {
+ "value": "Mask",
+ "name": "MASK"
+ },
+ {
+ "value": "Merge",
+ "name": "MERGE"
+ },
+ {
+ "value": "Truncate",
+ "name": "TRUNCATE"
+ },
+ {
+ "value": "Validate",
+ "name": "VALIDATE"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.customerprofiles#Tasks": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.customerprofiles#Task"
+ }
+ },
"com.amazonaws.customerprofiles#ThrottlingException": {
"type": "structure",
"members": {
@@ -3140,6 +3985,57 @@
"smithy.api#httpError": 429
}
},
+ "com.amazonaws.customerprofiles#Timezone": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ },
+ "smithy.api#pattern": ".*"
+ }
+ },
+ "com.amazonaws.customerprofiles#TriggerConfig": {
+ "type": "structure",
+ "members": {
+ "TriggerType": {
+ "target": "com.amazonaws.customerprofiles#TriggerType",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ },
+ "TriggerProperties": {
+ "target": "com.amazonaws.customerprofiles#TriggerProperties"
+ }
+ }
+ },
+ "com.amazonaws.customerprofiles#TriggerProperties": {
+ "type": "structure",
+ "members": {
+ "Scheduled": {
+ "target": "com.amazonaws.customerprofiles#ScheduledTriggerProperties"
+ }
+ }
+ },
+ "com.amazonaws.customerprofiles#TriggerType": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "Scheduled",
+ "name": "SCHEDULED"
+ },
+ {
+ "value": "Event",
+ "name": "EVENT"
+ },
+ {
+ "value": "OnDemand",
+ "name": "ONDEMAND"
+ }
+ ]
+ }
+ },
"com.amazonaws.customerprofiles#UntagResource": {
"type": "operation",
"input": {
@@ -3583,6 +4479,80 @@
}
}
},
+ "com.amazonaws.customerprofiles#ZendeskConnectorOperator": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "PROJECTION",
+ "name": "PROJECTION"
+ },
+ {
+ "value": "GREATER_THAN",
+ "name": "GREATER_THAN"
+ },
+ {
+ "value": "ADDITION",
+ "name": "ADDITION"
+ },
+ {
+ "value": "MULTIPLICATION",
+ "name": "MULTIPLICATION"
+ },
+ {
+ "value": "DIVISION",
+ "name": "DIVISION"
+ },
+ {
+ "value": "SUBTRACTION",
+ "name": "SUBTRACTION"
+ },
+ {
+ "value": "MASK_ALL",
+ "name": "MASK_ALL"
+ },
+ {
+ "value": "MASK_FIRST_N",
+ "name": "MASK_FIRST_N"
+ },
+ {
+ "value": "MASK_LAST_N",
+ "name": "MASK_LAST_N"
+ },
+ {
+ "value": "VALIDATE_NON_NULL",
+ "name": "VALIDATE_NON_NULL"
+ },
+ {
+ "value": "VALIDATE_NON_ZERO",
+ "name": "VALIDATE_NON_ZERO"
+ },
+ {
+ "value": "VALIDATE_NON_NEGATIVE",
+ "name": "VALIDATE_NON_NEGATIVE"
+ },
+ {
+ "value": "VALIDATE_NUMERIC",
+ "name": "VALIDATE_NUMERIC"
+ },
+ {
+ "value": "NO_OP",
+ "name": "NO_OP"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.customerprofiles#ZendeskSourceProperties": {
+ "type": "structure",
+ "members": {
+ "Object": {
+ "target": "com.amazonaws.customerprofiles#Object",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
"com.amazonaws.customerprofiles#boolean": {
"type": "boolean"
},
@@ -3682,6 +4652,16 @@
}
}
},
+ "com.amazonaws.customerprofiles#stringTo2048": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 2048
+ },
+ "smithy.api#pattern": ".*"
+ }
+ },
"com.amazonaws.customerprofiles#stringifiedJson": {
"type": "string",
"traits": {
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 a814f70d625..027c7a66ea8 100644
--- a/codegen/sdk-codegen/aws-models/databrew.2017-07-25.json
+++ b/codegen/sdk-codegen/aws-models/databrew.2017-07-25.json
@@ -413,7 +413,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Represents an individual condition that evaluates to true or false.
\n Conditions are used with recipe actions: The action is only performed for column values where the condition evaluates to true.
\n If a recipe requires more than one condition, then the recipe must specify multiple ConditionExpression
elements. Each condition is applied to the rows in a dataset first, before the recipe action is performed.
"
+ "smithy.api#documentation": "Represents an individual condition that evaluates to true or false.
\n Conditions are used with recipe actions. The action is only performed for column values where the condition evaluates to true.
\n If a recipe requires more than one condition, then the recipe must specify multiple ConditionExpression
elements. Each condition is applied to the rows in a dataset first, before the recipe action is performed.
"
}
},
"com.amazonaws.databrew#ConditionExpressionList": {
@@ -444,6 +444,9 @@
"smithy.api#httpError": 409
}
},
+ "com.amazonaws.databrew#CreateColumn": {
+ "type": "boolean"
+ },
"com.amazonaws.databrew#CreateDataset": {
"type": "operation",
"input": {
@@ -488,7 +491,7 @@
"Format": {
"target": "com.amazonaws.databrew#InputFormat",
"traits": {
- "smithy.api#documentation": "Specifies the file format of a dataset created from an S3 file or folder.
"
+ "smithy.api#documentation": "The file format of a dataset that is created from an S3 file or folder.
"
}
},
"FormatOptions": {
@@ -500,6 +503,12 @@
"smithy.api#required": {}
}
},
+ "PathOptions": {
+ "target": "com.amazonaws.databrew#PathOptions",
+ "traits": {
+ "smithy.api#documentation": "A set of options that defines how DataBrew interprets an S3 path of the dataset.
"
+ }
+ },
"Tags": {
"target": "com.amazonaws.databrew#TagMap",
"traits": {
@@ -1020,18 +1029,18 @@
"Delimiter": {
"target": "com.amazonaws.databrew#Delimiter",
"traits": {
- "smithy.api#documentation": "A single character that specifies the delimiter being used in the Csv file.
"
+ "smithy.api#documentation": "A single character that specifies the delimiter being used in the CSV file.
"
}
},
"HeaderRow": {
"target": "com.amazonaws.databrew#HeaderRow",
"traits": {
- "smithy.api#documentation": "A variable that specifies whether the first row in the file will be parsed as the\n header. If false, column names will be auto-generated.
"
+ "smithy.api#documentation": "A variable that specifies whether the first row in the file is parsed as the\n header. If this value is false, column names are auto-generated.
"
}
}
},
"traits": {
- "smithy.api#documentation": "Options that define how DataBrew will read a Csv file when creating a dataset from\n that file.
"
+ "smithy.api#documentation": "Represents a set of options that define how DataBrew will read a comma-separated value (CSV) file when creating a dataset from that file.
"
}
},
"com.amazonaws.databrew#CsvOutputOptions": {
@@ -1040,12 +1049,12 @@
"Delimiter": {
"target": "com.amazonaws.databrew#Delimiter",
"traits": {
- "smithy.api#documentation": "A single character that specifies the delimiter used to create Csv job output.
"
+ "smithy.api#documentation": "A single character that specifies the delimiter used to create CSV job output.
"
}
}
},
"traits": {
- "smithy.api#documentation": "Options that define how DataBrew will write a Csv file.
"
+ "smithy.api#documentation": "Represents a set of options that define how DataBrew will write a comma-separated value (CSV) file.
"
}
},
"com.amazonaws.databrew#DataCatalogInputDefinition": {
@@ -1082,6 +1091,31 @@
"smithy.api#documentation": "Represents how metadata stored in the AWS Glue Data Catalog is defined in a DataBrew\n dataset.
"
}
},
+ "com.amazonaws.databrew#DatabaseInputDefinition": {
+ "type": "structure",
+ "members": {
+ "GlueConnectionName": {
+ "target": "com.amazonaws.databrew#GlueConnectionName",
+ "traits": {
+ "smithy.api#documentation": "The AWS Glue Connection that stores the connection information for the target\n database.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DatabaseTableName": {
+ "target": "com.amazonaws.databrew#DatabaseTableName",
+ "traits": {
+ "smithy.api#documentation": "The table within the target database.
",
+ "smithy.api#required": {}
+ }
+ },
+ "TempDirectory": {
+ "target": "com.amazonaws.databrew#S3Location"
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Connection information for dataset input files stored in a database.
"
+ }
+ },
"com.amazonaws.databrew#DatabaseName": {
"type": "string",
"traits": {
@@ -1091,6 +1125,15 @@
}
}
},
+ "com.amazonaws.databrew#DatabaseTableName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 255
+ }
+ }
+ },
"com.amazonaws.databrew#Dataset": {
"type": "structure",
"members": {
@@ -1122,13 +1165,13 @@
"Format": {
"target": "com.amazonaws.databrew#InputFormat",
"traits": {
- "smithy.api#documentation": "Specifies the file format of a dataset created from an S3 file or folder.
"
+ "smithy.api#documentation": "The file format of a dataset that is created from an S3 file or folder.
"
}
},
"FormatOptions": {
"target": "com.amazonaws.databrew#FormatOptions",
"traits": {
- "smithy.api#documentation": "Options that define how DataBrew interprets the data in the dataset.
"
+ "smithy.api#documentation": "A set of options that define how DataBrew interprets the data in the dataset.
"
}
},
"Input": {
@@ -1156,6 +1199,12 @@
"smithy.api#documentation": "The location of the data for the dataset, either Amazon S3 or the AWS Glue Data\n Catalog.
"
}
},
+ "PathOptions": {
+ "target": "com.amazonaws.databrew#PathOptions",
+ "traits": {
+ "smithy.api#documentation": "A set of options that defines how DataBrew interprets an S3 path of the dataset.
"
+ }
+ },
"Tags": {
"target": "com.amazonaws.databrew#TagMap",
"traits": {
@@ -1188,9 +1237,85 @@
}
}
},
+ "com.amazonaws.databrew#DatasetParameter": {
+ "type": "structure",
+ "members": {
+ "Name": {
+ "target": "com.amazonaws.databrew#PathParameterName",
+ "traits": {
+ "smithy.api#documentation": "The name of the parameter that is used in the dataset's S3 path.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Type": {
+ "target": "com.amazonaws.databrew#ParameterType",
+ "traits": {
+ "smithy.api#documentation": "The type of the dataset parameter, can be one of a 'String', 'Number' or 'Datetime'.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DatetimeOptions": {
+ "target": "com.amazonaws.databrew#DatetimeOptions",
+ "traits": {
+ "smithy.api#documentation": "Additional parameter options such as a format and a timezone. Required for datetime parameters.
"
+ }
+ },
+ "CreateColumn": {
+ "target": "com.amazonaws.databrew#CreateColumn",
+ "traits": {
+ "smithy.api#documentation": "Optional boolean value that defines whether the captured value of this parameter should be loaded as an additional column in the dataset.
"
+ }
+ },
+ "Filter": {
+ "target": "com.amazonaws.databrew#FilterExpression",
+ "traits": {
+ "smithy.api#documentation": "The optional filter expression structure to apply additional matching criteria to the parameter.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Represents a dataset paramater that defines type and conditions for a parameter in the S3 path of the dataset.
"
+ }
+ },
"com.amazonaws.databrew#Date": {
"type": "timestamp"
},
+ "com.amazonaws.databrew#DatetimeFormat": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 2,
+ "max": 100
+ }
+ }
+ },
+ "com.amazonaws.databrew#DatetimeOptions": {
+ "type": "structure",
+ "members": {
+ "Format": {
+ "target": "com.amazonaws.databrew#DatetimeFormat",
+ "traits": {
+ "smithy.api#documentation": "Required option, that defines the datetime format used for a date parameter in the S3 path. Should use only supported datetime specifiers and separation characters, all \n litera a-z or A-Z character should be escaped with single quotes. E.g. \"MM.dd.yyyy-'at'-HH:mm\".
",
+ "smithy.api#required": {}
+ }
+ },
+ "TimezoneOffset": {
+ "target": "com.amazonaws.databrew#TimezoneOffset",
+ "traits": {
+ "smithy.api#documentation": "Optional value for a timezone offset of the datetime parameter value in the S3 path. Shouldn't be used if Format for this parameter includes timezone fields.\n If no offset specified, UTC is assumed.
"
+ }
+ },
+ "LocaleCode": {
+ "target": "com.amazonaws.databrew#LocaleCode",
+ "traits": {
+ "smithy.api#documentation": "Optional value for a non-US locale code, needed for correct interpretation of some date formats.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Represents additional options for correct interpretation of datetime parameters used in the S3 path of a dataset.
"
+ }
+ },
"com.amazonaws.databrew#DeleteDataset": {
"type": "operation",
"input": {
@@ -1540,7 +1665,7 @@
"Format": {
"target": "com.amazonaws.databrew#InputFormat",
"traits": {
- "smithy.api#documentation": "Specifies the file format of a dataset created from an S3 file or folder.
"
+ "smithy.api#documentation": "The file format of a dataset that is created from an S3 file or folder.
"
}
},
"FormatOptions": {
@@ -1570,6 +1695,12 @@
"smithy.api#documentation": "The location of the data for this dataset, Amazon S3 or the AWS Glue Data\n Catalog.
"
}
},
+ "PathOptions": {
+ "target": "com.amazonaws.databrew#PathOptions",
+ "traits": {
+ "smithy.api#documentation": "A set of options that defines how DataBrew interprets an S3 path of the dataset.
"
+ }
+ },
"Tags": {
"target": "com.amazonaws.databrew#TagMap",
"traits": {
@@ -2272,29 +2403,88 @@
"SheetNames": {
"target": "com.amazonaws.databrew#SheetNameList",
"traits": {
- "smithy.api#documentation": "Specifies one or more named sheets in the Excel file, which will be included in the\n dataset.
"
+ "smithy.api#documentation": "One or more named sheets in the Excel file that will be included in the dataset.
"
}
},
"SheetIndexes": {
"target": "com.amazonaws.databrew#SheetIndexList",
"traits": {
- "smithy.api#documentation": "Specifies one or more sheet numbers in the Excel file, which will be included in the\n dataset.
"
+ "smithy.api#documentation": "One or more sheet numbers in the Excel file that will be included in the\n dataset.
"
}
},
"HeaderRow": {
"target": "com.amazonaws.databrew#HeaderRow",
"traits": {
- "smithy.api#documentation": "A variable that specifies whether the first row in the file will be parsed as the\n header. If false, column names will be auto-generated.
"
+ "smithy.api#documentation": "A variable that specifies whether the first row in the file is parsed as the\n header. If this value is false, column names are auto-generated.
"
}
}
},
"traits": {
- "smithy.api#documentation": "Options that define how DataBrew will interpret a Microsoft Excel file, when creating\n a dataset from that file.
"
+ "smithy.api#documentation": "Represents a set of options that define how DataBrew will interpret a Microsoft Excel file when \n creating a dataset from that file.
"
}
},
"com.amazonaws.databrew#ExecutionTime": {
"type": "integer"
},
+ "com.amazonaws.databrew#Expression": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 4,
+ "max": 1024
+ },
+ "smithy.api#pattern": "^[<>0-9A-Za-z_:)(!= ]+$"
+ }
+ },
+ "com.amazonaws.databrew#FilesLimit": {
+ "type": "structure",
+ "members": {
+ "MaxFiles": {
+ "target": "com.amazonaws.databrew#MaxFiles",
+ "traits": {
+ "smithy.api#documentation": "The number of S3 files to select.
",
+ "smithy.api#required": {}
+ }
+ },
+ "OrderedBy": {
+ "target": "com.amazonaws.databrew#OrderedBy",
+ "traits": {
+ "smithy.api#documentation": "A criteria to use for S3 files sorting before their selection. By default uses LAST_MODIFIED_DATE as \n a sorting criteria. Currently it's the only allowed value.
"
+ }
+ },
+ "Order": {
+ "target": "com.amazonaws.databrew#Order",
+ "traits": {
+ "smithy.api#documentation": "A criteria to use for S3 files sorting before their selection. By default uses DESCENDING order, \n i.e. most recent files are selected first. Anotherpossible value is ASCENDING.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Represents a limit imposed on number of S3 files that should be selected for a dataset from a connected \n S3 path.
"
+ }
+ },
+ "com.amazonaws.databrew#FilterExpression": {
+ "type": "structure",
+ "members": {
+ "Expression": {
+ "target": "com.amazonaws.databrew#Expression",
+ "traits": {
+ "smithy.api#documentation": "The expression which includes condition names followed by substitution variables, possibly grouped \n and combined with other conditions. For example, \"(starts_with :prefix1 or starts_with :prefix2) and \n (ends_with :suffix1 or ends_with :suffix2)\". Substitution variables should start with ':' symbol.
",
+ "smithy.api#required": {}
+ }
+ },
+ "ValuesMap": {
+ "target": "com.amazonaws.databrew#ValuesMap",
+ "traits": {
+ "smithy.api#documentation": "The map of substitution variable names to their values used in this filter expression.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Represents a structure for defining parameter conditions.
"
+ }
+ },
"com.amazonaws.databrew#FormatOptions": {
"type": "structure",
"members": {
@@ -2313,12 +2503,21 @@
"Csv": {
"target": "com.amazonaws.databrew#CsvOptions",
"traits": {
- "smithy.api#documentation": "Options that define how Csv input is to be interpreted by DataBrew.
"
+ "smithy.api#documentation": "Options that define how CSV input is to be interpreted by DataBrew.
"
}
}
},
"traits": {
- "smithy.api#documentation": "Options that define the structure of either Csv, Excel, or JSON input.
"
+ "smithy.api#documentation": "Represents a set of options that define the structure of either comma-separated value (CSV), Excel, or JSON input.
"
+ }
+ },
+ "com.amazonaws.databrew#GlueConnectionName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 255
+ }
}
},
"com.amazonaws.databrew#HeaderRow": {
@@ -2347,10 +2546,16 @@
"traits": {
"smithy.api#documentation": "The AWS Glue Data Catalog parameters for the data.
"
}
+ },
+ "DatabaseInputDefinition": {
+ "target": "com.amazonaws.databrew#DatabaseInputDefinition",
+ "traits": {
+ "smithy.api#documentation": "Connection information for dataset input files stored in a database.
"
+ }
}
},
"traits": {
- "smithy.api#documentation": "Information on how DataBrew can find data, in either the AWS Glue Data Catalog or\n Amazon S3.
"
+ "smithy.api#documentation": "Represents information on how DataBrew can find data, in either the AWS Glue Data Catalog or\n Amazon S3.
"
}
},
"com.amazonaws.databrew#InputFormat": {
@@ -2425,7 +2630,7 @@
"EncryptionMode": {
"target": "com.amazonaws.databrew#EncryptionMode",
"traits": {
- "smithy.api#documentation": "The encryption mode for the job, which can be one of the following:
\n "
+ "smithy.api#documentation": "The encryption mode for the job, which can be one of the following:
\n "
}
},
"Name": {
@@ -2498,7 +2703,7 @@
"RoleArn": {
"target": "com.amazonaws.databrew#Arn",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the role that will be assumed for this job.
"
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the role to be assumed for this job.
"
}
},
"Timeout": {
@@ -2516,7 +2721,7 @@
"JobSample": {
"target": "com.amazonaws.databrew#JobSample",
"traits": {
- "smithy.api#documentation": "Sample configuration for profile jobs only. Determines the number of rows on which the\n profile job will be executed. If a JobSample value is not provided, the default value\n will be used. The default value is CUSTOM_ROWS for the mode parameter and 20000 for the\n size parameter.
"
+ "smithy.api#documentation": "A sample configuration for profile jobs only, which determines the number of rows on which the\n profile job is run. If a JobSample
value isn't provided, the default value\n is used. The default value is CUSTOM_ROWS for the mode parameter and 20,000 for the\n size parameter.
"
}
}
},
@@ -2641,7 +2846,7 @@
"JobSample": {
"target": "com.amazonaws.databrew#JobSample",
"traits": {
- "smithy.api#documentation": "Sample configuration for profile jobs only. Determines the number of rows on which the\n profile job will be executed. If a JobSample value is not provided, the default value\n will be used. The default value is CUSTOM_ROWS for the mode parameter and 20000 for the\n size parameter.
"
+ "smithy.api#documentation": "A sample configuration for profile jobs only, which determines the number of rows on which the\n profile job is run. If a JobSample
value isn't provided, the default\n is used. The default value is CUSTOM_ROWS for the mode parameter and 20,000 for the\n size parameter.
"
}
}
},
@@ -2708,18 +2913,18 @@
"Mode": {
"target": "com.amazonaws.databrew#SampleMode",
"traits": {
- "smithy.api#documentation": "Determines whether the profile job will be executed on the entire dataset or on a\n specified number of rows. Must be one of the following:
\n "
+ "smithy.api#documentation": "A value that determines whether the profile job is run on the entire dataset or a\n specified number of rows. This value must be one of the following:
\n "
}
},
"Size": {
"target": "com.amazonaws.databrew#JobSize",
"traits": {
- "smithy.api#documentation": "Size parameter is only required when the mode is CUSTOM_ROWS. Profile job will be\n executed on the the specified number of rows. The maximum value for size is\n Long.MAX_VALUE.
\n Long.MAX_VALUE = 9223372036854775807
"
+ "smithy.api#documentation": "The Size
parameter is only required when the mode is CUSTOM_ROWS. The\n profile job is run on the specified number of rows. The maximum value for size is\n Long.MAX_VALUE.
\n Long.MAX_VALUE = 9223372036854775807
"
}
}
},
"traits": {
- "smithy.api#documentation": "Sample configuration for Profile Jobs only. Determines the number of rows on which the\n Profile job will be executed. If a JobSample value is not provided for profile jobs, the\n default value will be used. The default value is CUSTOM_ROWS for the mode parameter and\n 20000 for the size parameter.
"
+ "smithy.api#documentation": "A sample configuration for profile jobs only, which determines the number of rows on which the\n profile job is run. If a JobSample
value isn't provided, the\n default is used. The default value is CUSTOM_ROWS for the mode parameter and\n 20,000 for the size parameter.
"
}
},
"com.amazonaws.databrew#JobSize": {
@@ -3323,6 +3528,16 @@
}
}
},
+ "com.amazonaws.databrew#LocaleCode": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 2,
+ "max": 100
+ },
+ "smithy.api#pattern": "^[A-Za-z0-9_\\.#@\\-]+$"
+ }
+ },
"com.amazonaws.databrew#LogGroupName": {
"type": "string",
"traits": {
@@ -3350,6 +3565,14 @@
"com.amazonaws.databrew#MaxCapacity": {
"type": "integer"
},
+ "com.amazonaws.databrew#MaxFiles": {
+ "type": "integer",
+ "traits": {
+ "smithy.api#range": {
+ "min": 1
+ }
+ }
+ },
"com.amazonaws.databrew#MaxResults100": {
"type": "integer",
"traits": {
@@ -3396,6 +3619,32 @@
"smithy.api#pattern": "^[A-Z\\_]+$"
}
},
+ "com.amazonaws.databrew#Order": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "DESCENDING",
+ "name": "DESCENDING"
+ },
+ {
+ "value": "ASCENDING",
+ "name": "ASCENDING"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.databrew#OrderedBy": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "LAST_MODIFIED_DATE",
+ "name": "LAST_MODIFIED_DATE"
+ }
+ ]
+ }
+ },
"com.amazonaws.databrew#Output": {
"type": "structure",
"members": {
@@ -3433,12 +3682,12 @@
"FormatOptions": {
"target": "com.amazonaws.databrew#OutputFormatOptions",
"traits": {
- "smithy.api#documentation": "Options that define how DataBrew formats job output files.
"
+ "smithy.api#documentation": "Represents options that define how DataBrew formats job output files.
"
}
}
},
"traits": {
- "smithy.api#documentation": "Parameters that specify how and where DataBrew will write the output generated by\n recipe jobs or profile jobs.
"
+ "smithy.api#documentation": "Represents options that specify how and where DataBrew writes the output generated by\n recipe jobs or profile jobs.
"
}
},
"com.amazonaws.databrew#OutputFormat": {
@@ -3482,12 +3731,12 @@
"Csv": {
"target": "com.amazonaws.databrew#CsvOutputOptions",
"traits": {
- "smithy.api#documentation": "Options that define how DataBrew writes Csv output.
"
+ "smithy.api#documentation": "Represents a set of options that define the structure of comma-separated value (CSV)\n job output.
"
}
}
},
"traits": {
- "smithy.api#documentation": "Options that define the structure of Csv job output.
"
+ "smithy.api#documentation": "Represents a set of options that define the structure of comma-separated (CSV) job output.
"
}
},
"com.amazonaws.databrew#OutputList": {
@@ -3523,6 +3772,25 @@
"smithy.api#pattern": "^[A-Za-z0-9]+$"
}
},
+ "com.amazonaws.databrew#ParameterType": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "Datetime",
+ "name": "Datetime"
+ },
+ {
+ "value": "Number",
+ "name": "Number"
+ },
+ {
+ "value": "String",
+ "name": "String"
+ }
+ ]
+ }
+ },
"com.amazonaws.databrew#ParameterValue": {
"type": "string",
"traits": {
@@ -3532,6 +3800,57 @@
}
}
},
+ "com.amazonaws.databrew#PathOptions": {
+ "type": "structure",
+ "members": {
+ "LastModifiedDateCondition": {
+ "target": "com.amazonaws.databrew#FilterExpression",
+ "traits": {
+ "smithy.api#documentation": "If provided, this structure defines a date range for matching S3 objects based on their LastModifiedDate attribute in S3.
"
+ }
+ },
+ "FilesLimit": {
+ "target": "com.amazonaws.databrew#FilesLimit",
+ "traits": {
+ "smithy.api#documentation": "If provided, this structure imposes a limit on a number of files that should be selected.
"
+ }
+ },
+ "Parameters": {
+ "target": "com.amazonaws.databrew#PathParametersMap",
+ "traits": {
+ "smithy.api#documentation": "A structure that maps names of parameters used in the S3 path of a dataset to their definitions.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Represents a set of options that define how DataBrew selects files for a given S3 path in a dataset.
"
+ }
+ },
+ "com.amazonaws.databrew#PathParameterName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 255
+ }
+ }
+ },
+ "com.amazonaws.databrew#PathParametersMap": {
+ "type": "map",
+ "key": {
+ "target": "com.amazonaws.databrew#PathParameterName"
+ },
+ "value": {
+ "target": "com.amazonaws.databrew#DatasetParameter"
+ },
+ "traits": {
+ "smithy.api#documentation": "A structure that map names of parameters used in the S3 path of a dataset to their definitions. A definition includes parameter type and conditions.
",
+ "smithy.api#length": {
+ "min": 1,
+ "max": 10
+ }
+ }
+ },
"com.amazonaws.databrew#Preview": {
"type": "boolean"
},
@@ -3597,7 +3916,7 @@
"Sample": {
"target": "com.amazonaws.databrew#Sample",
"traits": {
- "smithy.api#documentation": "The sample size and sampling type to apply to the data. If this parameter isn't\n specified, then the sample will consiste of the first 500 rows from the dataset.
"
+ "smithy.api#documentation": "The sample size and sampling type to apply to the data. If this parameter isn't\n specified, then the sample consists of the first 500 rows from the dataset.
"
}
},
"Tags": {
@@ -3785,7 +4104,7 @@
"RecipeVersion": {
"target": "com.amazonaws.databrew#RecipeVersion",
"traits": {
- "smithy.api#documentation": "The identifier for the version for the recipe. Must be one of the following:
\n \n \n Numeric version (X.Y
) - X
and Y
stand\n for major and minor version numbers. The maximum length of each is 6 digits, and\n neither can be negative values. Both X
and Y
are\n required, and \"0.0\" is not a valid version.
\n \n \n \n LATEST_WORKING
- the most recent valid version being developed in\n a DataBrew project.
\n \n \n \n LATEST_PUBLISHED
- the most recent published version.
\n \n "
+ "smithy.api#documentation": "The identifier for the version for the recipe. Must be one of the following:
\n \n \n Numeric version (X.Y
) - X
and Y
stand\n for major and minor version numbers. The maximum length of each is 6 digits, and\n neither can be negative values. Both X
and Y
are\n required, and \"0.0\" isn't a valid version.
\n \n \n \n LATEST_WORKING
- the most recent valid version being developed in\n a DataBrew project.
\n \n \n \n LATEST_PUBLISHED
- the most recent published version.
\n \n "
}
}
},
@@ -3881,7 +4200,7 @@
"ConditionExpressions": {
"target": "com.amazonaws.databrew#ConditionExpressionList",
"traits": {
- "smithy.api#documentation": "One or more conditions that must be met, in order for the recipe step to\n succeed.
\n \n All of the conditions in the array must be met. In other words, all of the\n conditions must be combined using a logical AND operation.
\n "
+ "smithy.api#documentation": "One or more conditions that must be met for the recipe step to succeed.
\n \n All of the conditions in the array must be met. In other words, all of the\n conditions must be combined using a logical AND operation.
\n "
}
}
},
@@ -3976,7 +4295,7 @@
}
},
"traits": {
- "smithy.api#documentation": "An Amazon S3 location (bucket name an object key) where DataBrew can read input data,\n or write output from a job.
"
+ "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.
"
}
},
"com.amazonaws.databrew#Sample": {
@@ -4092,7 +4411,7 @@
"CronExpression": {
"target": "com.amazonaws.databrew#CronExpression",
"traits": {
- "smithy.api#documentation": "The date(s) and time(s) when the job will run. For more information, see Cron\n expressions in the AWS Glue DataBrew Developer\n Guide .
"
+ "smithy.api#documentation": "The dates and times when the job is to run. For more information, see Cron\n expressions in the AWS Glue DataBrew Developer\n Guide .
"
}
},
"Tags": {
@@ -4331,6 +4650,10 @@
{
"value": "DATA-CATALOG",
"name": "DATACATALOG"
+ },
+ {
+ "value": "DATABASE",
+ "name": "DATABASE"
}
]
}
@@ -4661,6 +4984,16 @@
}
}
},
+ "com.amazonaws.databrew#TimezoneOffset": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 6
+ },
+ "smithy.api#pattern": "^(Z|[-+](\\d|\\d{2}|\\d{2}:?\\d{2}))$"
+ }
+ },
"com.amazonaws.databrew#UntagResource": {
"type": "operation",
"input": {
@@ -4756,7 +5089,7 @@
"Format": {
"target": "com.amazonaws.databrew#InputFormat",
"traits": {
- "smithy.api#documentation": "Specifies the file format of a dataset created from an S3 file or folder.
"
+ "smithy.api#documentation": "The file format of a dataset that is created from an S3 file or folder.
"
}
},
"FormatOptions": {
@@ -4767,6 +5100,12 @@
"traits": {
"smithy.api#required": {}
}
+ },
+ "PathOptions": {
+ "target": "com.amazonaws.databrew#PathOptions",
+ "traits": {
+ "smithy.api#documentation": "A set of options that defines how DataBrew interprets an S3 path of the dataset.
"
+ }
}
}
},
@@ -5200,6 +5539,25 @@
"smithy.api#httpError": 400
}
},
+ "com.amazonaws.databrew#ValueReference": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 2,
+ "max": 128
+ },
+ "smithy.api#pattern": "^:[A-Za-z0-9_]+$"
+ }
+ },
+ "com.amazonaws.databrew#ValuesMap": {
+ "type": "map",
+ "key": {
+ "target": "com.amazonaws.databrew#ValueReference"
+ },
+ "value": {
+ "target": "com.amazonaws.databrew#ConditionValue"
+ }
+ },
"com.amazonaws.databrew#ViewFrame": {
"type": "structure",
"members": {
@@ -5224,7 +5582,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Represents the data being being transformed during an action.
"
+ "smithy.api#documentation": "Represents the data being transformed during an action.
"
}
}
}
diff --git a/codegen/sdk-codegen/aws-models/datapipeline.2012-10-29.json b/codegen/sdk-codegen/aws-models/datapipeline.2012-10-29.json
index 558ea761636..c616a05b73c 100644
--- a/codegen/sdk-codegen/aws-models/datapipeline.2012-10-29.json
+++ b/codegen/sdk-codegen/aws-models/datapipeline.2012-10-29.json
@@ -52,7 +52,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Validates the specified pipeline and starts processing pipeline tasks. If the pipeline does not pass validation, activation fails.
\n If you need to pause the pipeline to investigate an issue with a component, such as a data source or script, \n call DeactivatePipeline .
\n To activate a finished pipeline, modify the end date for the pipeline and then activate it.
\n If you activate an on-demand pipeline that is already running, it will cancel all running objects and re-run the pipeline. StartTimestamp does not apply to on-demand pipelines.
"
+ "smithy.api#documentation": "Validates the specified pipeline and starts processing pipeline tasks. If the pipeline does not pass validation, \n activation fails.
\n If you need to pause the pipeline to investigate an issue with a component, such as a data source or script, \n call DeactivatePipeline .
\n To activate a finished pipeline, modify the end date for the pipeline and then activate it.
\n \n \n \nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.ActivatePipeline\nContent-Length: 39\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"pipelineId\": \"df-06372391ZG65EXAMPLE\"}\n\n \n \n \nHTTP/1.1 200 \nx-amzn-RequestId: ee19d5bf-074e-11e2-af6f-6bc7a6be60d9\nContent-Type: application/x-amz-json-1.1\nContent-Length: 2\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{}\n \n \n "
}
},
"com.amazonaws.datapipeline#ActivatePipelineInput": {
@@ -161,7 +161,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates a new, empty pipeline. Use PutPipelineDefinition to populate the pipeline.
"
+ "smithy.api#documentation": "Creates a new, empty pipeline. Use PutPipelineDefinition to populate the pipeline.
\n \n \n \n\nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.CreatePipeline\nContent-Length: 91\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"name\": \"myPipeline\",\n \"uniqueId\": \"123456789\",\n \"description\": \"This is my first pipeline\"}\n \n \n \n \n \nHTTP/1.1 200 \nx-amzn-RequestId: b16911ce-0774-11e2-af6f-6bc7a6be60d9\nContent-Type: application/x-amz-json-1.1\nContent-Length: 40\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{\"pipelineId\": \"df-06372391ZG65EXAMPLE\"}\n \n \n "
}
},
"com.amazonaws.datapipeline#CreatePipelineInput": {
@@ -170,7 +170,7 @@
"name": {
"target": "com.amazonaws.datapipeline#id",
"traits": {
- "smithy.api#documentation": "The name for the pipeline. You can use the same name for multiple pipelines associated with your AWS account, because AWS Data Pipeline assigns each pipeline a unique pipeline identifier.
",
+ "smithy.api#documentation": "The name for the pipeline. You can use the same name for multiple pipelines associated with your AWS account, \n because AWS Data Pipeline assigns each pipeline a unique pipeline identifier.
",
"smithy.api#required": {}
}
},
@@ -190,7 +190,7 @@
"tags": {
"target": "com.amazonaws.datapipeline#tagList",
"traits": {
- "smithy.api#documentation": "A list of tags to associate with the pipeline at creation. Tags let you control access to pipelines. \n For more information, see Controlling User Access to Pipelines \n in the AWS Data Pipeline Developer Guide .
"
+ "smithy.api#documentation": "A list of tags to associate with the pipeline at creation. Tags let you control access to pipelines. \n For more information, see Controlling User Access to Pipelines \n in the AWS Data Pipeline Developer Guide .
"
}
}
},
@@ -287,7 +287,7 @@
"name": "datapipeline"
},
"aws.protocols#awsJson1_1": {},
- "smithy.api#documentation": "AWS Data Pipeline configures and manages a data-driven workflow called a pipeline. AWS Data Pipeline handles the details of scheduling and ensuring that data dependencies are met so that your application can focus on processing the data.
\n\n AWS Data Pipeline provides a JAR implementation of a task runner called AWS Data Pipeline Task Runner. AWS Data Pipeline Task Runner provides logic for common data management scenarios, such as performing database queries and running data analysis using Amazon Elastic MapReduce (Amazon EMR). You can use AWS Data Pipeline Task Runner as your task runner, or you can write your own task runner to provide custom data management.
\n \n AWS Data Pipeline implements two main sets of functionality. Use the first set to create a pipeline and define data sources, schedules, dependencies, and the transforms to be performed on the data. Use the second set in your task runner application to receive the next task ready for processing. The logic for performing the task, such as querying the data, running data analysis, or converting the data from one format to another, is contained within the task runner. The task runner performs the task assigned to it by the web service, reporting progress to the web service as it does so. When the task is done, the task runner reports the final success or failure of the task to the web service.
",
+ "smithy.api#documentation": "AWS Data Pipeline configures and manages a data-driven workflow called a pipeline. AWS Data Pipeline \n handles the details of scheduling and ensuring that data dependencies are met so that your application \n can focus on processing the data.
\n\n AWS Data Pipeline provides a JAR implementation of a task runner called AWS Data Pipeline Task Runner. \n AWS Data Pipeline Task Runner provides logic for common data management scenarios, such as performing \n database queries and running data analysis using Amazon Elastic MapReduce (Amazon EMR). You can use \n AWS Data Pipeline Task Runner as your task runner, or you can write your own task runner to provide \n custom data management.
\n \n AWS Data Pipeline implements two main sets of functionality. Use the first set to create a pipeline \n and define data sources, schedules, dependencies, and the transforms to be performed on the data. \n Use the second set in your task runner application to receive the next task ready for processing. \n The logic for performing the task, such as querying the data, running data analysis, or converting \n the data from one format to another, is contained within the task runner. The task runner performs \n the task assigned to it by the web service, reporting progress to the web service as it does so. \n When the task is done, the task runner reports the final success or failure of the task to the web service.
",
"smithy.api#title": "AWS Data Pipeline",
"smithy.api#xmlNamespace": {
"uri": "http://datapipeline.amazonaws.com/doc/2012-10-29/"
@@ -365,7 +365,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes a pipeline, its pipeline definition, and its run history. AWS Data Pipeline attempts to cancel instances associated with the pipeline that are currently being processed by task runners.
\n Deleting a pipeline cannot be undone. You cannot query or restore a deleted pipeline. \n To temporarily pause a pipeline instead of deleting it, call SetStatus with the status set to PAUSE
on individual components. \n Components that are paused by SetStatus can be resumed.
"
+ "smithy.api#documentation": "Deletes a pipeline, its pipeline definition, and its run history. \n AWS Data Pipeline attempts to cancel instances associated with the pipeline that are currently being processed by task runners.
\n Deleting a pipeline cannot be undone. You cannot query or restore a deleted pipeline. \n To temporarily pause a pipeline instead of deleting it, call SetStatus with the status set to PAUSE
on individual components. \n Components that are paused by SetStatus can be resumed.
\n\n \n \n\nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.DeletePipeline\nContent-Length: 50\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"pipelineId\": \"df-06372391ZG65EXAMPLE\"}\n\n \n \n \n \nx-amzn-RequestId: b7a88c81-0754-11e2-af6f-6bc7a6be60d9\nContent-Type: application/x-amz-json-1.1\nContent-Length: 0\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\nUnexpected response: 200, OK, undefined\n \n \n "
}
},
"com.amazonaws.datapipeline#DeletePipelineInput": {
@@ -406,7 +406,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Gets the object definitions for a set of objects associated with the pipeline. Object definitions are composed of a set of fields that define the properties of the object.
",
+ "smithy.api#documentation": "Gets the object definitions for a set of objects associated with the pipeline. Object definitions are composed of \n a set of fields that define the properties of the object.
\n \n \n \n\nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.DescribeObjects\nContent-Length: 98\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"pipelineId\": \"df-06372391ZG65EXAMPLE\",\n \"objectIds\": \n [\"Schedule\"],\n \"evaluateExpressions\": true}\n\n \n \n \n\nx-amzn-RequestId: 4c18ea5d-0777-11e2-8a14-21bb8a1f50ef\nContent-Type: application/x-amz-json-1.1\nContent-Length: 1488\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{\"hasMoreResults\": false, \n \"pipelineObjects\": \n [\n {\"fields\": \n [\n {\"key\": \"startDateTime\", \n \"stringValue\": \"2012-12-12T00:00:00\"}, \n {\"key\": \"parent\", \n \"refValue\": \"Default\"}, \n {\"key\": \"@sphere\", \n \"stringValue\": \"COMPONENT\"}, \n {\"key\": \"type\", \n \"stringValue\": \"Schedule\"}, \n {\"key\": \"period\", \n \"stringValue\": \"1 hour\"}, \n {\"key\": \"endDateTime\", \n \"stringValue\": \"2012-12-21T18:00:00\"}, \n {\"key\": \"@version\", \n \"stringValue\": \"1\"}, \n {\"key\": \"@status\", \n \"stringValue\": \"PENDING\"}, \n {\"key\": \"@pipelineId\", \n \"stringValue\": \"df-06372391ZG65EXAMPLE\"}\n ], \n \"id\": \"Schedule\", \n \"name\": \"Schedule\"}\n ]\n}\n \n \n ",
"smithy.api#paginated": {
"inputToken": "marker",
"outputToken": "marker",
@@ -498,7 +498,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves metadata about one or more pipelines. The information retrieved includes the name of the pipeline, the pipeline identifier, its current state, and the user account that owns the pipeline. Using account credentials, you can retrieve metadata about pipelines that you or your IAM users have created. If you are using an IAM user account, you can retrieve metadata about only those pipelines for which you have read permissions.
\n To retrieve the full pipeline definition instead of metadata about the pipeline, call GetPipelineDefinition .
"
+ "smithy.api#documentation": "Retrieves metadata about one or more pipelines. The information retrieved includes the name of the pipeline, the pipeline identifier, \n its current state, and the user account that owns the pipeline. Using account credentials, you can retrieve metadata about pipelines \n that you or your IAM users have created. If you are using an IAM user account, you can retrieve metadata about only those pipelines \n for which you have read permissions.
\n To retrieve the full pipeline definition instead of metadata about the pipeline, call GetPipelineDefinition .
\n\n \n \n\nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.DescribePipelines\nContent-Length: 70\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"pipelineIds\": \n [\"df-08785951KAKJEXAMPLE\"]\n}\n\n \n\n \n \nx-amzn-RequestId: 02870eb7-0736-11e2-af6f-6bc7a6be60d9\nContent-Type: application/x-amz-json-1.1\nContent-Length: 767\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{\"pipelineDescriptionList\": \n [\n {\"description\": \"This is my first pipeline\", \n \"fields\": \n [\n {\"key\": \"@pipelineState\", \n \"stringValue\": \"SCHEDULED\"}, \n {\"key\": \"description\", \n \"stringValue\": \"This is my first pipeline\"}, \n {\"key\": \"name\", \n \"stringValue\": \"myPipeline\"}, \n {\"key\": \"@creationTime\", \n \"stringValue\": \"2012-12-13T01:24:06\"}, \n {\"key\": \"@id\", \n \"stringValue\": \"df-0937003356ZJEXAMPLE\"}, \n {\"key\": \"@sphere\", \n \"stringValue\": \"PIPELINE\"}, \n {\"key\": \"@version\", \n \"stringValue\": \"1\"}, \n {\"key\": \"@userId\", \n \"stringValue\": \"924374875933\"}, \n {\"key\": \"@accountId\", \n \"stringValue\": \"924374875933\"}, \n {\"key\": \"uniqueId\", \n \"stringValue\": \"1234567890\"}\n ], \n \"name\": \"myPipeline\", \n \"pipelineId\": \"df-0937003356ZJEXAMPLE\"}\n ]\n}\n \n "
}
},
"com.amazonaws.datapipeline#DescribePipelinesInput": {
@@ -557,7 +557,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Task runners call EvaluateExpression
to evaluate a string in the context of the specified object. \n For example, a task runner can evaluate SQL queries stored in Amazon S3.
"
+ "smithy.api#documentation": "Task runners call EvaluateExpression
to evaluate a string in the context of the specified object. \n For example, a task runner can evaluate SQL queries stored in Amazon S3.
\n \n \n \n \nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.DescribePipelines\nContent-Length: 164\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"pipelineId\": \"df-08785951KAKJEXAMPLE\",\n \"objectId\": \"Schedule\",\n \"expression\": \"Transform started at #{startDateTime} and finished at #{endDateTime}\"}\n\n \n \n \n \n \nx-amzn-RequestId: 02870eb7-0736-11e2-af6f-6bc7a6be60d9\nContent-Type: application/x-amz-json-1.1\nContent-Length: 103\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{\"evaluatedExpression\": \"Transform started at 2012-12-12T00:00:00 and finished at 2012-12-21T18:00:00\"}\n \n "
}
},
"com.amazonaws.datapipeline#EvaluateExpressionInput": {
@@ -654,7 +654,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Gets the definition of the specified pipeline. You can call GetPipelineDefinition
to retrieve \n the pipeline definition that you provided using PutPipelineDefinition .
"
+ "smithy.api#documentation": "Gets the definition of the specified pipeline. You can call GetPipelineDefinition
to retrieve \n the pipeline definition that you provided using PutPipelineDefinition .
\n\n \n \n\nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.GetPipelineDefinition\nContent-Length: 40\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n\n{\"pipelineId\": \"df-06372391ZG65EXAMPLE\"}\n\n \n \n \nx-amzn-RequestId: e28309e5-0776-11e2-8a14-21bb8a1f50ef\nContent-Type: application/x-amz-json-1.1\nContent-Length: 890\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{\"pipelineObjects\": \n [\n {\"fields\": \n [\n {\"key\": \"workerGroup\", \n \"stringValue\": \"workerGroup\"}\n ], \n \"id\": \"Default\", \n \"name\": \"Default\"}, \n {\"fields\": \n [\n {\"key\": \"startDateTime\", \n \"stringValue\": \"2012-09-25T17:00:00\"}, \n {\"key\": \"type\", \n \"stringValue\": \"Schedule\"}, \n {\"key\": \"period\", \n \"stringValue\": \"1 hour\"}, \n {\"key\": \"endDateTime\", \n \"stringValue\": \"2012-09-25T18:00:00\"}\n ], \n \"id\": \"Schedule\", \n \"name\": \"Schedule\"}, \n {\"fields\": \n [\n {\"key\": \"schedule\", \n \"refValue\": \"Schedule\"}, \n {\"key\": \"command\", \n \"stringValue\": \"echo hello\"}, \n {\"key\": \"parent\", \n \"refValue\": \"Default\"}, \n {\"key\": \"type\", \n \"stringValue\": \"ShellCommandActivity\"}\n ], \n \"id\": \"SayHello\", \n \"name\": \"SayHello\"}\n ]\n}\n\n \n "
}
},
"com.amazonaws.datapipeline#GetPipelineDefinitionInput": {
@@ -721,7 +721,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Identity information for the EC2 instance that is hosting the task runner. You can get this value by calling a metadata URI from the EC2 instance. \n For more information, see Instance Metadata in the Amazon Elastic Compute Cloud User Guide. \n Passing in this value proves that your task runner is running on an EC2 instance, and ensures the proper AWS Data Pipeline service charges are applied to your pipeline.
"
+ "smithy.api#documentation": "
Identity information for the EC2 instance that is hosting the task runner. You can get this value by calling a metadata URI from the EC2 instance. \n For more information, see Instance Metadata in the Amazon Elastic Compute Cloud User Guide. \n Passing in this value proves that your task runner is running on an EC2 instance, and ensures the proper AWS Data Pipeline service charges are applied to your pipeline.
"
}
},
"com.amazonaws.datapipeline#InternalServiceError": {
@@ -771,7 +771,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists the pipeline identifiers for all active pipelines that you have permission to access.
",
+ "smithy.api#documentation": "Lists the pipeline identifiers for all active pipelines that you have permission to access.
\n \n \n \n \nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.ListPipelines\nContent-Length: 14\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{} \n \n \n \nStatus:\nx-amzn-RequestId: b3104dc5-0734-11e2-af6f-6bc7a6be60d9\nContent-Type: application/x-amz-json-1.1\nContent-Length: 39\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{\"PipelineIdList\": \n [\n {\"id\": \"df-08785951KAKJEXAMPLE\",\n \"name\": \"MyPipeline\"}, \n {\"id\": \"df-08662578ISYEXAMPLE\", \n \"name\": \"MySecondPipeline\"}\n ]\n} \n ",
"smithy.api#paginated": {
"inputToken": "marker",
"outputToken": "marker",
@@ -826,7 +826,7 @@
"type": {
"target": "com.amazonaws.datapipeline#OperatorType",
"traits": {
- "smithy.api#documentation": "\n The logical operation to be performed: equal (EQ
), equal reference (REF_EQ
), less than or equal (LE
), greater than or equal (GE
), or between (BETWEEN
). Equal reference (REF_EQ
) can be used only with reference fields. The other comparison types can be used only with String fields. The comparison types you can use apply only to certain object fields, as detailed below. \n
\n The comparison operators EQ and REF_EQ act on the following fields:
\n \n \n name
\n \n \n @sphere
\n \n \n parent
\n \n \n @componentParent
\n \n \n @instanceParent
\n \n \n @status
\n \n \n @scheduledStartTime
\n \n \n @scheduledEndTime
\n \n \n @actualStartTime
\n \n \n @actualEndTime
\n \n \n \n \n The comparison operators GE
, LE
, and BETWEEN
act on the following fields:\n
\n \n \n @scheduledStartTime
\n \n \n @scheduledEndTime
\n \n \n @actualStartTime
\n \n \n @actualEndTime
\n \n \n Note that fields beginning with the at sign (@) are read-only and set by the web service. When you name fields, you should choose names containing only alpha-numeric values, as symbols may be reserved by AWS Data Pipeline. User-defined fields that you add to a pipeline should prefix their name with the string \"my\".
"
+ "smithy.api#documentation": "\n The logical operation to be performed: equal (EQ
), equal reference (REF_EQ
), less than or equal (LE
), greater than or equal (GE
), or between (BETWEEN
). Equal reference (REF_EQ
) can be used only with reference fields. The other comparison types can be used only with String fields. The comparison types you can use apply only to certain object fields, as detailed below. \n
\n \n The comparison operators EQ and REF_EQ act on the following fields:\n
\n \n name \n @sphere \n parent \n @componentParent \n @instanceParent \n @status \n @scheduledStartTime \n @scheduledEndTime \n @actualStartTime \n @actualEndTime \n \n \n \n The comparison operators GE
, LE
, and BETWEEN
act on the following fields:\n
\n \n @scheduledStartTime \n @scheduledEndTime \n @actualStartTime \n @actualEndTime \n \n Note that fields beginning with the at sign (@) are read-only and set by the web service. When you name fields, you should choose names containing only alpha-numeric values, as symbols may be reserved by AWS Data Pipeline. User-defined fields that you add to a pipeline should prefix their name with the string \"my\".
"
}
},
"values": {
@@ -901,7 +901,7 @@
"id": {
"target": "com.amazonaws.datapipeline#fieldNameString",
"traits": {
- "smithy.api#documentation": "The ID of the parameter object.
",
+ "smithy.api#documentation": "The ID of the parameter object.
",
"smithy.api#required": {}
}
},
@@ -942,7 +942,7 @@
}
},
"traits": {
- "smithy.api#documentation": "A value or list of parameter values.
"
+ "smithy.api#documentation": "A value or list of parameter values.
"
}
},
"com.amazonaws.datapipeline#ParameterValueList": {
@@ -999,7 +999,7 @@
"tags": {
"target": "com.amazonaws.datapipeline#tagList",
"traits": {
- "smithy.api#documentation": "A list of tags to associated with a pipeline. Tags let you control access to pipelines. \n For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide .
"
+ "smithy.api#documentation": "A list of tags to associated with a pipeline. Tags let you control access to pipelines. \n For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide .
"
}
}
},
@@ -1112,7 +1112,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Task runners call PollForTask
to receive a task to perform from AWS Data Pipeline. The task runner specifies which tasks it can perform \n by setting a value for the workerGroup
parameter. The task returned can come from any of the pipelines that \n match the workerGroup
value passed in by the task runner and that was launched using the IAM user credentials \n specified by the task runner.
\n If tasks are ready in the work queue, PollForTask
returns a response immediately. If no tasks are available in the queue, \n PollForTask
uses long-polling and holds on to a poll connection for up to a 90 seconds, during which time the first newly \n scheduled task is handed to the task runner. To accomodate this, set the socket timeout in your task runner to 90 seconds. The task \n runner should not call PollForTask
again on the same workerGroup
until it receives a response, and this can take up to 90 seconds.\n
"
+ "smithy.api#documentation": "Task runners call PollForTask
to receive a task to perform from AWS Data Pipeline. The task runner specifies which tasks it can perform \n by setting a value for the workerGroup
parameter. The task returned can come from any of the pipelines that \n match the workerGroup
value passed in by the task runner and that was launched using the IAM user credentials \n specified by the task runner.
\n If tasks are ready in the work queue, PollForTask
returns a response immediately. If no tasks are available in the queue, \n PollForTask
uses long-polling and holds on to a poll connection for up to a 90 seconds, during which time the first newly \n scheduled task is handed to the task runner. To accomodate this, set the socket timeout in your task runner to 90 seconds. The task \n runner should not call PollForTask
again on the same workerGroup
until it receives a response, and this can take up to 90 seconds.\n
\n\n \n \n\nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.PollForTask\nContent-Length: 59\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"workerGroup\": \"MyworkerGroup\",\n \"hostname\": \"example.com\"}\n\n \n \n \n \nx-amzn-RequestId: 41c713d2-0775-11e2-af6f-6bc7a6be60d9\nContent-Type: application/x-amz-json-1.1\nContent-Length: 39\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{\"taskObject\": \n {\"attemptId\": \"@SayHello_2012-12-12T00:00:00_Attempt=1\", \n \"objects\": \n {\"@SayHello_2012-12-12T00:00:00_Attempt=1\": \n {\"fields\": \n [\n {\"key\": \"@componentParent\", \n \"refValue\": \"SayHello\"}, \n {\"key\": \"@scheduledStartTime\", \n \"stringValue\": \"2012-12-12T00:00:00\"}, \n {\"key\": \"parent\", \n \"refValue\": \"SayHello\"}, \n {\"key\": \"@sphere\", \n \"stringValue\": \"ATTEMPT\"}, \n {\"key\": \"workerGroup\", \n \"stringValue\": \"workerGroup\"}, \n {\"key\": \"@instanceParent\", \n \"refValue\": \"@SayHello_2012-12-12T00:00:00\"}, \n {\"key\": \"type\", \n \"stringValue\": \"ShellCommandActivity\"}, \n {\"key\": \"@status\", \n \"stringValue\": \"WAITING_FOR_RUNNER\"}, \n {\"key\": \"@version\", \n \"stringValue\": \"1\"}, \n {\"key\": \"schedule\", \n \"refValue\": \"Schedule\"}, \n {\"key\": \"@actualStartTime\", \n \"stringValue\": \"2012-12-13T01:40:50\"}, \n {\"key\": \"command\", \n \"stringValue\": \"echo hello\"}, \n {\"key\": \"@scheduledEndTime\", \n \"stringValue\": \"2012-12-12T01:00:00\"}, \n {\"key\": \"@activeInstances\", \n \"refValue\": \"@SayHello_2012-12-12T00:00:00\"}, \n {\"key\": \"@pipelineId\", \n \"stringValue\": \"df-0937003356ZJEXAMPLE\"}\n ], \n \"id\": \"@SayHello_2012-12-12T00:00:00_Attempt=1\", \n \"name\": \"@SayHello_2012-12-12T00:00:00_Attempt=1\"}\n }, \n \"pipelineId\": \"df-0937003356ZJEXAMPLE\", \n \"taskId\": \"2xaM4wRs5zOsIH+g9U3oVHfAgAlbSqU6XduncB0HhZ3xMnmvfePZPn4dIbYXHyWyRK+cU15MqDHwdrvftx/4wv+sNS4w34vJfv7QA9aOoOazW28l1GYSb2ZRR0N0paiQp+d1MhSKo10hOTWOsVK5S5Lnx9Qm6omFgXHyIvZRIvTlrQMpr1xuUrflyGOfbFOGpOLpvPE172MYdqpZKnbSS4TcuqgQKSWV2833fEubI57DPOP7ghWa2TcYeSIv4pdLYG53fTuwfbnbdc98g2LNUQzSVhSnt7BoqyNwht2aQ6b/UHg9A80+KVpuXuqmz3m1MXwHFgxjdmuesXNOrrlGpeLCcRWD+aGo0RN1NqhQRzNAig8V4GlaPTQzMsRCljKqvrIyAoP3Tt2XEGsHkkQo12rEX8Z90957XX2qKRwhruwYzqGkSLWjINoLdAxUJdpRXRc5DJTrBd3D5mdzn7kY1l7NEh4kFHJDt3Cx4Z3Mk8MYCACyCk/CEyy9DwuPi66cLz0NBcgbCM5LKjTBOwo1m+am+pvM1kSposE9FPP1+RFGb8k6jQBTJx3TRz1yKilnGXQTZ5xvdOFpJrklIT0OXP1MG3+auM9FlJA+1dX90QoNJE5z7axmK//MOGXUdkqFe2kiDkorqjxwDvc0Js9pVKfKvAmW8YqUbmI9l0ERpWCXXnLVHNmPWz3jaPY+OBAmuJWDmxB/Z8p94aEDg4BVXQ7LvsKQ3DLYhaB7yJ390CJT+i0mm+EBqY60V6YikPSWDFrYQ/NPi2b1DgE19mX8zHqw8qprIl4yh1Ckx2Iige4En/N5ktOoIxnASxAw/TzcE2skxdw5KlHDF+UTj71m16CR/dIaKlXijlfNlNzUBo/bNSadCQn3G5NoO501wPKI:XO50TgDNyo8EXAMPLE/g==:1\"}\n}\n \n \n "
}
},
"com.amazonaws.datapipeline#PollForTaskInput": {
@@ -1134,7 +1134,7 @@
"instanceIdentity": {
"target": "com.amazonaws.datapipeline#InstanceIdentity",
"traits": {
- "smithy.api#documentation": "Identity information for the EC2 instance that is hosting the task runner. You can get this value from the instance using http://169.254.169.254/latest/meta-data/instance-id
. For more information, see Instance Metadata in the Amazon Elastic Compute Cloud User Guide. Passing in this value proves that your task runner is running on an EC2 instance, and ensures the proper AWS Data Pipeline service charges are applied to your pipeline.
"
+ "smithy.api#documentation": "Identity information for the EC2 instance that is hosting the task runner. You can get this value from the instance using http://169.254.169.254/latest/meta-data/instance-id
. For more information, see Instance Metadata in the Amazon Elastic Compute Cloud User Guide. Passing in this value proves that your task runner is running on an EC2 instance, and ensures the proper AWS Data Pipeline service charges are applied to your pipeline.
"
}
}
},
@@ -1179,7 +1179,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Adds tasks, schedules, and preconditions to the specified pipeline. You can use PutPipelineDefinition
to populate a new pipeline.
\n \n PutPipelineDefinition
also validates the configuration as it adds it to the pipeline. Changes to the pipeline are saved unless one \n of the following validation errors exist in the pipeline.\n
\n \n \n An object is missing a name or identifier field.
\n \n \n A string or reference field is empty.
\n \n \n The number of objects in the pipeline exceeds the allowed maximum number of objects.
\n \n \n The pipeline is in a FINISHED state.
\n \n \n \n Pipeline object definitions are passed to the PutPipelineDefinition
action and returned by the GetPipelineDefinition action. \n
"
+ "smithy.api#documentation": "Adds tasks, schedules, and preconditions to the specified pipeline. You can use PutPipelineDefinition
to populate a new pipeline.
\n \n PutPipelineDefinition
also validates the configuration as it adds it to the pipeline. Changes to the pipeline are saved unless one \n of the following three validation errors exists in the pipeline.\n
\n \n An object is missing a name or identifier field. \n A string or reference field is empty. \n The number of objects in the pipeline exceeds the maximum allowed objects. \n The pipeline is in a FINISHED state. \n \n \n Pipeline object definitions are passed to the PutPipelineDefinition
action and returned by the GetPipelineDefinition action. \n
\n \n \n Example 1 \n \n This example sets an valid pipeline configuration and returns success.\n \n \n \nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.PutPipelineDefinition\nContent-Length: 914\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"pipelineId\": \"df-0937003356ZJEXAMPLE\",\n \"pipelineObjects\": \n [\n {\"id\": \"Default\",\n \"name\": \"Default\",\n \"fields\": \n [\n {\"key\": \"workerGroup\", \n \"stringValue\": \"workerGroup\"}\n ]\n }, \n {\"id\": \"Schedule\",\n \"name\": \"Schedule\",\n \"fields\": \n [\n {\"key\": \"startDateTime\", \n \"stringValue\": \"2012-12-12T00:00:00\"}, \n {\"key\": \"type\", \n \"stringValue\": \"Schedule\"}, \n {\"key\": \"period\", \n \"stringValue\": \"1 hour\"}, \n {\"key\": \"endDateTime\", \n \"stringValue\": \"2012-12-21T18:00:00\"}\n ]\n },\n {\"id\": \"SayHello\",\n \"name\": \"SayHello\",\n \"fields\": \n [\n {\"key\": \"type\", \n \"stringValue\": \"ShellCommandActivity\"},\n {\"key\": \"command\", \n \"stringValue\": \"echo hello\"},\n {\"key\": \"parent\", \n \"refValue\": \"Default\"},\n {\"key\": \"schedule\", \n \"refValue\": \"Schedule\"}\n ]\n }\n ]\n}\n \n \n \n \nHTTP/1.1 200 \nx-amzn-RequestId: f74afc14-0754-11e2-af6f-6bc7a6be60d9\nContent-Type: application/x-amz-json-1.1\nContent-Length: 18\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{\"errored\": false}\n\n \n \n \n \n Example 2 \n \n This example sets an invalid pipeline configuration (the value for workerGroup
is an empty string) and returns an error message.\n \n \n \nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.PutPipelineDefinition\nContent-Length: 903\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"pipelineId\": \"df-06372391ZG65EXAMPLE\",\n \"pipelineObjects\": \n [\n {\"id\": \"Default\",\n \"name\": \"Default\",\n \"fields\": \n [\n {\"key\": \"workerGroup\", \n \"stringValue\": \"\"}\n ]\n }, \n {\"id\": \"Schedule\",\n \"name\": \"Schedule\",\n \"fields\": \n [\n {\"key\": \"startDateTime\", \n \"stringValue\": \"2012-09-25T17:00:00\"}, \n {\"key\": \"type\", \n \"stringValue\": \"Schedule\"}, \n {\"key\": \"period\", \n \"stringValue\": \"1 hour\"}, \n {\"key\": \"endDateTime\", \n \"stringValue\": \"2012-09-25T18:00:00\"}\n ]\n },\n {\"id\": \"SayHello\",\n \"name\": \"SayHello\",\n \"fields\": \n [\n {\"key\": \"type\", \n \"stringValue\": \"ShellCommandActivity\"},\n {\"key\": \"command\", \n \"stringValue\": \"echo hello\"},\n {\"key\": \"parent\", \n \"refValue\": \"Default\"},\n {\"key\": \"schedule\", \n \"refValue\": \"Schedule\"}\n \n ]\n }\n ]\n}\n \n \n \n \nHTTP/1.1 200 \nx-amzn-RequestId: f74afc14-0754-11e2-af6f-6bc7a6be60d9\nContent-Type: application/x-amz-json-1.1\nContent-Length: 18\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{\"__type\": \"com.amazon.setl.webservice#InvalidRequestException\", \n \"message\": \"Pipeline definition has errors: Could not save the pipeline definition due to FATAL errors: [com.amazon.setl.webservice.ValidationError@108d7ea9] Please call Validate to validate your pipeline\"}\n\n \n \n \n "
}
},
"com.amazonaws.datapipeline#PutPipelineDefinitionInput": {
@@ -1280,7 +1280,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Queries the specified pipeline for the names of objects that match the specified set of conditions.
",
+ "smithy.api#documentation": "Queries the specified pipeline for the names of objects that match the specified set of conditions.
\n \n \n \n\nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.QueryObjects\nContent-Length: 123\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"pipelineId\": \"df-06372391ZG65EXAMPLE\",\n \"query\": \n {\"selectors\": \n [\n ]\n },\n \"sphere\": \"INSTANCE\",\n \"marker\": \"\",\n \"limit\": 10}\n\n \n \n \n \n\nx-amzn-RequestId: 14d704c1-0775-11e2-af6f-6bc7a6be60d9\nContent-Type: application/x-amz-json-1.1\nContent-Length: 72\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{\"hasMoreResults\": false, \n \"ids\": \n [\"@SayHello_1_2012-09-25T17:00:00\"]\n}\n \n ",
"smithy.api#paginated": {
"inputToken": "marker",
"outputToken": "marker",
@@ -1436,7 +1436,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Task runners call ReportTaskProgress
when assigned a task to acknowledge that it has the task. If the web service does not \n receive this acknowledgement within 2 minutes, it assigns the task in a subsequent PollForTask call. After this initial acknowledgement, \n the task runner only needs to report progress every 15 minutes to maintain its ownership of the task. You can change this reporting time \n from 15 minutes by specifying a reportProgressTimeout
field in your pipeline.
"
+ "smithy.api#documentation": "Task runners call ReportTaskProgress
when assigned a task to acknowledge that it has the task. If the web service does not \n receive this acknowledgement within 2 minutes, it assigns the task in a subsequent PollForTask call. After this initial acknowledgement, \n the task runner only needs to report progress every 15 minutes to maintain its ownership of the task. You can change this reporting time \n from 15 minutes by specifying a reportProgressTimeout
field in your pipeline.
\n If a task runner does not report its status after 5 minutes, AWS Data Pipeline assumes that the task runner is unable to process the task \n and reassigns the task in a subsequent response to PollForTask . Task runners should call ReportTaskProgress
every 60 seconds.
\n \n \n\nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.ReportTaskProgress\nContent-Length: 832\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"taskId\": \"aaGgHT4LuH0T0Y0oLrJRjas5qH0d8cDPADxqq3tn+zCWGELkCdV2JprLreXm1oxeP5EFZHFLJ69kjSsLYE0iYHYBYVGBrB+E/pYq7ANEEeGJFnSBMRiXZVA+8UJ3OzcInvXeinqBmBaKwii7hnnKb/AXjXiNTXyxgydX1KAyg1AxkwBYG4cfPYMZbuEbQJFJvv5C/2+GVXz1w94nKYTeUeepwUOFOuRLS6JVtZoYwpF56E+Yfk1IcGpFOvCZ01B4Bkuu7x3J+MD/j6kJgZLAgbCJQtI3eiW3kdGmX0p0I2BdY1ZsX6b4UiSvM3OMj6NEHJCJL4E0ZfitnhCoe24Kvjo6C2hFbZq+ei/HPgSXBQMSagkr4vS9c0ChzxH2+LNYvec6bY4kymkaZI1dvOzmpa0FcnGf5AjSK4GpsViZ/ujz6zxFv81qBXzjF0/4M1775rjV1VUdyKaixiA/sJiACNezqZqETidp8d24BDPRhGsj6pBCrnelqGFrk/gXEXUsJ+xwMifRC8UVwiKekpAvHUywVk7Ku4jH/n3i2VoLRP6FXwpUbelu34iiZ9czpXyLtyPKwxa87dlrnRVURwkcVjOt2Mcrcaqe+cbWHvNRhyrPkkdfSF3ac8/wfgVbXvLEB2k9mKc67aD9rvdc1PKX09Tk8BKklsMTpZ3TRCd4NzQlJKigMe8Jat9+1tKj4Ole5ZzW6uyTu2s2iFjEV8KXu4MaiRJyNKCdKeGhhZWY37Qk4NBK4Ppgu+C6Y41dpfOh288SLDEVx0/UySlqOEdhba7c6BiPp5r3hKj3mk9lFy5OYp1aoGLeeFmjXveTnPdf2gkWqXXg7AUbJ7jEs1F0lKZQg4szep2gcKyAJXgvXLfJJHcha8Lfb/Ee7wYmyOcAaRpDBoFNSbtoVXar46teIrpho+ZDvynUXvU0grHWGOk=:wn3SgymHZM99bEXAMPLE\",\n \"fields\": \n [\n {\"key\": \"percentComplete\",\n \"stringValue\": \"50\"}\n ]\n}\n\n \n \n \n\nx-amzn-RequestId: 640bd023-0775-11e2-af6f-6bc7a6be60d9\nContent-Type: application/x-amz-json-1.1\nContent-Length: 18\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{\"canceled\": false}\n \n \n "
}
},
"com.amazonaws.datapipeline#ReportTaskProgressInput": {
@@ -1492,7 +1492,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Task runners call ReportTaskRunnerHeartbeat
every 15 minutes to indicate that they are operational. \n If the AWS Data Pipeline Task Runner is launched on a resource managed by AWS Data Pipeline, the web service can use \n this call to detect when the task runner application has failed and restart a new instance.
"
+ "smithy.api#documentation": "Task runners call ReportTaskRunnerHeartbeat
every 15 minutes to indicate that they are operational. \n If the AWS Data Pipeline Task Runner is launched on a resource managed by AWS Data Pipeline, the web service can use \n this call to detect when the task runner application has failed and restart a new instance.
\n \n \n \n\nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.ReportTaskRunnerHeartbeat\nContent-Length: 84\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"taskrunnerId\": \"1234567890\",\n \"workerGroup\": \"wg-12345\",\n \"hostname\": \"example.com\"}\n\n \n \n \n\nStatus:\nx-amzn-RequestId: b3104dc5-0734-11e2-af6f-6bc7a6be60d9\nContent-Type: application/x-amz-json-1.1\nContent-Length: 20\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{\"terminate\": false}\n \n \n "
}
},
"com.amazonaws.datapipeline#ReportTaskRunnerHeartbeatInput": {
@@ -1501,7 +1501,7 @@
"taskrunnerId": {
"target": "com.amazonaws.datapipeline#id",
"traits": {
- "smithy.api#documentation": "The ID of the task runner. This value should be unique across your AWS account. In the case of AWS Data Pipeline Task Runner launched on a resource managed by AWS Data Pipeline, the web service provides a unique identifier when it launches the application. If you have written a custom task runner, you should assign a unique identifier for the task runner.
",
+ "smithy.api#documentation": "The ID of the task runner. This value should be unique across your AWS account. In the case of AWS Data Pipeline Task Runner \n launched on a resource managed by AWS Data Pipeline, the web service provides a unique identifier when it launches the application. \n If you have written a custom task runner, you should assign a unique identifier for the task runner.
",
"smithy.api#required": {}
}
},
@@ -1547,14 +1547,11 @@
}
},
"operator": {
- "target": "com.amazonaws.datapipeline#Operator",
- "traits": {
- "smithy.api#documentation": "Contains a logical operation for comparing the value of a field with a specified value.
"
- }
+ "target": "com.amazonaws.datapipeline#Operator"
}
},
"traits": {
- "smithy.api#documentation": "A comparison that is used to determine whether a query should return this object.
"
+ "smithy.api#documentation": "A comparision that is used to determine whether a query should return this object.
"
}
},
"com.amazonaws.datapipeline#SelectorList": {
@@ -1586,7 +1583,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Requests that the status of the specified physical or logical pipeline objects be updated in the specified pipeline. \n This update might not occur immediately, but is eventually consistent. The status that can be set depends on the type of object (for example, DataNode or Activity). \n You cannot perform this operation on FINISHED
pipelines and attempting to do so returns InvalidRequestException
.
"
+ "smithy.api#documentation": "Requests that the status of the specified physical or logical pipeline objects be updated in the specified pipeline. \n This update might not occur immediately, but is eventually consistent. The status that can be set depends on the type of object (for example, DataNode or Activity). \n You cannot perform this operation on FINISHED
pipelines and attempting to do so returns InvalidRequestException
.
\n \n \n \n\nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.SetStatus\nContent-Length: 100\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"pipelineId\": \"df-0634701J7KEXAMPLE\", \n \"objectIds\": \n [\"o-08600941GHJWMBR9E2\"], \n \"status\": \"pause\"}\n\n \n \n \n\nx-amzn-RequestId: e83b8ab7-076a-11e2-af6f-6bc7a6be60d9\nContent-Type: application/x-amz-json-1.1\nContent-Length: 0\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\nUnexpected response: 200, OK, undefined\n \n \n "
}
},
"com.amazonaws.datapipeline#SetStatusInput": {
@@ -1644,7 +1641,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Task runners call SetTaskStatus
to notify AWS Data Pipeline that a task is completed and provide information about the final status. \n A task runner makes this call regardless of whether the task was sucessful. A task runner does not need to call SetTaskStatus
for \n tasks that are canceled by the web service during a call to ReportTaskProgress .
"
+ "smithy.api#documentation": "Task runners call SetTaskStatus
to notify AWS Data Pipeline that a task is completed and provide information about the final status. \n A task runner makes this call regardless of whether the task was sucessful. A task runner does not need to call SetTaskStatus
for \n tasks that are canceled by the web service during a call to ReportTaskProgress .
\n \n \n \n\nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.SetTaskStatus\nContent-Length: 847\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"taskId\": \"aaGgHT4LuH0T0Y0oLrJRjas5qH0d8cDPADxqq3tn+zCWGELkCdV2JprLreXm1oxeP5EFZHFLJ69kjSsLYE0iYHYBYVGBrB+E/pYq7ANEEeGJFnSBMRiXZVA+8UJ3OzcInvXeinqBmBaKwii7hnnKb/AXjXiNTXyxgydX1KAyg1AxkwBYG4cfPYMZbuEbQJFJvv5C/2+GVXz1w94nKYTeUeepwUOFOuRLS6JVtZoYwpF56E+Yfk1IcGpFOvCZ01B4Bkuu7x3J+MD/j6kJgZLAgbCJQtI3eiW3kdGmX0p0I2BdY1ZsX6b4UiSvM3OMj6NEHJCJL4E0ZfitnhCoe24Kvjo6C2hFbZq+ei/HPgSXBQMSagkr4vS9c0ChzxH2+LNYvec6bY4kymkaZI1dvOzmpa0FcnGf5AjSK4GpsViZ/ujz6zxFv81qBXzjF0/4M1775rjV1VUdyKaixiA/sJiACNezqZqETidp8d24BDPRhGsj6pBCrnelqGFrk/gXEXUsJ+xwMifRC8UVwiKekpAvHUywVk7Ku4jH/n3i2VoLRP6FXwpUbelu34iiZ9czpXyLtyPKwxa87dlrnRVURwkcVjOt2Mcrcaqe+cbWHvNRhyrPkkdfSF3ac8/wfgVbXvLEB2k9mKc67aD9rvdc1PKX09Tk8BKklsMTpZ3TRCd4NzQlJKigMe8Jat9+1tKj4Ole5ZzW6uyTu2s2iFjEV8KXu4MaiRJyNKCdKeGhhZWY37Qk4NBK4Ppgu+C6Y41dpfOh288SLDEVx0/UySlqOEdhba7c6BiPp5r3hKj3mk9lFy5OYp1aoGLeeFmjXveTnPdf2gkWqXXg7AUbJ7jEs1F0lKZQg4szep2gcKyAJXgvXLfJJHcha8Lfb/Ee7wYmyOcAaRpDBoFNSbtoVXar46teIrpho+ZDvynUXvU0grHWGOk=:wn3SgymHZM99bEXAMPLE\",\n \"taskStatus\": \"FINISHED\"}\n \n \n \n \n\nx-amzn-RequestId: 8c8deb53-0788-11e2-af9c-6bc7a6be6qr8 \nContent-Type: application/x-amz-json-1.1\nContent-Length: 0\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{}\n \n \n "
}
},
"com.amazonaws.datapipeline#SetTaskStatusInput": {
@@ -1667,19 +1664,19 @@
"errorId": {
"target": "com.amazonaws.datapipeline#string",
"traits": {
- "smithy.api#documentation": "If an error occurred during the task, this value specifies the error code. This value is set on the physical attempt object. It is used to display error information to the user. It should not start with string \"Service_\" which is reserved by the system.
"
+ "smithy.api#documentation": "If an error occurred during the task, this value specifies the error code. This value is set on the physical attempt object. \n It is used to display error information to the user. It should not start with string \"Service_\" which is reserved by the system.
"
}
},
"errorMessage": {
"target": "com.amazonaws.datapipeline#errorMessage",
"traits": {
- "smithy.api#documentation": "If an error occurred during the task, this value specifies a text description of the error. This value is set on the physical attempt object. It is used to display error information to the user. The web service does not parse this value.
"
+ "smithy.api#documentation": "If an error occurred during the task, this value specifies a text description of the error. This value is set on the physical attempt object. \n It is used to display error information to the user. The web service does not parse this value.
"
}
},
"errorStackTrace": {
- "target": "com.amazonaws.datapipeline#errorStackTraceString",
+ "target": "com.amazonaws.datapipeline#string",
"traits": {
- "smithy.api#documentation": "If an error occurred during the task, this value specifies the stack trace associated with the error. This value is set on the physical attempt object. It is used to display error information to the user. The web service does not parse this value.
"
+ "smithy.api#documentation": "If an error occurred during the task, this value specifies the stack trace associated with the error. This value is set on the physical attempt object. \n It is used to display error information to the user. The web service does not parse this value.
"
}
}
},
@@ -1700,20 +1697,20 @@
"key": {
"target": "com.amazonaws.datapipeline#tagKey",
"traits": {
- "smithy.api#documentation": "The key name of a tag defined by a user. \n For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide .
",
+ "smithy.api#documentation": "The key name of a tag defined by a user. \n For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide .
",
"smithy.api#required": {}
}
},
"value": {
"target": "com.amazonaws.datapipeline#tagValue",
"traits": {
- "smithy.api#documentation": "The optional value portion of a tag defined by a user. \n For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide .
",
+ "smithy.api#documentation": "The optional value portion of a tag defined by a user. \n For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide .
",
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "Tags are key/value pairs defined by a user and associated with a pipeline to control access. AWS Data Pipeline allows you to associate ten tags per pipeline. \n For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide .
"
+ "smithy.api#documentation": "Tags are key/value pairs defined by a user and associated with a pipeline to control access. AWS Data Pipeline allows you to associate ten tags per pipeline. \n For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide .
"
}
},
"com.amazonaws.datapipeline#TaskNotFoundException": {
@@ -1727,7 +1724,7 @@
}
},
"traits": {
- "smithy.api#documentation": "The specified task was not found.
",
+ "smithy.api#documentation": "The specified task was not found.
",
"smithy.api#error": "client"
}
},
@@ -1805,7 +1802,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Validates the specified pipeline definition to ensure that it is well formed and can be run without error.
"
+ "smithy.api#documentation": "Validates the specified pipeline definition to ensure that it is well formed and can be run without error.
\n\n \n \n Example 1 \n \n This example sets an valid pipeline configuration and returns success.\n \n \n \nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.ValidatePipelineDefinition\nContent-Length: 936\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"pipelineId\": \"df-06372391ZG65EXAMPLE\",\n \"pipelineObjects\": \n [\n {\"id\": \"Default\",\n \"name\": \"Default\",\n \"fields\": \n [\n {\"key\": \"workerGroup\", \n \"stringValue\": \"MyworkerGroup\"}\n ]\n }, \n {\"id\": \"Schedule\",\n \"name\": \"Schedule\",\n \"fields\": \n [\n {\"key\": \"startDateTime\", \n \"stringValue\": \"2012-09-25T17:00:00\"}, \n {\"key\": \"type\", \n \"stringValue\": \"Schedule\"}, \n {\"key\": \"period\", \n \"stringValue\": \"1 hour\"}, \n {\"key\": \"endDateTime\", \n \"stringValue\": \"2012-09-25T18:00:00\"}\n ]\n },\n {\"id\": \"SayHello\",\n \"name\": \"SayHello\",\n \"fields\": \n [\n {\"key\": \"type\", \n \"stringValue\": \"ShellCommandActivity\"},\n {\"key\": \"command\", \n \"stringValue\": \"echo hello\"},\n {\"key\": \"parent\", \n \"refValue\": \"Default\"},\n {\"key\": \"schedule\", \n \"refValue\": \"Schedule\"}\n \n ]\n }\n ]\n}\n \n \n \n \nx-amzn-RequestId: 92c9f347-0776-11e2-8a14-21bb8a1f50ef\nContent-Type: application/x-amz-json-1.1\nContent-Length: 18\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{\"errored\": false}\n \n \n \n \n Example 2 \n \n This example sets an invalid pipeline configuration and returns the associated set of validation errors.\n \n \n \n \nPOST / HTTP/1.1\nContent-Type: application/x-amz-json-1.1\nX-Amz-Target: DataPipeline.ValidatePipelineDefinition\nContent-Length: 903\nHost: datapipeline.us-east-1.amazonaws.com\nX-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT\nAuthorization: AuthParams\n\n{\"pipelineId\": \"df-06372391ZG65EXAMPLE\",\n \"pipelineObjects\": \n [\n {\"id\": \"Default\",\n \"name\": \"Default\",\n \"fields\": \n [\n {\"key\": \"workerGroup\", \n \"stringValue\": \"MyworkerGroup\"}\n ]\n }, \n {\"id\": \"Schedule\",\n \"name\": \"Schedule\",\n \"fields\": \n [\n {\"key\": \"startDateTime\", \n \"stringValue\": \"bad-time\"}, \n {\"key\": \"type\", \n \"stringValue\": \"Schedule\"}, \n {\"key\": \"period\", \n \"stringValue\": \"1 hour\"}, \n {\"key\": \"endDateTime\", \n \"stringValue\": \"2012-09-25T18:00:00\"}\n ]\n },\n {\"id\": \"SayHello\",\n \"name\": \"SayHello\",\n \"fields\": \n [\n {\"key\": \"type\", \n \"stringValue\": \"ShellCommandActivity\"},\n {\"key\": \"command\", \n \"stringValue\": \"echo hello\"},\n {\"key\": \"parent\", \n \"refValue\": \"Default\"},\n {\"key\": \"schedule\", \n \"refValue\": \"Schedule\"}\n \n ]\n }\n ]\n}\n \n \n \n \nx-amzn-RequestId: 496a1f5a-0e6a-11e2-a61c-bd6312c92ddd\nContent-Type: application/x-amz-json-1.1\nContent-Length: 278\nDate: Mon, 12 Nov 2012 17:50:53 GMT\n\n{\"errored\": true, \n \"validationErrors\": \n [\n {\"errors\": \n [\"INVALID_FIELD_VALUE: 'startDateTime' value must be a literal datetime value.\"], \n \"id\": \"Schedule\"}\n ]\n}\n \n \n \n "
}
},
"com.amazonaws.datapipeline#ValidatePipelineDefinitionInput": {
@@ -1953,16 +1950,6 @@
"com.amazonaws.datapipeline#errorMessage": {
"type": "string"
},
- "com.amazonaws.datapipeline#errorStackTraceString": {
- "type": "string",
- "traits": {
- "smithy.api#length": {
- "min": 0,
- "max": 4095
- },
- "smithy.api#pattern": "[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*"
- }
- },
"com.amazonaws.datapipeline#fieldList": {
"type": "list",
"member": {
@@ -1996,7 +1983,7 @@
"min": 1,
"max": 1024
},
- "smithy.api#pattern": "[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\n\\t]*"
+ "smithy.api#pattern": "[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDC00-\\uDBFF\\uDFFF\\r\\n\\t]*"
}
},
"com.amazonaws.datapipeline#idList": {
diff --git a/codegen/sdk-codegen/aws-models/detective.2018-10-26.json b/codegen/sdk-codegen/aws-models/detective.2018-10-26.json
index 97ae2592fc0..6818f1e9b3e 100644
--- a/codegen/sdk-codegen/aws-models/detective.2018-10-26.json
+++ b/codegen/sdk-codegen/aws-models/detective.2018-10-26.json
@@ -159,11 +159,20 @@
{
"target": "com.amazonaws.detective#ListMembers"
},
+ {
+ "target": "com.amazonaws.detective#ListTagsForResource"
+ },
{
"target": "com.amazonaws.detective#RejectInvitation"
},
{
"target": "com.amazonaws.detective#StartMonitoringMember"
+ },
+ {
+ "target": "com.amazonaws.detective#TagResource"
+ },
+ {
+ "target": "com.amazonaws.detective#UntagResource"
}
],
"traits": {
@@ -200,6 +209,9 @@
},
"com.amazonaws.detective#CreateGraph": {
"type": "operation",
+ "input": {
+ "target": "com.amazonaws.detective#CreateGraphRequest"
+ },
"output": {
"target": "com.amazonaws.detective#CreateGraphResponse"
},
@@ -223,6 +235,17 @@
}
}
},
+ "com.amazonaws.detective#CreateGraphRequest": {
+ "type": "structure",
+ "members": {
+ "Tags": {
+ "target": "com.amazonaws.detective#TagMap",
+ "traits": {
+ "smithy.api#documentation": "The tags to assign to the new behavior graph. For each tag, you provide the tag key and\n the tag value.
"
+ }
+ }
+ }
+ },
"com.amazonaws.detective#CreateGraphResponse": {
"type": "structure",
"members": {
@@ -790,6 +813,58 @@
}
}
},
+ "com.amazonaws.detective#ListTagsForResource": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.detective#ListTagsForResourceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.detective#ListTagsForResourceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.detective#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.detective#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.detective#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Returns the tag values that are assigned to a behavior graph.
",
+ "smithy.api#http": {
+ "method": "GET",
+ "uri": "/tags/{ResourceArn}",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.detective#ListTagsForResourceRequest": {
+ "type": "structure",
+ "members": {
+ "ResourceArn": {
+ "target": "com.amazonaws.detective#GraphArn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the behavior graph for which to retrieve the tag values.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.detective#ListTagsForResourceResponse": {
+ "type": "structure",
+ "members": {
+ "Tags": {
+ "target": "com.amazonaws.detective#TagMap",
+ "traits": {
+ "smithy.api#documentation": "The tag values that are assigned to the behavior graph.
"
+ }
+ }
+ }
+ },
"com.amazonaws.detective#MemberDetail": {
"type": "structure",
"members": {
@@ -1056,6 +1131,104 @@
}
}
},
+ "com.amazonaws.detective#TagKey": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 128
+ },
+ "smithy.api#pattern": "^(?!aws:)[a-zA-Z+-=._:/]+$"
+ }
+ },
+ "com.amazonaws.detective#TagKeyList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.detective#TagKey"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 50
+ }
+ }
+ },
+ "com.amazonaws.detective#TagMap": {
+ "type": "map",
+ "key": {
+ "target": "com.amazonaws.detective#TagKey"
+ },
+ "value": {
+ "target": "com.amazonaws.detective#TagValue"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 50
+ }
+ }
+ },
+ "com.amazonaws.detective#TagResource": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.detective#TagResourceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.detective#TagResourceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.detective#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.detective#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.detective#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Applies tag values to a behavior graph.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/tags/{ResourceArn}",
+ "code": 204
+ }
+ }
+ },
+ "com.amazonaws.detective#TagResourceRequest": {
+ "type": "structure",
+ "members": {
+ "ResourceArn": {
+ "target": "com.amazonaws.detective#GraphArn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the behavior graph to assign the tags to.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "Tags": {
+ "target": "com.amazonaws.detective#TagMap",
+ "traits": {
+ "smithy.api#documentation": "The tag values to assign to the behavior graph.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.detective#TagResourceResponse": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.detective#TagValue": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ }
+ }
+ },
"com.amazonaws.detective#Timestamp": {
"type": "timestamp",
"traits": {
@@ -1091,6 +1264,59 @@
"com.amazonaws.detective#UnprocessedReason": {
"type": "string"
},
+ "com.amazonaws.detective#UntagResource": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.detective#UntagResourceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.detective#UntagResourceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.detective#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.detective#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.detective#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Removes tags from a behavior graph.
",
+ "smithy.api#http": {
+ "method": "DELETE",
+ "uri": "/tags/{ResourceArn}",
+ "code": 204
+ }
+ }
+ },
+ "com.amazonaws.detective#UntagResourceRequest": {
+ "type": "structure",
+ "members": {
+ "ResourceArn": {
+ "target": "com.amazonaws.detective#GraphArn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the behavior graph to remove the tags from.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "TagKeys": {
+ "target": "com.amazonaws.detective#TagKeyList",
+ "traits": {
+ "smithy.api#documentation": "The tag keys of the tags to remove from the behavior graph.
",
+ "smithy.api#httpQuery": "tagKeys",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.detective#UntagResourceResponse": {
+ "type": "structure",
+ "members": {}
+ },
"com.amazonaws.detective#ValidationException": {
"type": "structure",
"members": {
diff --git a/codegen/sdk-codegen/aws-models/directconnect.2012-10-25.json b/codegen/sdk-codegen/aws-models/directconnect.2012-10-25.json
index a23627cf393..e55be1a5f0d 100644
--- a/codegen/sdk-codegen/aws-models/directconnect.2012-10-25.json
+++ b/codegen/sdk-codegen/aws-models/directconnect.2012-10-25.json
@@ -485,6 +485,73 @@
}
}
},
+ "com.amazonaws.directconnect#AssociateMacSecKey": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.directconnect#AssociateMacSecKeyRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.directconnect#AssociateMacSecKeyResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.directconnect#DirectConnectClientException"
+ },
+ {
+ "target": "com.amazonaws.directconnect#DirectConnectServerException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Associates a MAC Security (MACsec) Connection Key Name (CKN)/ Connectivity Association Key (CAK) pair with an AWS Direct Connect dedicated connection.
\n You must supply either the secretARN,
or the CKN/CAK (ckn
and cak
) pair in the request.
\n For information about MAC Security (MACsec) key considerations, see MACsec pre-shared CKN/CAK key considerations in the AWS Direct Connect User Guide .
"
+ }
+ },
+ "com.amazonaws.directconnect#AssociateMacSecKeyRequest": {
+ "type": "structure",
+ "members": {
+ "connectionId": {
+ "target": "com.amazonaws.directconnect#ConnectionId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG (dxlag-xxxx).
\n You can use DescribeConnections or DescribeLags to retrieve connection ID.
",
+ "smithy.api#required": {}
+ }
+ },
+ "secretARN": {
+ "target": "com.amazonaws.directconnect#SecretARN",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key to associate with the dedicated connection.
\n You can use DescribeConnections or DescribeLags to retrieve the MAC Security (MACsec) secret key.
\n If you use this request parameter, you do not use the ckn
and cak
request parameters.
"
+ }
+ },
+ "ckn": {
+ "target": "com.amazonaws.directconnect#Ckn",
+ "traits": {
+ "smithy.api#documentation": "The MAC Security (MACsec) CKN to associate with the dedicated connection.
\n You can create the CKN/CAK pair using an industry standard tool.
\n The valid values are 64 hexadecimal characters (0-9, A-E).
\n If you use this request parameter, you must use the cak
request parameter and not use the secretARN
request parameter.
"
+ }
+ },
+ "cak": {
+ "target": "com.amazonaws.directconnect#Cak",
+ "traits": {
+ "smithy.api#documentation": "The MAC Security (MACsec) CAK to associate with the dedicated connection.
\n You can create the CKN/CAK pair using an industry standard tool.
\n The valid values are 64 hexadecimal characters (0-9, A-E).
\n If you use this request parameter, you must use the ckn
request parameter and not use the secretARN
request parameter.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.directconnect#AssociateMacSecKeyResponse": {
+ "type": "structure",
+ "members": {
+ "connectionId": {
+ "target": "com.amazonaws.directconnect#ConnectionId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG (dxlag-xxxx).
"
+ }
+ },
+ "macSecKeys": {
+ "target": "com.amazonaws.directconnect#MacSecKeyList",
+ "traits": {
+ "smithy.api#documentation": "The MAC Security (MACsec) security keys associated with the dedicated connection.
"
+ }
+ }
+ }
+ },
"com.amazonaws.directconnect#AssociateVirtualInterface": {
"type": "operation",
"input": {
@@ -559,6 +626,12 @@
"com.amazonaws.directconnect#AssociatedGatewayId": {
"type": "string"
},
+ "com.amazonaws.directconnect#AvailableMacSecPortSpeeds": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.directconnect#PortSpeed"
+ }
+ },
"com.amazonaws.directconnect#AvailablePortSpeeds": {
"type": "list",
"member": {
@@ -709,6 +782,12 @@
"com.amazonaws.directconnect#CIDR": {
"type": "string"
},
+ "com.amazonaws.directconnect#Cak": {
+ "type": "string"
+ },
+ "com.amazonaws.directconnect#Ckn": {
+ "type": "string"
+ },
"com.amazonaws.directconnect#ConfirmConnection": {
"type": "operation",
"input": {
@@ -1004,6 +1083,30 @@
"traits": {
"smithy.api#documentation": "The name of the service provider associated with the connection.
"
}
+ },
+ "macSecCapable": {
+ "target": "com.amazonaws.directconnect#MacSecCapable",
+ "traits": {
+ "smithy.api#documentation": "Indicates whether the connection supports MAC Security (MACsec).
"
+ }
+ },
+ "portEncryptionStatus": {
+ "target": "com.amazonaws.directconnect#PortEncryptionStatus",
+ "traits": {
+ "smithy.api#documentation": "The MAC Security (MACsec) port link status of the connection.
\n The valid values are Encryption Up
, which means that there is an active Connection Key Name, or Encryption Down
.
"
+ }
+ },
+ "encryptionMode": {
+ "target": "com.amazonaws.directconnect#EncryptionMode",
+ "traits": {
+ "smithy.api#documentation": "The MAC Security (MACsec) connection encryption mode.
\n The valid values are no_encrypt
, should_encrypt
, and must_encrypt
.
"
+ }
+ },
+ "macSecKeys": {
+ "target": "com.amazonaws.directconnect#MacSecKeyList",
+ "traits": {
+ "smithy.api#documentation": "The MAC Security (MACsec) security keys associated with the connection.
"
+ }
}
},
"traits": {
@@ -1194,6 +1297,12 @@
"traits": {
"smithy.api#documentation": "The name of the service provider associated with the requested connection.
"
}
+ },
+ "requestMACSec": {
+ "target": "com.amazonaws.directconnect#RequestMACSec",
+ "traits": {
+ "smithy.api#documentation": "Indicates whether you want the connection to support MAC Security (MACsec).
\n MAC Security (MACsec) is only available on dedicated connections. For information about MAC Security (MACsec) prerequisties, see MACsec prerequisties in the AWS Direct Connect User Guide .
"
+ }
}
}
},
@@ -1526,6 +1635,12 @@
"traits": {
"smithy.api#documentation": "The name of the service provider associated with the LAG.
"
}
+ },
+ "requestMACSec": {
+ "target": "com.amazonaws.directconnect#RequestMACSec",
+ "traits": {
+ "smithy.api#documentation": "Indicates whether the connection will support MAC Security (MACsec).
\n \n All connections in the LAG must be capable of supporting MAC Security (MACsec). For information about MAC Security (MACsec) prerequisties, see MACsec prerequisties in the AWS Direct Connect User Guide .
\n "
+ }
}
}
},
@@ -3105,7 +3220,8 @@
},
"traits": {
"smithy.api#documentation": "A server-side error occurred.
",
- "smithy.api#error": "client"
+ "smithy.api#error": "server",
+ "smithy.api#httpError": 500
}
},
"com.amazonaws.directconnect#DisassociateConnectionFromLag": {
@@ -3147,6 +3263,62 @@
}
}
},
+ "com.amazonaws.directconnect#DisassociateMacSecKey": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.directconnect#DisassociateMacSecKeyRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.directconnect#DisassociateMacSecKeyResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.directconnect#DirectConnectClientException"
+ },
+ {
+ "target": "com.amazonaws.directconnect#DirectConnectServerException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Removes the association between a MAC Security (MACsec) security key and an AWS Direct Connect dedicated connection.
"
+ }
+ },
+ "com.amazonaws.directconnect#DisassociateMacSecKeyRequest": {
+ "type": "structure",
+ "members": {
+ "connectionId": {
+ "target": "com.amazonaws.directconnect#ConnectionId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG (dxlag-xxxx).
\n You can use DescribeConnections or DescribeLags to retrieve connection ID.
",
+ "smithy.api#required": {}
+ }
+ },
+ "secretARN": {
+ "target": "com.amazonaws.directconnect#SecretARN",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key.
\n You can use DescribeConnections to retrieve the ARN of the MAC Security (MACsec) secret key.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.directconnect#DisassociateMacSecKeyResponse": {
+ "type": "structure",
+ "members": {
+ "connectionId": {
+ "target": "com.amazonaws.directconnect#ConnectionId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG (dxlag-xxxx).
"
+ }
+ },
+ "macSecKeys": {
+ "target": "com.amazonaws.directconnect#MacSecKeyList",
+ "traits": {
+ "smithy.api#documentation": "The MAC Security (MACsec) security keys no longer associated with the dedicated connection.
"
+ }
+ }
+ }
+ },
"com.amazonaws.directconnect#DuplicateTagKeysException": {
"type": "structure",
"members": {
@@ -3159,6 +3331,9 @@
"smithy.api#error": "client"
}
},
+ "com.amazonaws.directconnect#EncryptionMode": {
+ "type": "string"
+ },
"com.amazonaws.directconnect#EndTime": {
"type": "timestamp"
},
@@ -3468,6 +3643,24 @@
"traits": {
"smithy.api#documentation": "The name of the service provider associated with the LAG.
"
}
+ },
+ "macSecCapable": {
+ "target": "com.amazonaws.directconnect#MacSecCapable",
+ "traits": {
+ "smithy.api#documentation": "Indicates whether the LAG supports MAC Security (MACsec).
"
+ }
+ },
+ "encryptionMode": {
+ "target": "com.amazonaws.directconnect#EncryptionMode",
+ "traits": {
+ "smithy.api#documentation": "The LAG MAC Security (MACsec) encryption mode.
\n The valid values are no_encrypt
, should_encrypt
, and must_encrypt
.
"
+ }
+ },
+ "macSecKeys": {
+ "target": "com.amazonaws.directconnect#MacSecKeyList",
+ "traits": {
+ "smithy.api#documentation": "The MAC Security (MACsec) security keys associated with the LAG.
"
+ }
}
},
"traits": {
@@ -3679,6 +3872,12 @@
"traits": {
"smithy.api#documentation": "The name of the service provider for the location.
"
}
+ },
+ "availableMacSecPortSpeeds": {
+ "target": "com.amazonaws.directconnect#AvailableMacSecPortSpeeds",
+ "traits": {
+ "smithy.api#documentation": "The available MAC Security (MACsec) port speeds for the location.
"
+ }
}
},
"traits": {
@@ -3720,6 +3919,50 @@
"smithy.api#box": {}
}
},
+ "com.amazonaws.directconnect#MacSecCapable": {
+ "type": "boolean",
+ "traits": {
+ "smithy.api#box": {}
+ }
+ },
+ "com.amazonaws.directconnect#MacSecKey": {
+ "type": "structure",
+ "members": {
+ "secretARN": {
+ "target": "com.amazonaws.directconnect#SecretARN",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key.
"
+ }
+ },
+ "ckn": {
+ "target": "com.amazonaws.directconnect#Ckn",
+ "traits": {
+ "smithy.api#documentation": "The Connection Key Name (CKN) for the MAC Security secret key.
"
+ }
+ },
+ "state": {
+ "target": "com.amazonaws.directconnect#State",
+ "traits": {
+ "smithy.api#documentation": "The state of the MAC Security (MACsec) secret key.
\n The possible values are:
\n \n \n \n associating
: The MAC Security (MACsec) secret key is being validated and not yet associated with the connection or LAG.
\n \n \n \n associated
: The MAC Security (MACsec) secret key is validated and associated with the connection or LAG.
\n \n \n \n disassociating
: The MAC Security (MACsec) secret key is being disassociated from the connection or LAG
\n \n \n \n disassociated
: The MAC Security (MACsec) secret key is no longer associated with the connection or LAG.
\n \n "
+ }
+ },
+ "startOn": {
+ "target": "com.amazonaws.directconnect#StartOnDate",
+ "traits": {
+ "smithy.api#documentation": "The date that the MAC Security (MACsec) secret key takes effect. The value is displayed in UTC format.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Information about the MAC Security (MACsec) secret key.
"
+ }
+ },
+ "com.amazonaws.directconnect#MacSecKeyList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.directconnect#MacSecKey"
+ }
+ },
"com.amazonaws.directconnect#MaxResultSetSize": {
"type": "integer",
"traits": {
@@ -4194,6 +4437,9 @@
{
"target": "com.amazonaws.directconnect#AssociateHostedConnection"
},
+ {
+ "target": "com.amazonaws.directconnect#AssociateMacSecKey"
+ },
{
"target": "com.amazonaws.directconnect#AssociateVirtualInterface"
},
@@ -4314,6 +4560,9 @@
{
"target": "com.amazonaws.directconnect#DisassociateConnectionFromLag"
},
+ {
+ "target": "com.amazonaws.directconnect#DisassociateMacSecKey"
+ },
{
"target": "com.amazonaws.directconnect#ListVirtualInterfaceTestHistory"
},
@@ -4329,6 +4578,9 @@
{
"target": "com.amazonaws.directconnect#UntagResource"
},
+ {
+ "target": "com.amazonaws.directconnect#UpdateConnection"
+ },
{
"target": "com.amazonaws.directconnect#UpdateDirectConnectGatewayAssociation"
},
@@ -4367,6 +4619,9 @@
"com.amazonaws.directconnect#PartnerName": {
"type": "string"
},
+ "com.amazonaws.directconnect#PortEncryptionStatus": {
+ "type": "string"
+ },
"com.amazonaws.directconnect#PortSpeed": {
"type": "string"
},
@@ -4382,6 +4637,12 @@
"com.amazonaws.directconnect#Region": {
"type": "string"
},
+ "com.amazonaws.directconnect#RequestMACSec": {
+ "type": "boolean",
+ "traits": {
+ "smithy.api#box": {}
+ }
+ },
"com.amazonaws.directconnect#ResourceArn": {
"type": "string"
},
@@ -4440,6 +4701,9 @@
"com.amazonaws.directconnect#RouterConfig": {
"type": "string"
},
+ "com.amazonaws.directconnect#SecretARN": {
+ "type": "string"
+ },
"com.amazonaws.directconnect#StartBgpFailoverTest": {
"type": "operation",
"input": {
@@ -4495,9 +4759,15 @@
}
}
},
+ "com.amazonaws.directconnect#StartOnDate": {
+ "type": "string"
+ },
"com.amazonaws.directconnect#StartTime": {
"type": "timestamp"
},
+ "com.amazonaws.directconnect#State": {
+ "type": "string"
+ },
"com.amazonaws.directconnect#StateChangeError": {
"type": "string"
},
@@ -4715,6 +4985,50 @@
"type": "structure",
"members": {}
},
+ "com.amazonaws.directconnect#UpdateConnection": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.directconnect#UpdateConnectionRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.directconnect#Connection"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.directconnect#DirectConnectClientException"
+ },
+ {
+ "target": "com.amazonaws.directconnect#DirectConnectServerException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Updates the AWS Direct Connect dedicated connection configuration.
\n You can update the following parameters for a connection:
\n "
+ }
+ },
+ "com.amazonaws.directconnect#UpdateConnectionRequest": {
+ "type": "structure",
+ "members": {
+ "connectionId": {
+ "target": "com.amazonaws.directconnect#ConnectionId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the dedicated connection.
\n You can use DescribeConnections to retrieve the connection ID.
",
+ "smithy.api#required": {}
+ }
+ },
+ "connectionName": {
+ "target": "com.amazonaws.directconnect#ConnectionName",
+ "traits": {
+ "smithy.api#documentation": "The name of the connection.
"
+ }
+ },
+ "encryptionMode": {
+ "target": "com.amazonaws.directconnect#EncryptionMode",
+ "traits": {
+ "smithy.api#documentation": "The connection MAC Security (MACsec) encryption mode.
\n The valid values are no_encrypt
, should_encrypt
, and must_encrypt
.
"
+ }
+ }
+ }
+ },
"com.amazonaws.directconnect#UpdateDirectConnectGatewayAssociation": {
"type": "operation",
"input": {
@@ -4783,7 +5097,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Updates the attributes of the specified link aggregation group (LAG).
\n You can update the following attributes:
\n \n When you create a LAG, the default value for the minimum number of operational\n connections is zero (0). If you update this value and the number of operational\n connections falls below the specified value, the LAG automatically goes down to avoid\n over-utilization of the remaining connections. Adjust this value with care, as it\n could force the LAG down if it is set higher than the current number of operational \n connections.
"
+ "smithy.api#documentation": "Updates the attributes of the specified link aggregation group (LAG).
\n You can update the following LAG attributes:
\n \n \n The name of the LAG.
\n \n \n The value for the minimum number of connections that must be operational\n for the LAG itself to be operational.
\n \n \n The LAG's MACsec encryption mode.
\n AWS assigns this value to each connection which is part of the LAG.
\n \n \n The tags
\n \n \n \n If you adjust the threshold value for the minimum number of operational connections, ensure\n that the new value does not cause the LAG to fall below the threshold and become\n non-operational.
\n "
}
},
"com.amazonaws.directconnect#UpdateLagRequest": {
@@ -4807,6 +5121,12 @@
"traits": {
"smithy.api#documentation": "The minimum number of physical connections that must be operational for the LAG itself to be operational.
"
}
+ },
+ "encryptionMode": {
+ "target": "com.amazonaws.directconnect#EncryptionMode",
+ "traits": {
+ "smithy.api#documentation": "The LAG MAC Security (MACsec) encryption mode.
\n AWS applies the value to all connections which are part of the LAG.
"
+ }
}
}
},
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 57d9d5379b3..91d8a8ead98 100644
--- a/codegen/sdk-codegen/aws-models/ec2.2016-11-15.json
+++ b/codegen/sdk-codegen/aws-models/ec2.2016-11-15.json
@@ -1363,6 +1363,9 @@
{
"target": "com.amazonaws.ec2#CreatePlacementGroup"
},
+ {
+ "target": "com.amazonaws.ec2#CreateReplaceRootVolumeTask"
+ },
{
"target": "com.amazonaws.ec2#CreateReservedInstancesListing"
},
@@ -1849,6 +1852,9 @@
{
"target": "com.amazonaws.ec2#DescribeRegions"
},
+ {
+ "target": "com.amazonaws.ec2#DescribeReplaceRootVolumeTasks"
+ },
{
"target": "com.amazonaws.ec2#DescribeReservedInstances"
},
@@ -2014,6 +2020,9 @@
{
"target": "com.amazonaws.ec2#DisableFastSnapshotRestores"
},
+ {
+ "target": "com.amazonaws.ec2#DisableSerialConsoleAccess"
+ },
{
"target": "com.amazonaws.ec2#DisableTransitGatewayRouteTablePropagation"
},
@@ -2059,6 +2068,9 @@
{
"target": "com.amazonaws.ec2#EnableFastSnapshotRestores"
},
+ {
+ "target": "com.amazonaws.ec2#EnableSerialConsoleAccess"
+ },
{
"target": "com.amazonaws.ec2#EnableTransitGatewayRouteTablePropagation"
},
@@ -2134,6 +2146,9 @@
{
"target": "com.amazonaws.ec2#GetReservedInstancesExchangeQuote"
},
+ {
+ "target": "com.amazonaws.ec2#GetSerialConsoleAccessStatus"
+ },
{
"target": "com.amazonaws.ec2#GetTransitGatewayAttachmentPropagations"
},
@@ -3335,7 +3350,7 @@
"target": "com.amazonaws.ec2#AssociateEnclaveCertificateIamRoleResult"
},
"traits": {
- "smithy.api#documentation": "Associates an AWS Identity and Access Management (IAM) role with an AWS Certificate Manager (ACM) certificate. \n\t\t\tThis enables the certificate to be used by the ACM for Nitro Enclaves application inside an enclave. For more \n\t\t\tinformation, see AWS Certificate \n\t\t\t\tManager for Nitro Enclaves in the AWS Nitro Enclaves User Guide .
\n\t\t\n\t\t When the IAM role is associated with the ACM certificate, places the certificate, certificate chain, and encrypted \n\t\t\tprivate key in an Amazon S3 bucket that only the associated IAM role can access. The private key of the certificate \n\t\t\tis encrypted with an AWS-managed KMS customer master (CMK) that has an attached attestation-based CMK policy.
\n\t\t\n\t\t To enable the IAM role to access the Amazon S3 object, you must grant it permission to call s3:GetObject
\n\t\t\ton the Amazon S3 bucket returned by the command. To enable the IAM role to access the AWS KMS CMK, you must \n\t\t\tgrant it permission to call kms:Decrypt
on AWS KMS CMK returned by the command. For more \n\t\t\tinformation, see \n\t\t\t\tGrant the role permission to access the certificate and encryption key in the \n\t\t\tAWS Nitro Enclaves User Guide .
"
+ "smithy.api#documentation": "Associates an AWS Identity and Access Management (IAM) role with an AWS Certificate Manager (ACM) certificate. \n\t\t\tThis enables the certificate to be used by the ACM for Nitro Enclaves application inside an enclave. For more \n\t\t\tinformation, see AWS Certificate \n\t\t\t\tManager for Nitro Enclaves in the AWS Nitro Enclaves User Guide .
\n\t\t\n\t\t When the IAM role is associated with the ACM certificate, the certificate, certificate chain, and encrypted \n\t\t\tprivate key are placed in an Amazon S3 bucket that only the associated IAM role can access. The private key of the certificate \n\t\t\tis encrypted with an AWS-managed KMS customer master (CMK) that has an attached attestation-based CMK policy.
\n\t\t\n\t\t To enable the IAM role to access the Amazon S3 object, you must grant it permission to call s3:GetObject
\n\t\t\ton the Amazon S3 bucket returned by the command. To enable the IAM role to access the AWS KMS CMK, you must \n\t\t\tgrant it permission to call kms:Decrypt
on the AWS KMS CMK returned by the command. For more \n\t\t\tinformation, see \n\t\t\t\tGrant the role permission to access the certificate and encryption key in the \n\t\t\tAWS Nitro Enclaves User Guide .
"
}
},
"com.amazonaws.ec2#AssociateEnclaveCertificateIamRoleRequest": {
@@ -4978,6 +4993,45 @@
"com.amazonaws.ec2#Boolean": {
"type": "boolean"
},
+ "com.amazonaws.ec2#BootModeType": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "legacy-bios",
+ "name": "legacy_bios"
+ },
+ {
+ "value": "uefi",
+ "name": "uefi"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.ec2#BootModeTypeList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.ec2#BootModeType",
+ "traits": {
+ "smithy.api#xmlName": "item"
+ }
+ }
+ },
+ "com.amazonaws.ec2#BootModeValues": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "legacy-bios",
+ "name": "legacy_bios"
+ },
+ {
+ "value": "uefi",
+ "name": "uefi"
+ }
+ ]
+ }
+ },
"com.amazonaws.ec2#BundleId": {
"type": "string"
},
@@ -9806,18 +9860,18 @@
"smithy.api#required": {}
}
},
+ "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
.
"
+ }
+ },
"LocalGatewayVirtualInterfaceGroupId": {
"target": "com.amazonaws.ec2#LocalGatewayVirtualInterfaceGroupId",
"traits": {
"smithy.api#documentation": "The ID of the virtual interface group.
",
"smithy.api#required": {}
}
- },
- "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
.
"
- }
}
}
},
@@ -10538,6 +10592,69 @@
}
}
},
+ "com.amazonaws.ec2#CreateReplaceRootVolumeTask": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.ec2#CreateReplaceRootVolumeTaskRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.ec2#CreateReplaceRootVolumeTaskResult"
+ },
+ "traits": {
+ "smithy.api#documentation": "Creates a root volume replacement task for an Amazon EC2 instance. The root volume \n can either be restored to its initial launch state, or it can be restored using a \n specific snapshot.
\n \n For more information, see Replace a root volume \n in the Amazon Elastic Compute Cloud User Guide .
"
+ }
+ },
+ "com.amazonaws.ec2#CreateReplaceRootVolumeTaskRequest": {
+ "type": "structure",
+ "members": {
+ "InstanceId": {
+ "target": "com.amazonaws.ec2#InstanceId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the instance for which to replace the root volume.
",
+ "smithy.api#required": {}
+ }
+ },
+ "SnapshotId": {
+ "target": "com.amazonaws.ec2#SnapshotId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the snapshot from which to restore the replacement root volume. If you want to \n restore the volume to the initial launch state, omit this parameter.
"
+ }
+ },
+ "ClientToken": {
+ "target": "com.amazonaws.ec2#String",
+ "traits": {
+ "smithy.api#documentation": "Unique, case-sensitive identifier you provide to ensure the idempotency of the request. \n If you do not specify a client token, a randomly generated token is used for the request \n to ensure idempotency. For more information, see Ensuring Idempotency .
",
+ "smithy.api#idempotencyToken": {}
+ }
+ },
+ "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
.
"
+ }
+ },
+ "TagSpecifications": {
+ "target": "com.amazonaws.ec2#TagSpecificationList",
+ "traits": {
+ "smithy.api#documentation": "The tags to apply to the root volume replacement task.
",
+ "smithy.api#xmlName": "TagSpecification"
+ }
+ }
+ }
+ },
+ "com.amazonaws.ec2#CreateReplaceRootVolumeTaskResult": {
+ "type": "structure",
+ "members": {
+ "ReplaceRootVolumeTask": {
+ "target": "com.amazonaws.ec2#ReplaceRootVolumeTask",
+ "traits": {
+ "aws.protocols#ec2QueryName": "ReplaceRootVolumeTask",
+ "smithy.api#documentation": "Information about the root volume replacement task.
",
+ "smithy.api#xmlName": "replaceRootVolumeTask"
+ }
+ }
+ }
+ },
"com.amazonaws.ec2#CreateReservedInstancesListing": {
"type": "operation",
"input": {
@@ -19589,7 +19706,7 @@
"Filters": {
"target": "com.amazonaws.ec2#FilterList",
"traits": {
- "smithy.api#documentation": "One or more filters. Filter names and values are case-sensitive.
\n \n \n \n auto-recovery-supported
- Indicates whether auto recovery is supported\n (true
| false
).
\n \n \n \n bare-metal
- Indicates whether it is a bare metal instance type\n (true
| false
).
\n \n \n \n burstable-performance-supported
- Indicates whether it is a burstable\n performance instance type (true
| false
).
\n \n \n \n current-generation
- Indicates whether this instance type is the latest\n generation instance type of an instance family (true
| false
).
\n \n \n \n ebs-info.ebs-optimized-info.baseline-bandwidth-in-mbps
- The baseline\n bandwidth performance for an EBS-optimized instance type, in Mbps.
\n \n \n \n ebs-info.ebs-optimized-info.baseline-iops
- The baseline input/output storage\n operations per second for an EBS-optimized instance type.
\n \n \n \n ebs-info.ebs-optimized-info.baseline-throughput-in-mbps
- The baseline\n throughput performance for an EBS-optimized instance type, in MB/s.
\n \n \n \n ebs-info.ebs-optimized-info.maximum-bandwidth-in-mbps
- The maximum bandwidth\n performance for an EBS-optimized instance type, in Mbps.
\n \n \n \n ebs-info.ebs-optimized-info.maximum-iops
- The maximum input/output storage\n operations per second for an EBS-optimized instance type.
\n \n \n \n ebs-info.ebs-optimized-info.maximum-throughput-in-mbps
- The maximum\n throughput performance for an EBS-optimized instance type, in MB/s.
\n \n \n \n ebs-info.ebs-optimized-support
- Indicates whether the instance type is\n EBS-optimized (supported
| unsupported
|\n default
).
\n \n \n \n ebs-info.encryption-support
- Indicates whether EBS encryption is supported\n (supported
| unsupported
).
\n \n \n \n ebs-info.nvme-support
- Indicates whether non-volatile memory express (NVMe)\n is supported for EBS volumes (required
| supported
|\n unsupported
).
\n \n \n \n free-tier-eligible
- Indicates whether the instance type is eligible to use\n in the free tier (true
| false
).
\n \n \n \n hibernation-supported
- Indicates whether On-Demand hibernation is supported\n (true
| false
).
\n \n \n \n hypervisor
- The hypervisor (nitro
| xen
).
\n \n \n \n instance-storage-info.disk.count
- The number of local disks.
\n \n \n \n instance-storage-info.disk.size-in-gb
- The storage size of each instance storage disk, in\n GB.
\n \n \n \n instance-storage-info.disk.type
- The storage technology for the local\n instance storage disks (hdd
| ssd
).
\n \n \n \n instance-storage-info.nvme-support
- Indicates whether non-volatile memory\n express (NVMe) is supported for instance store (required
| supported
)\n | unsupported
).
\n \n \n \n instance-storage-info.total-size-in-gb
- The total amount of storage available from all local\n instance storage, in GB.
\n \n \n \n instance-storage-supported
- Indicates whether the instance type has local\n instance storage (true
| false
).
\n \n \n \n instance-type
- The instance type (for example c5.2xlarge
or\n c5*).
\n \n \n \n memory-info.size-in-mib
- The memory size.
\n \n \n \n network-info.efa-supported
- Indicates whether the instance type supports\n Elastic Fabric Adapter (EFA) (true
| false
).
\n \n \n \n network-info.ena-support
- Indicates whether Elastic Network Adapter (ENA) is\n supported or required (required
| supported
|\n unsupported
).
\n \n \n \n network-info.ipv4-addresses-per-interface
- The maximum number of private IPv4 addresses per\n network interface.
\n \n \n \n network-info.ipv6-addresses-per-interface
- The maximum number of private IPv6 addresses per\n network interface.
\n \n \n \n network-info.ipv6-supported
- Indicates whether the instance type supports\n IPv6 (true
| false
).
\n \n \n \n network-info.maximum-network-interfaces
- The maximum number of network interfaces per instance.
\n \n \n \n network-info.network-performance
- The network performance (for example, \"25\n Gigabit\").
\n \n \n \n processor-info.supported-architecture
- The CPU architecture\n (arm64
| i386
| x86_64
).
\n \n \n \n processor-info.sustained-clock-speed-in-ghz
- The CPU clock speed, in GHz.
\n \n \n \n supported-root-device-type
- The root device type (ebs
|\n instance-store
).
\n \n \n \n supported-usage-class
- The usage class (on-demand
|\n spot
).
\n \n \n \n supported-virtualization-type
- The virtualization type (hvm
|\n paravirtual
).
\n \n \n \n vcpu-info.default-cores
- The default number of cores for the instance type.
\n \n \n \n vcpu-info.default-threads-per-core
- The default number of threads per core for the instance\n type.
\n \n \n \n vcpu-info.default-vcpus
- The default number of vCPUs for the instance type.
\n \n \n \n vcpu-info.valid-cores
- The number of cores that can be configured for the instance type.
\n \n \n \n vcpu-info.valid-threads-per-core
- The number of threads per core that can be configured for the instance type.\n For example, \"1\" or \"1,2\".
\n \n ",
+ "smithy.api#documentation": "One or more filters. Filter names and values are case-sensitive.
\n \n \n \n auto-recovery-supported
- Indicates whether auto recovery is supported\n (true
| false
).
\n \n \n \n bare-metal
- Indicates whether it is a bare metal instance type\n (true
| false
).
\n \n \n \n burstable-performance-supported
- Indicates whether it is a burstable\n performance instance type (true
| false
).
\n \n \n \n current-generation
- Indicates whether this instance type is the latest\n generation instance type of an instance family (true
| false
).
\n \n \n \n ebs-info.ebs-optimized-info.baseline-bandwidth-in-mbps
- The baseline\n bandwidth performance for an EBS-optimized instance type, in Mbps.
\n \n \n \n ebs-info.ebs-optimized-info.baseline-iops
- The baseline input/output storage\n operations per second for an EBS-optimized instance type.
\n \n \n \n ebs-info.ebs-optimized-info.baseline-throughput-in-mbps
- The baseline\n throughput performance for an EBS-optimized instance type, in MB/s.
\n \n \n \n ebs-info.ebs-optimized-info.maximum-bandwidth-in-mbps
- The maximum bandwidth\n performance for an EBS-optimized instance type, in Mbps.
\n \n \n \n ebs-info.ebs-optimized-info.maximum-iops
- The maximum input/output storage\n operations per second for an EBS-optimized instance type.
\n \n \n \n ebs-info.ebs-optimized-info.maximum-throughput-in-mbps
- The maximum\n throughput performance for an EBS-optimized instance type, in MB/s.
\n \n \n \n ebs-info.ebs-optimized-support
- Indicates whether the instance type is\n EBS-optimized (supported
| unsupported
|\n default
).
\n \n \n \n ebs-info.encryption-support
- Indicates whether EBS encryption is supported\n (supported
| unsupported
).
\n \n \n \n ebs-info.nvme-support
- Indicates whether non-volatile memory express (NVMe)\n is supported for EBS volumes (required
| supported
|\n unsupported
).
\n \n \n \n free-tier-eligible
- Indicates whether the instance type is eligible to use\n in the free tier (true
| false
).
\n \n \n \n hibernation-supported
- Indicates whether On-Demand hibernation is supported\n (true
| false
).
\n \n \n \n hypervisor
- The hypervisor (nitro
| xen
).
\n \n \n \n instance-storage-info.disk.count
- The number of local disks.
\n \n \n \n instance-storage-info.disk.size-in-gb
- The storage size of each instance storage disk, in\n GB.
\n \n \n \n instance-storage-info.disk.type
- The storage technology for the local\n instance storage disks (hdd
| ssd
).
\n \n \n \n instance-storage-info.nvme-support
- Indicates whether non-volatile memory\n express (NVMe) is supported for instance store (required
| supported
)\n | unsupported
).
\n \n \n \n instance-storage-info.total-size-in-gb
- The total amount of storage available from all local\n instance storage, in GB.
\n \n \n \n instance-storage-supported
- Indicates whether the instance type has local\n instance storage (true
| false
).
\n \n \n \n instance-type
- The instance type (for example c5.2xlarge
or\n c5*).
\n \n \n \n memory-info.size-in-mib
- The memory size.
\n \n \n \n network-info.efa-info.maximum-efa-interfaces
- The maximum number of Elastic \n Fabric Adapters (EFAs) per instance. (true
| false
).
\n \n \n \n network-info.efa-supported
- Indicates whether the instance type supports\n Elastic Fabric Adapter (EFA) (true
| false
).
\n \n \n \n network-info.ena-support
- Indicates whether Elastic Network Adapter (ENA) is\n supported or required (required
| supported
|\n unsupported
).
\n \n \n \n network-info.ipv4-addresses-per-interface
- The maximum number of private IPv4 addresses per\n network interface.
\n \n \n \n network-info.ipv6-addresses-per-interface
- The maximum number of private IPv6 addresses per\n network interface.
\n \n \n \n network-info.ipv6-supported
- Indicates whether the instance type supports\n IPv6 (true
| false
).
\n \n \n \n network-info.maximum-network-interfaces
- The maximum number of network interfaces per instance.
\n \n \n \n network-info.network-performance
- The network performance (for example, \"25\n Gigabit\").
\n \n \n \n processor-info.supported-architecture
- The CPU architecture\n (arm64
| i386
| x86_64
).
\n \n \n \n processor-info.sustained-clock-speed-in-ghz
- The CPU clock speed, in GHz.
\n \n \n \n supported-boot-mode
- The boot mode (legacy-bios
|\n uefi
).
\n \n \n \n supported-root-device-type
- The root device type (ebs
|\n instance-store
).
\n \n \n \n supported-usage-class
- The usage class (on-demand
|\n spot
).
\n \n \n \n supported-virtualization-type
- The virtualization type (hvm
|\n paravirtual
).
\n \n \n \n vcpu-info.default-cores
- The default number of cores for the instance type.
\n \n \n \n vcpu-info.default-threads-per-core
- The default number of threads per core for the instance\n type.
\n \n \n \n vcpu-info.default-vcpus
- The default number of vCPUs for the instance type.
\n \n \n \n vcpu-info.valid-cores
- The number of cores that can be configured for the instance type.
\n \n \n \n vcpu-info.valid-threads-per-core
- The number of threads per core that can be configured for the instance type.\n For example, \"1\" or \"1,2\".
\n \n ",
"smithy.api#xmlName": "Filter"
}
},
@@ -19724,7 +19841,7 @@
"Filters": {
"target": "com.amazonaws.ec2#FilterList",
"traits": {
- "smithy.api#documentation": "The filters.
\n \n \n \n affinity
- The affinity setting for an instance running on a\n Dedicated Host (default
| host
).
\n \n \n \n architecture
- The instance architecture (i386
|\n x86_64
| arm64
).
\n \n \n \n availability-zone
- The Availability Zone of the instance.
\n \n \n \n block-device-mapping.attach-time
- The attach time for an EBS\n volume mapped to the instance, for example,\n 2010-09-15T17:15:20.000Z
.
\n \n \n \n block-device-mapping.delete-on-termination
- A Boolean that\n indicates whether the EBS volume is deleted on instance termination.
\n \n \n \n block-device-mapping.device-name
- The device name specified in the\n block device mapping (for example, /dev/sdh
or\n xvdh
).
\n \n \n \n block-device-mapping.status
- The status for the EBS volume\n (attaching
| attached
| detaching
|\n detached
).
\n \n \n \n block-device-mapping.volume-id
- The volume ID of the EBS\n volume.
\n \n \n \n client-token
- The idempotency token you provided when you launched\n the instance.
\n \n \n \n dns-name
- The public DNS name of the instance.
\n \n \n \n group-id
- The ID of the security group for the instance.\n EC2-Classic only.
\n \n \n \n group-name
- The name of the security group for the instance.\n EC2-Classic only.
\n \n \n \n hibernation-options.configured
- A Boolean that indicates whether\n the instance is enabled for hibernation. A value of true
means that\n the instance is enabled for hibernation.
\n \n \n \n host-id
- The ID of the Dedicated Host on which the instance is\n running, if applicable.
\n \n \n \n hypervisor
- The hypervisor type of the instance\n (ovm
| xen
). The value xen
\n is used for both Xen and Nitro hypervisors.
\n \n \n \n iam-instance-profile.arn
- The instance profile associated with\n the instance. Specified as an ARN.
\n \n \n \n image-id
- The ID of the image used to launch the\n instance.
\n \n \n \n instance-id
- The ID of the instance.
\n \n \n \n instance-lifecycle
- Indicates whether this is a Spot Instance or\n a Scheduled Instance (spot
| scheduled
).
\n \n \n \n instance-state-code
- The state of the instance, as a 16-bit\n unsigned integer. The high byte is used for internal purposes and should be\n ignored. The low byte is set based on the state represented. The valid values\n are: 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64\n (stopping), and 80 (stopped).
\n \n \n \n instance-state-name
- The state of the instance\n (pending
| running
| shutting-down
|\n terminated
| stopping
|\n stopped
).
\n \n \n \n instance-type
- The type of instance (for example,\n t2.micro
).
\n \n \n \n instance.group-id
- The ID of the security group for the\n instance.
\n \n \n \n instance.group-name
- The name of the security group for the\n instance.
\n \n \n \n ip-address
- The public IPv4 address of the instance.
\n \n \n \n kernel-id
- The kernel ID.
\n \n \n \n key-name
- The name of the key pair used when the instance was\n launched.
\n \n \n \n launch-index
- When launching multiple instances, this is the\n index for the instance in the launch group (for example, 0, 1, 2, and so on).
\n \n \n \n launch-time
- The time when the instance was launched.
\n \n \n \n metadata-options.http-tokens
- The metadata request authorization\n state (optional
| required
)
\n \n \n \n metadata-options.http-put-response-hop-limit
- The http metadata\n request put response hop limit (integer, possible values 1
to\n 64
)
\n \n \n \n metadata-options.http-endpoint
- Enable or disable metadata\n access on http endpoint (enabled
| disabled
)
\n \n \n \n monitoring-state
- Indicates whether detailed monitoring is\n enabled (disabled
| enabled
).
\n \n \n \n network-interface.addresses.private-ip-address
- The private IPv4\n address associated with the network interface.
\n \n \n \n network-interface.addresses.primary
- Specifies whether the IPv4\n address of the network interface is the primary private IPv4 address.
\n \n \n \n network-interface.addresses.association.public-ip
- The ID of the\n association of an Elastic IP address (IPv4) with a network interface.
\n \n \n \n network-interface.addresses.association.ip-owner-id
- The owner\n ID of the private IPv4 address associated with the network interface.
\n \n \n \n network-interface.association.public-ip
- The address of the\n Elastic IP address (IPv4) bound to the network interface.
\n \n \n \n network-interface.association.ip-owner-id
- The owner of the\n Elastic IP address (IPv4) associated with the network interface.
\n \n \n \n network-interface.association.allocation-id
- The allocation ID\n returned when you allocated the Elastic IP address (IPv4) for your network\n interface.
\n \n \n \n network-interface.association.association-id
- The association ID\n returned when the network interface was associated with an IPv4 address.
\n \n \n \n network-interface.attachment.attachment-id
- The ID of the\n interface attachment.
\n \n \n \n network-interface.attachment.instance-id
- The ID of the instance\n to which the network interface is attached.
\n \n \n \n network-interface.attachment.instance-owner-id
- The owner ID of\n the instance to which the network interface is attached.
\n \n \n \n network-interface.attachment.device-index
- The device index to\n which the network interface is attached.
\n \n \n \n network-interface.attachment.status
- The status of the\n attachment (attaching
| attached
|\n detaching
| detached
).
\n \n \n \n network-interface.attachment.attach-time
- The time that the\n network interface was attached to an instance.
\n \n \n \n network-interface.attachment.delete-on-termination
- Specifies\n whether the attachment is deleted when an instance is terminated.
\n \n \n \n network-interface.availability-zone
- The Availability Zone for\n the network interface.
\n \n \n \n network-interface.description
- The description of the network\n interface.
\n \n \n \n network-interface.group-id
- The ID of a security group\n associated with the network interface.
\n \n \n \n network-interface.group-name
- The name of a security group\n associated with the network interface.
\n \n \n \n network-interface.ipv6-addresses.ipv6-address
- The IPv6 address\n associated with the network interface.
\n \n \n \n network-interface.mac-address
- The MAC address of the network\n interface.
\n \n \n \n network-interface.network-interface-id
- The ID of the network\n interface.
\n \n \n \n network-interface.owner-id
- The ID of the owner of the network\n interface.
\n \n \n \n network-interface.private-dns-name
- The private DNS name of the\n network interface.
\n \n \n \n network-interface.requester-id
- The requester ID for the network\n interface.
\n \n \n \n network-interface.requester-managed
- Indicates whether the\n network interface is being managed by AWS.
\n \n \n \n network-interface.status
- The status of the network interface\n (available
) | in-use
).
\n \n \n \n network-interface.source-dest-check
- Whether the network\n interface performs source/destination checking. A value of true
\n means that checking is enabled, and false
means that checking is\n disabled. The value must be false
for the network interface to\n perform network address translation (NAT) in your VPC.
\n \n \n \n network-interface.subnet-id
- The ID of the subnet for the\n network interface.
\n \n \n \n network-interface.vpc-id
- The ID of the VPC for the network\n interface.
\n \n \n \n owner-id
- The AWS account ID of the instance owner.
\n \n \n \n placement-group-name
- The name of the placement group for the\n instance.
\n \n \n \n placement-partition-number
- The partition in which the instance is\n located.
\n \n \n \n platform
- The platform. To list only Windows instances, use\n windows
.
\n \n \n \n private-dns-name
- The private IPv4 DNS name of the\n instance.
\n \n \n \n private-ip-address
- The private IPv4 address of the\n instance.
\n \n \n \n product-code
- The product code associated with the AMI used to\n launch the instance.
\n \n \n \n product-code.type
- The type of product code (devpay
|\n marketplace
).
\n \n \n \n ramdisk-id
- The RAM disk ID.
\n \n \n \n reason
- The reason for the current state of the instance (for\n example, shows \"User Initiated [date]\" when you stop or terminate the instance).\n Similar to the state-reason-code filter.
\n \n \n \n requester-id
- The ID of the entity that launched the instance on\n your behalf (for example, AWS Management Console, Auto Scaling, and so\n on).
\n \n \n \n reservation-id
- The ID of the instance's reservation. A\n reservation ID is created any time you launch an instance. A reservation ID has\n a one-to-one relationship with an instance launch request, but can be associated\n with more than one instance if you launch multiple instances using the same\n launch request. For example, if you launch one instance, you get one reservation\n ID. If you launch ten instances using the same launch request, you also get one\n reservation ID.
\n \n \n \n root-device-name
- The device name of the root device volume (for\n example, /dev/sda1
).
\n \n \n \n root-device-type
- The type of the root device volume\n (ebs
| instance-store
).
\n \n \n \n source-dest-check
- Indicates whether the instance performs\n source/destination checking. A value of true
means that checking is\n enabled, and false
means that checking is disabled. The value must\n be false
for the instance to perform network address translation\n (NAT) in your VPC.
\n \n \n \n spot-instance-request-id
- The ID of the Spot Instance\n request.
\n \n \n \n state-reason-code
- The reason code for the state change.
\n \n \n \n state-reason-message
- A message that describes the state\n change.
\n \n \n \n subnet-id
- The ID of the subnet for the instance.
\n \n \n \n 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.\n 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.
\n \n \n \n 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.
\n \n \n \n tenancy
- The tenancy of an instance (dedicated
|\n default
| host
).
\n \n \n \n virtualization-type
- The virtualization type of the instance\n (paravirtual
| hvm
).
\n \n \n \n vpc-id
- The ID of the VPC that the instance is running in.
\n \n ",
+ "smithy.api#documentation": "The filters.
\n \n \n \n affinity
- The affinity setting for an instance running on a\n Dedicated Host (default
| host
).
\n \n \n \n architecture
- The instance architecture (i386
|\n x86_64
| arm64
).
\n \n \n \n availability-zone
- The Availability Zone of the instance.
\n \n \n \n block-device-mapping.attach-time
- The attach time for an EBS\n volume mapped to the instance, for example,\n 2010-09-15T17:15:20.000Z
.
\n \n \n \n block-device-mapping.delete-on-termination
- A Boolean that\n indicates whether the EBS volume is deleted on instance termination.
\n \n \n \n block-device-mapping.device-name
- The device name specified in the\n block device mapping (for example, /dev/sdh
or\n xvdh
).
\n \n \n \n block-device-mapping.status
- The status for the EBS volume\n (attaching
| attached
| detaching
|\n detached
).
\n \n \n \n block-device-mapping.volume-id
- The volume ID of the EBS\n volume.
\n \n \n \n client-token
- The idempotency token you provided when you launched\n the instance.
\n \n \n \n dns-name
- The public DNS name of the instance.
\n \n \n \n group-id
- The ID of the security group for the instance.\n EC2-Classic only.
\n \n \n \n group-name
- The name of the security group for the instance.\n EC2-Classic only.
\n \n \n \n hibernation-options.configured
- A Boolean that indicates whether\n the instance is enabled for hibernation. A value of true
means that\n the instance is enabled for hibernation.
\n \n \n \n host-id
- The ID of the Dedicated Host on which the instance is\n running, if applicable.
\n \n \n \n hypervisor
- The hypervisor type of the instance\n (ovm
| xen
). The value xen
\n is used for both Xen and Nitro hypervisors.
\n \n \n \n iam-instance-profile.arn
- The instance profile associated with\n the instance. Specified as an ARN.
\n \n \n \n image-id
- The ID of the image used to launch the\n instance.
\n \n \n \n instance-id
- The ID of the instance.
\n \n \n \n instance-lifecycle
- Indicates whether this is a Spot Instance or\n a Scheduled Instance (spot
| scheduled
).
\n \n \n \n instance-state-code
- The state of the instance, as a 16-bit\n unsigned integer. The high byte is used for internal purposes and should be\n ignored. The low byte is set based on the state represented. The valid values\n are: 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64\n (stopping), and 80 (stopped).
\n \n \n \n instance-state-name
- The state of the instance\n (pending
| running
| shutting-down
|\n terminated
| stopping
|\n stopped
).
\n \n \n \n instance-type
- The type of instance (for example,\n t2.micro
).
\n \n \n \n instance.group-id
- The ID of the security group for the\n instance.
\n \n \n \n instance.group-name
- The name of the security group for the\n instance.
\n \n \n \n ip-address
- The public IPv4 address of the instance.
\n \n \n \n kernel-id
- The kernel ID.
\n \n \n \n key-name
- The name of the key pair used when the instance was\n launched.
\n \n \n \n launch-index
- When launching multiple instances, this is the\n index for the instance in the launch group (for example, 0, 1, 2, and so on).
\n \n \n \n launch-time
- The time when the instance was launched.
\n \n \n \n metadata-options.http-tokens
- The metadata request authorization\n state (optional
| required
)
\n \n \n \n metadata-options.http-put-response-hop-limit
- The http metadata\n request put response hop limit (integer, possible values 1
to\n 64
)
\n \n \n \n metadata-options.http-endpoint
- Enable or disable metadata\n access on http endpoint (enabled
| disabled
)
\n \n \n \n monitoring-state
- Indicates whether detailed monitoring is\n enabled (disabled
| enabled
).
\n \n \n \n network-interface.addresses.private-ip-address
- The private IPv4\n address associated with the network interface.
\n \n \n \n network-interface.addresses.primary
- Specifies whether the IPv4\n address of the network interface is the primary private IPv4 address.
\n \n \n \n network-interface.addresses.association.public-ip
- The ID of the\n association of an Elastic IP address (IPv4) with a network interface.
\n \n \n \n network-interface.addresses.association.ip-owner-id
- The owner\n ID of the private IPv4 address associated with the network interface.
\n \n \n \n network-interface.association.public-ip
- The address of the\n Elastic IP address (IPv4) bound to the network interface.
\n \n \n \n network-interface.association.ip-owner-id
- The owner of the\n Elastic IP address (IPv4) associated with the network interface.
\n \n \n \n network-interface.association.allocation-id
- The allocation ID\n returned when you allocated the Elastic IP address (IPv4) for your network\n interface.
\n \n \n \n network-interface.association.association-id
- The association ID\n returned when the network interface was associated with an IPv4 address.
\n \n \n \n network-interface.attachment.attachment-id
- The ID of the\n interface attachment.
\n \n \n \n network-interface.attachment.instance-id
- The ID of the instance\n to which the network interface is attached.
\n \n \n \n network-interface.attachment.instance-owner-id
- The owner ID of\n the instance to which the network interface is attached.
\n \n \n \n network-interface.attachment.device-index
- The device index to\n which the network interface is attached.
\n \n \n \n network-interface.attachment.status
- The status of the\n attachment (attaching
| attached
|\n detaching
| detached
).
\n \n \n \n network-interface.attachment.attach-time
- The time that the\n network interface was attached to an instance.
\n \n \n \n network-interface.attachment.delete-on-termination
- Specifies\n whether the attachment is deleted when an instance is terminated.
\n \n \n \n network-interface.availability-zone
- The Availability Zone for\n the network interface.
\n \n \n \n network-interface.description
- The description of the network\n interface.
\n \n \n \n network-interface.group-id
- The ID of a security group\n associated with the network interface.
\n \n \n \n network-interface.group-name
- The name of a security group\n associated with the network interface.
\n \n \n \n network-interface.ipv6-addresses.ipv6-address
- The IPv6 address\n associated with the network interface.
\n \n \n \n network-interface.mac-address
- The MAC address of the network\n interface.
\n \n \n \n network-interface.network-interface-id
- The ID of the network\n interface.
\n \n \n \n network-interface.owner-id
- The ID of the owner of the network\n interface.
\n \n \n \n network-interface.private-dns-name
- The private DNS name of the\n network interface.
\n \n \n \n network-interface.requester-id
- The requester ID for the network\n interface.
\n \n \n \n network-interface.requester-managed
- Indicates whether the\n network interface is being managed by AWS.
\n \n \n \n network-interface.status
- The status of the network interface\n (available
) | in-use
).
\n \n \n \n network-interface.source-dest-check
- Whether the network\n interface performs source/destination checking. A value of true
\n means that checking is enabled, and false
means that checking is\n disabled. The value must be false
for the network interface to\n perform network address translation (NAT) in your VPC.
\n \n \n \n network-interface.subnet-id
- The ID of the subnet for the\n network interface.
\n \n \n \n network-interface.vpc-id
- The ID of the VPC for the network\n interface.
\n \n \n \n outpost-arn
- The Amazon Resource Name (ARN) of the Outpost.
\n \n \n \n owner-id
- The AWS account ID of the instance owner.
\n \n \n \n placement-group-name
- The name of the placement group for the\n instance.
\n \n \n \n placement-partition-number
- The partition in which the instance is\n located.
\n \n \n \n platform
- The platform. To list only Windows instances, use\n windows
.
\n \n \n \n private-dns-name
- The private IPv4 DNS name of the\n instance.
\n \n \n \n private-ip-address
- The private IPv4 address of the\n instance.
\n \n \n \n product-code
- The product code associated with the AMI used to\n launch the instance.
\n \n \n \n product-code.type
- The type of product code (devpay
|\n marketplace
).
\n \n \n \n ramdisk-id
- The RAM disk ID.
\n \n \n \n reason
- The reason for the current state of the instance (for\n example, shows \"User Initiated [date]\" when you stop or terminate the instance).\n Similar to the state-reason-code filter.
\n \n \n \n requester-id
- The ID of the entity that launched the instance on\n your behalf (for example, AWS Management Console, Auto Scaling, and so\n on).
\n \n \n \n reservation-id
- The ID of the instance's reservation. A\n reservation ID is created any time you launch an instance. A reservation ID has\n a one-to-one relationship with an instance launch request, but can be associated\n with more than one instance if you launch multiple instances using the same\n launch request. For example, if you launch one instance, you get one reservation\n ID. If you launch ten instances using the same launch request, you also get one\n reservation ID.
\n \n \n \n root-device-name
- The device name of the root device volume (for\n example, /dev/sda1
).
\n \n \n \n root-device-type
- The type of the root device volume\n (ebs
| instance-store
).
\n \n \n \n source-dest-check
- Indicates whether the instance performs\n source/destination checking. A value of true
means that checking is\n enabled, and false
means that checking is disabled. The value must\n be false
for the instance to perform network address translation\n (NAT) in your VPC.
\n \n \n \n spot-instance-request-id
- The ID of the Spot Instance\n request.
\n \n \n \n state-reason-code
- The reason code for the state change.
\n \n \n \n state-reason-message
- A message that describes the state\n change.
\n \n \n \n subnet-id
- The ID of the subnet for the instance.
\n \n \n \n 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.\n 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.
\n \n \n \n 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.
\n \n \n \n tenancy
- The tenancy of an instance (dedicated
|\n default
| host
).
\n \n \n \n virtualization-type
- The virtualization type of the instance\n (paravirtual
| hvm
).
\n \n \n \n vpc-id
- The ID of the VPC that the instance is running in.
\n \n ",
"smithy.api#xmlName": "Filter"
}
},
@@ -21777,6 +21894,91 @@
}
}
},
+ "com.amazonaws.ec2#DescribeReplaceRootVolumeTasks": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksResult"
+ },
+ "traits": {
+ "smithy.api#documentation": "Describes a root volume replacement task. For more information, see \n Replace a root volume in the \n Amazon Elastic Compute Cloud User Guide .
",
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "items": "ReplaceRootVolumeTasks",
+ "pageSize": "MaxResults"
+ }
+ }
+ },
+ "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksMaxResults": {
+ "type": "integer",
+ "traits": {
+ "smithy.api#range": {
+ "min": 1,
+ "max": 50
+ }
+ }
+ },
+ "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksRequest": {
+ "type": "structure",
+ "members": {
+ "ReplaceRootVolumeTaskIds": {
+ "target": "com.amazonaws.ec2#ReplaceRootVolumeTaskIds",
+ "traits": {
+ "smithy.api#documentation": "The ID of the root volume replacement task to view.
",
+ "smithy.api#xmlName": "ReplaceRootVolumeTaskId"
+ }
+ },
+ "Filters": {
+ "target": "com.amazonaws.ec2#FilterList",
+ "traits": {
+ "smithy.api#documentation": "Filter to use:
\n ",
+ "smithy.api#xmlName": "Filter"
+ }
+ },
+ "MaxResults": {
+ "target": "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksMaxResults",
+ "traits": {
+ "smithy.api#documentation": "The maximum number of results to return with a single call. To retrieve the remaining results, \n make another call with the returned nextToken
value.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.ec2#NextToken",
+ "traits": {
+ "smithy.api#documentation": "The token for the next page 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 and provides an error response. If you have the required permissions, the error response is DryRunOperation
. \n Otherwise, it is UnauthorizedOperation
.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.ec2#DescribeReplaceRootVolumeTasksResult": {
+ "type": "structure",
+ "members": {
+ "ReplaceRootVolumeTasks": {
+ "target": "com.amazonaws.ec2#ReplaceRootVolumeTasks",
+ "traits": {
+ "aws.protocols#ec2QueryName": "ReplaceRootVolumeTaskSet",
+ "smithy.api#documentation": "Information about the root volume replacement task.
",
+ "smithy.api#xmlName": "replaceRootVolumeTaskSet"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.ec2#String",
+ "traits": {
+ "aws.protocols#ec2QueryName": "NextToken",
+ "smithy.api#documentation": "The token to use to retrieve the next page of results. This value is null
when there are no \n more results to return.
",
+ "smithy.api#xmlName": "nextToken"
+ }
+ }
+ }
+ },
"com.amazonaws.ec2#DescribeReservedInstances": {
"type": "operation",
"input": {
@@ -26435,6 +26637,42 @@
}
}
},
+ "com.amazonaws.ec2#DisableSerialConsoleAccess": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.ec2#DisableSerialConsoleAccessRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.ec2#DisableSerialConsoleAccessResult"
+ },
+ "traits": {
+ "smithy.api#documentation": "Disables access to the EC2 serial console of all instances for your account. By default,\n\t\t\taccess to the EC2 serial console is disabled for your account. For more information, see\n\t\t\t\tManage account access to the EC2 serial console in the Amazon EC2\n\t\t\t\tUser Guide .
"
+ }
+ },
+ "com.amazonaws.ec2#DisableSerialConsoleAccessRequest": {
+ "type": "structure",
+ "members": {
+ "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, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.ec2#DisableSerialConsoleAccessResult": {
+ "type": "structure",
+ "members": {
+ "SerialConsoleAccessEnabled": {
+ "target": "com.amazonaws.ec2#Boolean",
+ "traits": {
+ "aws.protocols#ec2QueryName": "SerialConsoleAccessEnabled",
+ "smithy.api#documentation": "If true
, access to the EC2 serial console of all instances is enabled for\n\t\t\tyour account. If false
, access to the EC2 serial console of all instances\n\t\t\tis disabled for your account.
",
+ "smithy.api#xmlName": "serialConsoleAccessEnabled"
+ }
+ }
+ }
+ },
"com.amazonaws.ec2#DisableTransitGatewayRouteTablePropagation": {
"type": "operation",
"input": {
@@ -27635,6 +27873,22 @@
]
}
},
+ "com.amazonaws.ec2#EfaInfo": {
+ "type": "structure",
+ "members": {
+ "MaximumEfaInterfaces": {
+ "target": "com.amazonaws.ec2#MaximumEfaInterfaces",
+ "traits": {
+ "aws.protocols#ec2QueryName": "MaximumEfaInterfaces",
+ "smithy.api#documentation": "The maximum number of Elastic Fabric Adapters for the instance type.
",
+ "smithy.api#xmlName": "maximumEfaInterfaces"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Describes the Elastic Fabric Adapters for the instance type.
"
+ }
+ },
"com.amazonaws.ec2#EfaSupportedFlag": {
"type": "boolean",
"traits": {
@@ -28046,7 +28300,7 @@
"target": "com.amazonaws.ec2#EnableEbsEncryptionByDefaultResult"
},
"traits": {
- "smithy.api#documentation": "Enables EBS encryption by default for your account in the current Region.
\n After you enable encryption by default, the EBS volumes that you create are\n are always encrypted, either using the default CMK or the CMK that you specified\n when you created each volume. For more information, see Amazon EBS encryption in the\n Amazon Elastic Compute Cloud User Guide .
\n You can specify the default CMK for encryption by default using ModifyEbsDefaultKmsKeyId \n or ResetEbsDefaultKmsKeyId .
\n Enabling encryption by default has no effect on the encryption status of your \n existing volumes.
\n After you enable encryption by default, you can no longer launch instances\n using instance types that do not support encryption. For more information, see Supported\n instance types .
"
+ "smithy.api#documentation": "Enables EBS encryption by default for your account in the current Region.
\n After you enable encryption by default, the EBS volumes that you create are\n always encrypted, either using the default CMK or the CMK that you specified\n when you created each volume. For more information, see Amazon EBS encryption in the\n Amazon Elastic Compute Cloud User Guide .
\n You can specify the default CMK for encryption by default using ModifyEbsDefaultKmsKeyId \n or ResetEbsDefaultKmsKeyId .
\n Enabling encryption by default has no effect on the encryption status of your \n existing volumes.
\n After you enable encryption by default, you can no longer launch instances\n using instance types that do not support encryption. For more information, see Supported\n instance types .
"
}
},
"com.amazonaws.ec2#EnableEbsEncryptionByDefaultRequest": {
@@ -28328,6 +28582,42 @@
}
}
},
+ "com.amazonaws.ec2#EnableSerialConsoleAccess": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.ec2#EnableSerialConsoleAccessRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.ec2#EnableSerialConsoleAccessResult"
+ },
+ "traits": {
+ "smithy.api#documentation": "Enables access to the EC2 serial console of all instances for your account. By default,\n\t\t\taccess to the EC2 serial console is disabled for your account. For more information, see Manage account access to the EC2 serial console \n\t\t\tin the Amazon EC2 User Guide .
"
+ }
+ },
+ "com.amazonaws.ec2#EnableSerialConsoleAccessRequest": {
+ "type": "structure",
+ "members": {
+ "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, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.ec2#EnableSerialConsoleAccessResult": {
+ "type": "structure",
+ "members": {
+ "SerialConsoleAccessEnabled": {
+ "target": "com.amazonaws.ec2#Boolean",
+ "traits": {
+ "aws.protocols#ec2QueryName": "SerialConsoleAccessEnabled",
+ "smithy.api#documentation": "If true
, access to the EC2 serial console of all instances is enabled for\n\t\t\tyour account. If false
, access to the EC2 serial console of all instances\n\t\t\tis disabled for your account.
",
+ "smithy.api#xmlName": "serialConsoleAccessEnabled"
+ }
+ }
+ }
+ },
"com.amazonaws.ec2#EnableTransitGatewayRouteTablePropagation": {
"type": "operation",
"input": {
@@ -30188,7 +30478,7 @@
"Overrides": {
"target": "com.amazonaws.ec2#FleetLaunchTemplateOverridesListRequest",
"traits": {
- "smithy.api#documentation": "Any parameters that you specify override the same parameters in the launch\n template.
"
+ "smithy.api#documentation": "Any parameters that you specify override the same parameters in the launch\n template.
\n For fleets of type request
and maintain
, a maximum of 300\n items is allowed across all launch templates.
"
}
}
},
@@ -32185,6 +32475,42 @@
"smithy.api#documentation": "Contains the output of GetReservedInstancesExchangeQuote.
"
}
},
+ "com.amazonaws.ec2#GetSerialConsoleAccessStatus": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.ec2#GetSerialConsoleAccessStatusRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.ec2#GetSerialConsoleAccessStatusResult"
+ },
+ "traits": {
+ "smithy.api#documentation": "Retrieves the access status of your account to the EC2 serial console of all instances. By\n\t\t\tdefault, access to the EC2 serial console is disabled for your account. For more\n\t\t\tinformation, see Manage account access to the EC2 serial console in the Amazon EC2\n\t\t\t\tUser Guide .
"
+ }
+ },
+ "com.amazonaws.ec2#GetSerialConsoleAccessStatusRequest": {
+ "type": "structure",
+ "members": {
+ "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, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.ec2#GetSerialConsoleAccessStatusResult": {
+ "type": "structure",
+ "members": {
+ "SerialConsoleAccessEnabled": {
+ "target": "com.amazonaws.ec2#Boolean",
+ "traits": {
+ "aws.protocols#ec2QueryName": "SerialConsoleAccessEnabled",
+ "smithy.api#documentation": "If true
, access to the EC2 serial console of all instances is enabled for\n\t\t\tyour account. If false
, access to the EC2 serial console of all instances\n\t\t\tis disabled for your account.
",
+ "smithy.api#xmlName": "serialConsoleAccessEnabled"
+ }
+ }
+ }
+ },
"com.amazonaws.ec2#GetTransitGatewayAttachmentPropagations": {
"type": "operation",
"input": {
@@ -33843,6 +34169,14 @@
"smithy.api#documentation": "The type of virtualization of the AMI.
",
"smithy.api#xmlName": "virtualizationType"
}
+ },
+ "BootMode": {
+ "target": "com.amazonaws.ec2#BootModeValues",
+ "traits": {
+ "aws.protocols#ec2QueryName": "BootMode",
+ "smithy.api#documentation": "The boot mode of the image. For more information, see Boot modes in the\n Amazon Elastic Compute Cloud User Guide .
",
+ "smithy.api#xmlName": "bootMode"
+ }
}
},
"traits": {
@@ -33915,6 +34249,13 @@
"smithy.api#documentation": "Indicates whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.
",
"smithy.api#xmlName": "sriovNetSupport"
}
+ },
+ "BootMode": {
+ "target": "com.amazonaws.ec2#AttributeValue",
+ "traits": {
+ "aws.protocols#ec2QueryName": "BootMode",
+ "smithy.api#xmlName": "bootMode"
+ }
}
},
"traits": {
@@ -33952,6 +34293,10 @@
{
"value": "sriovNetSupport",
"name": "sriovNetSupport"
+ },
+ {
+ "value": "bootMode",
+ "name": "bootMode"
}
]
}
@@ -35580,7 +35925,7 @@
"target": "com.amazonaws.ec2#Boolean",
"traits": {
"aws.protocols#ec2QueryName": "SourceDestCheck",
- "smithy.api#documentation": "Specifies whether to enable an instance launched in a VPC to perform NAT. This\n controls whether source/destination checking is enabled on the instance. A value of\n true
means that checking is enabled, and false
means that\n checking is disabled. The value must be false
for the instance to perform\n NAT. For more information, see NAT instances in the\n Amazon VPC User Guide .
",
+ "smithy.api#documentation": "Indicates whether source/destination checking is enabled.
",
"smithy.api#xmlName": "sourceDestCheck"
}
},
@@ -35679,6 +36024,14 @@
"smithy.api#documentation": "Indicates whether the instance is enabled for AWS Nitro Enclaves.
",
"smithy.api#xmlName": "enclaveOptions"
}
+ },
+ "BootMode": {
+ "target": "com.amazonaws.ec2#BootModeValues",
+ "traits": {
+ "aws.protocols#ec2QueryName": "BootMode",
+ "smithy.api#documentation": "The boot mode of the instance. For more information, see Boot modes in the\n Amazon EC2 User Guide .
",
+ "smithy.api#xmlName": "bootMode"
+ }
}
},
"traits": {
@@ -35796,7 +36149,7 @@
"target": "com.amazonaws.ec2#AttributeBooleanValue",
"traits": {
"aws.protocols#ec2QueryName": "SourceDestCheck",
- "smithy.api#documentation": "Indicates whether source/destination checking is enabled. A value of true
\n means that checking is enabled, and false
means that checking is disabled.\n This value must be false
for a NAT instance to perform NAT.
",
+ "smithy.api#documentation": "Enable or disable source/destination checks, which ensure that the instance\n is either the source or the destination of any traffic that it receives.\n If the value is true
, source/destination checks are enabled;\n otherwise, they are disabled. The default value is true
. \n You must disable source/destination checks if the instance runs services \n such as network address translation, routing, or firewalls.
",
"smithy.api#xmlName": "sourceDestCheck"
}
},
@@ -38832,6 +39185,42 @@
{
"value": "mac1.metal",
"name": "mac1_metal"
+ },
+ {
+ "value": "x2gd.medium",
+ "name": "x2gd_medium"
+ },
+ {
+ "value": "x2gd.large",
+ "name": "x2gd_large"
+ },
+ {
+ "value": "x2gd.xlarge",
+ "name": "x2gd_xlarge"
+ },
+ {
+ "value": "x2gd.2xlarge",
+ "name": "x2gd_2xlarge"
+ },
+ {
+ "value": "x2gd.4xlarge",
+ "name": "x2gd_4xlarge"
+ },
+ {
+ "value": "x2gd.8xlarge",
+ "name": "x2gd_8xlarge"
+ },
+ {
+ "value": "x2gd.12xlarge",
+ "name": "x2gd_12xlarge"
+ },
+ {
+ "value": "x2gd.16xlarge",
+ "name": "x2gd_16xlarge"
+ },
+ {
+ "value": "x2gd.metal",
+ "name": "x2gd_metal"
}
]
}
@@ -39037,6 +39426,14 @@
"smithy.api#documentation": "Indicates whether auto recovery is supported.
",
"smithy.api#xmlName": "autoRecoverySupported"
}
+ },
+ "SupportedBootModes": {
+ "target": "com.amazonaws.ec2#BootModeTypeList",
+ "traits": {
+ "aws.protocols#ec2QueryName": "SupportedBootModes",
+ "smithy.api#documentation": "The supported boot modes. For more information, see Boot modes in the\n Amazon EC2 User Guide .
",
+ "smithy.api#xmlName": "supportedBootModes"
+ }
}
},
"traits": {
@@ -42527,6 +42924,12 @@
"smithy.api#box": {}
}
},
+ "com.amazonaws.ec2#MaximumEfaInterfaces": {
+ "type": "integer",
+ "traits": {
+ "smithy.api#box": {}
+ }
+ },
"com.amazonaws.ec2#MaximumIops": {
"type": "integer",
"traits": {
@@ -43359,7 +43762,7 @@
"SourceDestCheck": {
"target": "com.amazonaws.ec2#AttributeBooleanValue",
"traits": {
- "smithy.api#documentation": "Specifies whether source/destination checking is enabled. A value of true
\n means that checking is enabled, and false
means that checking is disabled.\n This value must be false
for a NAT instance to perform NAT.
"
+ "smithy.api#documentation": "Enable or disable source/destination checks, which ensure that the instance\n is either the source or the destination of any traffic that it receives.\n If the value is true
, source/destination checks are enabled;\n otherwise, they are disabled. The default value is true
. \n You must disable source/destination checks if the instance runs services \n such as network address translation, routing, or firewalls.
"
}
},
"Attribute": {
@@ -44825,7 +45228,7 @@
"Iops": {
"target": "com.amazonaws.ec2#Integer",
"traits": {
- "smithy.api#documentation": "The target IOPS rate of the volume. This parameter is valid only for gp3
, io1
, and io2
volumes.
\n The following are the supported values for each volume type:
\n \n Default: If no IOPS value is specified, the existing value is retained.
"
+ "smithy.api#documentation": "The target IOPS rate of the volume. This parameter is valid only for gp3
, io1
, and io2
volumes.
\n The following are the supported values for each volume type:
\n \n Default: If no IOPS value is specified, the existing value is retained, unless a volume type is modified that supports different values.
"
}
},
"Throughput": {
@@ -46397,6 +46800,14 @@
"smithy.api#documentation": "Indicates whether Elastic Fabric Adapter (EFA) is supported.
",
"smithy.api#xmlName": "efaSupported"
}
+ },
+ "EfaInfo": {
+ "target": "com.amazonaws.ec2#EfaInfo",
+ "traits": {
+ "aws.protocols#ec2QueryName": "EfaInfo",
+ "smithy.api#documentation": "Describes the Elastic Fabric Adapters for the instance type.
",
+ "smithy.api#xmlName": "efaInfo"
+ }
}
},
"traits": {
@@ -50038,6 +50449,12 @@
"smithy.api#documentation": "The type of virtualization (hvm
| paravirtual
).
\n Default: paravirtual
\n
",
"smithy.api#xmlName": "virtualizationType"
}
+ },
+ "BootMode": {
+ "target": "com.amazonaws.ec2#BootModeValues",
+ "traits": {
+ "smithy.api#documentation": "The boot mode of the AMI. For more information, see Boot modes in the\n Amazon Elastic Compute Cloud User Guide .
"
+ }
}
},
"traits": {
@@ -50780,6 +51197,114 @@
}
}
},
+ "com.amazonaws.ec2#ReplaceRootVolumeTask": {
+ "type": "structure",
+ "members": {
+ "ReplaceRootVolumeTaskId": {
+ "target": "com.amazonaws.ec2#ReplaceRootVolumeTaskId",
+ "traits": {
+ "aws.protocols#ec2QueryName": "ReplaceRootVolumeTaskId",
+ "smithy.api#documentation": "The ID of the root volume replacement task.
",
+ "smithy.api#xmlName": "replaceRootVolumeTaskId"
+ }
+ },
+ "InstanceId": {
+ "target": "com.amazonaws.ec2#String",
+ "traits": {
+ "aws.protocols#ec2QueryName": "InstanceId",
+ "smithy.api#documentation": "The ID of the instance for which the root volume replacement task was created.
",
+ "smithy.api#xmlName": "instanceId"
+ }
+ },
+ "TaskState": {
+ "target": "com.amazonaws.ec2#ReplaceRootVolumeTaskState",
+ "traits": {
+ "aws.protocols#ec2QueryName": "TaskState",
+ "smithy.api#documentation": "The state of the task. The task can be in one of the following states:
\n \n \n \n pending
- the replacement volume is being created.
\n \n \n \n in-progress
- the original volume is being detached and the \n replacement volume is being attached.
\n \n \n \n succeeded
- the replacement volume has been successfully attached \n to the instance and the instance is available.
\n \n \n \n failing
- the replacement task is in the process of failing.
\n \n \n \n failed
- the replacement task has failed but the original root \n volume is still attached.
\n \n \n \n failing-detached
- the replacement task is in the process of failing. \n The instance might have no root volume attached.
\n \n \n \n failed-detached
- the replacement task has failed and the instance \n has no root volume attached.
\n \n ",
+ "smithy.api#xmlName": "taskState"
+ }
+ },
+ "StartTime": {
+ "target": "com.amazonaws.ec2#String",
+ "traits": {
+ "aws.protocols#ec2QueryName": "StartTime",
+ "smithy.api#documentation": "The time the task was started.
",
+ "smithy.api#xmlName": "startTime"
+ }
+ },
+ "CompleteTime": {
+ "target": "com.amazonaws.ec2#String",
+ "traits": {
+ "aws.protocols#ec2QueryName": "CompleteTime",
+ "smithy.api#documentation": "The time the task completed.
",
+ "smithy.api#xmlName": "completeTime"
+ }
+ },
+ "Tags": {
+ "target": "com.amazonaws.ec2#TagList",
+ "traits": {
+ "aws.protocols#ec2QueryName": "TagSet",
+ "smithy.api#documentation": "The tags assigned to the task.
",
+ "smithy.api#xmlName": "tagSet"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Information about a root volume replacement task.
"
+ }
+ },
+ "com.amazonaws.ec2#ReplaceRootVolumeTaskId": {
+ "type": "string"
+ },
+ "com.amazonaws.ec2#ReplaceRootVolumeTaskIds": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.ec2#ReplaceRootVolumeTaskId",
+ "traits": {
+ "smithy.api#xmlName": "ReplaceRootVolumeTaskId"
+ }
+ }
+ },
+ "com.amazonaws.ec2#ReplaceRootVolumeTaskState": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "pending",
+ "name": "pending"
+ },
+ {
+ "value": "in-progress",
+ "name": "in_progress"
+ },
+ {
+ "value": "failing",
+ "name": "failing"
+ },
+ {
+ "value": "succeeded",
+ "name": "succeeded"
+ },
+ {
+ "value": "failed",
+ "name": "failed"
+ },
+ {
+ "value": "failed-detached",
+ "name": "failed_detached"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.ec2#ReplaceRootVolumeTasks": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.ec2#ReplaceRootVolumeTask",
+ "traits": {
+ "smithy.api#xmlName": "item"
+ }
+ }
+ },
"com.amazonaws.ec2#ReplaceRoute": {
"type": "operation",
"input": {
diff --git a/codegen/sdk-codegen/aws-models/ec2instanceconnect.2018-04-02.json b/codegen/sdk-codegen/aws-models/ec2instanceconnect.2018-04-02.json
index 10438aa7837..15fc1a54a92 100644
--- a/codegen/sdk-codegen/aws-models/ec2instanceconnect.2018-04-02.json
+++ b/codegen/sdk-codegen/aws-models/ec2instanceconnect.2018-04-02.json
@@ -33,6 +33,9 @@
"type": "service",
"version": "2018-04-02",
"operations": [
+ {
+ "target": "com.amazonaws.ec2instanceconnect#SendSerialConsoleSSHPublicKey"
+ },
{
"target": "com.amazonaws.ec2instanceconnect#SendSSHPublicKey"
}
@@ -49,7 +52,7 @@
"name": "ec2-instance-connect"
},
"aws.protocols#awsJson1_1": {},
- "smithy.api#documentation": "AWS EC2 Connect Service is a service that enables system administrators to publish\n temporary SSH keys to their EC2 instances in order to establish connections to their\n instances without leaving a permanent authentication option.
",
+ "smithy.api#documentation": "Amazon EC2 Instance Connect enables system administrators to publish one-time use SSH\n public keys to EC2, providing users a simple and secure way to connect to their\n instances.
",
"smithy.api#title": "AWS EC2 Instance Connect"
}
},
@@ -61,7 +64,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Indicates that either your AWS credentials are invalid or you do not have access to the EC2 instance.
",
+ "smithy.api#documentation": "Either your AWS credentials are not valid or you do not have access to the EC2 instance.
",
"smithy.api#error": "client",
"smithy.api#httpError": 403
}
@@ -84,11 +87,24 @@
}
},
"traits": {
- "smithy.api#documentation": "Indicates that the instance requested was not found in the given zone. Check that you have provided a valid instance ID and the correct zone.
",
+ "smithy.api#documentation": "The specified instance was not found.
",
"smithy.api#error": "client",
"smithy.api#httpError": 404
}
},
+ "com.amazonaws.ec2instanceconnect#EC2InstanceTypeInvalidException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "com.amazonaws.ec2instanceconnect#String"
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The instance type is not supported for connecting via the serial console. Only Nitro\n instance types are currently supported.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 400
+ }
+ },
"com.amazonaws.ec2instanceconnect#InstanceId": {
"type": "string",
"traits": {
@@ -117,7 +133,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Indicates that you provided bad input. Ensure you have a valid instance ID, the correct zone, and a valid SSH public key.
",
+ "smithy.api#documentation": "One of the parameters is not valid.
",
"smithy.api#error": "client",
"smithy.api#httpError": 400
}
@@ -160,7 +176,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Pushes an SSH public key to a particular OS user on a given EC2 instance for 60 seconds.
"
+ "smithy.api#documentation": "Pushes an SSH public key to the specified EC2 instance for use by the specified user.\n The key remains for 60 seconds. For more information, see Connect to\n your Linux instance using EC2 Instance Connect in the Amazon EC2\n User Guide .
"
}
},
"com.amazonaws.ec2instanceconnect#SendSSHPublicKeyRequest": {
@@ -169,28 +185,28 @@
"InstanceId": {
"target": "com.amazonaws.ec2instanceconnect#InstanceId",
"traits": {
- "smithy.api#documentation": "The EC2 instance you wish to publish the SSH key to.
",
+ "smithy.api#documentation": "The ID of the EC2 instance.
",
"smithy.api#required": {}
}
},
"InstanceOSUser": {
"target": "com.amazonaws.ec2instanceconnect#InstanceOSUser",
"traits": {
- "smithy.api#documentation": "The OS user on the EC2 instance whom the key may be used to authenticate as.
",
+ "smithy.api#documentation": "The OS user on the EC2 instance for whom the key can be used to authenticate.
",
"smithy.api#required": {}
}
},
"SSHPublicKey": {
"target": "com.amazonaws.ec2instanceconnect#SSHPublicKey",
"traits": {
- "smithy.api#documentation": "The public key to be published to the instance. To use it after publication you must have the matching private key.
",
+ "smithy.api#documentation": "The public key material. To use the public key, you must have the matching private key.
",
"smithy.api#required": {}
}
},
"AvailabilityZone": {
"target": "com.amazonaws.ec2instanceconnect#AvailabilityZone",
"traits": {
- "smithy.api#documentation": "The availability zone the EC2 instance was launched in.
",
+ "smithy.api#documentation": "The Availability Zone in which the EC2 instance was launched.
",
"smithy.api#required": {}
}
}
@@ -202,17 +218,148 @@
"RequestId": {
"target": "com.amazonaws.ec2instanceconnect#RequestId",
"traits": {
- "smithy.api#documentation": "The request ID as logged by EC2 Connect. Please provide this when contacting AWS Support.
"
+ "smithy.api#documentation": "The ID of the request. Please provide this ID when contacting AWS Support for assistance.
"
+ }
+ },
+ "Success": {
+ "target": "com.amazonaws.ec2instanceconnect#Success",
+ "traits": {
+ "smithy.api#documentation": "Is true if the request succeeds and an error otherwise.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.ec2instanceconnect#SendSerialConsoleSSHPublicKey": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.ec2instanceconnect#SendSerialConsoleSSHPublicKeyRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.ec2instanceconnect#SendSerialConsoleSSHPublicKeyResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.ec2instanceconnect#AuthException"
+ },
+ {
+ "target": "com.amazonaws.ec2instanceconnect#EC2InstanceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.ec2instanceconnect#EC2InstanceTypeInvalidException"
+ },
+ {
+ "target": "com.amazonaws.ec2instanceconnect#InvalidArgsException"
+ },
+ {
+ "target": "com.amazonaws.ec2instanceconnect#SerialConsoleAccessDisabledException"
+ },
+ {
+ "target": "com.amazonaws.ec2instanceconnect#SerialConsoleSessionLimitExceededException"
+ },
+ {
+ "target": "com.amazonaws.ec2instanceconnect#SerialConsoleSessionUnavailableException"
+ },
+ {
+ "target": "com.amazonaws.ec2instanceconnect#ServiceException"
+ },
+ {
+ "target": "com.amazonaws.ec2instanceconnect#ThrottlingException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Pushes an SSH public key to the specified EC2 instance. The key remains for 60\n seconds, which gives you 60 seconds to establish a serial console connection to the\n instance using SSH. For more information, see EC2 Serial Console in\n the Amazon EC2 User Guide .
"
+ }
+ },
+ "com.amazonaws.ec2instanceconnect#SendSerialConsoleSSHPublicKeyRequest": {
+ "type": "structure",
+ "members": {
+ "InstanceId": {
+ "target": "com.amazonaws.ec2instanceconnect#InstanceId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the EC2 instance.
",
+ "smithy.api#required": {}
+ }
+ },
+ "SerialPort": {
+ "target": "com.amazonaws.ec2instanceconnect#SerialPort",
+ "traits": {
+ "smithy.api#documentation": "The serial port of the EC2 instance. Currently only port 0 is supported.
\n Default: 0
"
+ }
+ },
+ "SSHPublicKey": {
+ "target": "com.amazonaws.ec2instanceconnect#SSHPublicKey",
+ "traits": {
+ "smithy.api#documentation": "The public key material. To use the public key, you must have the matching private\n key. For information about the supported key formats and lengths, see Requirements for key pairs in the Amazon EC2 User\n Guide .
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.ec2instanceconnect#SendSerialConsoleSSHPublicKeyResponse": {
+ "type": "structure",
+ "members": {
+ "RequestId": {
+ "target": "com.amazonaws.ec2instanceconnect#RequestId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the request. Please provide this ID when contacting AWS Support for assistance.
"
}
},
"Success": {
"target": "com.amazonaws.ec2instanceconnect#Success",
"traits": {
- "smithy.api#documentation": "Indicates request success.
"
+ "smithy.api#documentation": "Is true if the request succeeds and an error otherwise.
"
}
}
}
},
+ "com.amazonaws.ec2instanceconnect#SerialConsoleAccessDisabledException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "com.amazonaws.ec2instanceconnect#String"
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Your account is not authorized to use the EC2 Serial Console. To authorize your\n account, run the EnableSerialConsoleAccess API. For more information, see\n EnableSerialConsoleAccess in the Amazon EC2 API Reference .
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 403
+ }
+ },
+ "com.amazonaws.ec2instanceconnect#SerialConsoleSessionLimitExceededException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "com.amazonaws.ec2instanceconnect#String"
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The instance currently has 1 active serial console session. Only 1 session is supported at a time.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 400
+ }
+ },
+ "com.amazonaws.ec2instanceconnect#SerialConsoleSessionUnavailableException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "com.amazonaws.ec2instanceconnect#String"
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Unable to start a serial console session. Please try again.
",
+ "smithy.api#error": "server",
+ "smithy.api#httpError": 500
+ }
+ },
+ "com.amazonaws.ec2instanceconnect#SerialPort": {
+ "type": "integer",
+ "traits": {
+ "smithy.api#range": {
+ "min": 0,
+ "max": 0
+ }
+ }
+ },
"com.amazonaws.ec2instanceconnect#ServiceException": {
"type": "structure",
"members": {
@@ -221,7 +368,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Indicates that the service encountered an error. Follow the message's instructions and try again.
",
+ "smithy.api#documentation": "The service encountered an error. Follow the instructions in the error message and try again.
",
"smithy.api#error": "server",
"smithy.api#httpError": 500
}
@@ -240,7 +387,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Indicates you have been making requests too frequently and have been throttled. Wait for a while and try again. If higher call volume is warranted contact AWS Support.
",
+ "smithy.api#documentation": "The requests were made too frequently and have been throttled. Wait a while and try again. \n To increase the limit on your request frequency, contact AWS Support.
",
"smithy.api#error": "client",
"smithy.api#httpError": 429
}
diff --git a/codegen/sdk-codegen/aws-models/eventbridge.2015-10-07.json b/codegen/sdk-codegen/aws-models/eventbridge.2015-10-07.json
index 722ac9c08bd..1786830026b 100644
--- a/codegen/sdk-codegen/aws-models/eventbridge.2015-10-07.json
+++ b/codegen/sdk-codegen/aws-models/eventbridge.2015-10-07.json
@@ -4782,7 +4782,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Adds the specified targets to the specified rule, or updates the targets if they are\n already associated with the rule.
\n Targets are the resources that are invoked when a rule is triggered.
\n You can configure the following as targets for Events:
\n\n \n \n EC2 instances
\n \n \n SSM Run Command
\n \n \n SSM Automation
\n \n \n AWS Lambda functions
\n \n \n Data streams in Amazon Kinesis Data Streams
\n \n \n Data delivery streams in Amazon Kinesis Data Firehose
\n \n \n Amazon ECS tasks
\n \n \n AWS Step Functions state machines
\n \n \n AWS Batch jobs
\n \n \n AWS CodeBuild projects
\n \n \n Pipelines in AWS CodePipeline
\n \n \n Amazon Inspector assessment templates
\n \n \n Amazon SNS topics
\n \n \n Amazon SQS queues, including FIFO queues
\n \n \n The default event bus of another AWS account
\n \n \n Amazon API Gateway REST APIs
\n \n \n Redshift Clusters to invoke Data API ExecuteStatement on
\n \n \n Custom/SaaS HTTPS APIs via EventBridge API Destinations
\n \n \n\n\n\n Creating rules with built-in targets is supported only in the AWS Management Console. The\n built-in targets are EC2 CreateSnapshot API call
, EC2 RebootInstances API\n call
, EC2 StopInstances API call
, and EC2 TerminateInstances API\n call
.
\n\n For some target types, PutTargets
provides target-specific parameters. If the\n target is a Kinesis data stream, you can optionally specify which shard the event goes to by\n using the KinesisParameters
argument. To invoke a command on multiple EC2\n instances with one rule, you can use the RunCommandParameters
field.
\n\n To be able to make API calls against the resources that you own, Amazon EventBridge\n (CloudWatch Events) needs the appropriate permissions. For AWS Lambda and Amazon SNS\n resources, EventBridge relies on resource-based policies. For EC2 instances, Kinesis data\n streams, AWS Step Functions state machines and API Gateway REST APIs, EventBridge relies on\n IAM roles that you specify in the RoleARN
argument in PutTargets
.\n For more information, see Authentication\n and Access Control in the Amazon EventBridge User Guide .
\n\n If another AWS account is in the same region and has granted you permission (using\n PutPermission
), you can send events to that account. Set that account's event\n bus as a target of the rules in your account. To send the matched events to the other account,\n specify that account's event bus as the Arn
value when you run\n PutTargets
. If your account sends events to another account, your account is\n charged for each sent event. Each event sent to another account is charged as a custom event.\n The account receiving the event is not charged. For more information, see Amazon EventBridge (CloudWatch Events)\n Pricing .
\n\n \n \n Input
, InputPath
, and InputTransformer
are not\n available with PutTarget
if the target is an event bus of a different AWS\n account.
\n \n\n If you are setting the event bus of another account as the target, and that account\n granted permission to your account through an organization instead of directly by the account\n ID, then you must specify a RoleArn
with proper permissions in the\n Target
structure. For more information, see Sending and\n Receiving Events Between AWS Accounts in the Amazon EventBridge User\n Guide .
\n\n For more information about enabling cross-account events, see PutPermission .
\n\n \n Input , InputPath , and\n InputTransformer are mutually exclusive and optional\n parameters of a target. When a rule is triggered due to a matched event:
\n\n \n \n If none of the following arguments are specified for a target, then the entire event\n is passed to the target in JSON format (unless the target is Amazon EC2 Run Command or\n Amazon ECS task, in which case nothing from the event is passed to the target).
\n \n \n If Input is specified in the form of valid JSON, then\n the matched event is overridden with this constant.
\n \n \n If InputPath is specified in the form of JSONPath\n (for example, $.detail
), then only the part of the event specified in the\n path is passed to the target (for example, only the detail part of the event is\n passed).
\n \n \n If InputTransformer is specified, then one or more\n specified JSONPaths are extracted from the event and used as values in a template that you\n specify as the input to the target.
\n \n \n\n When you specify InputPath
or InputTransformer
, you must use\n JSON dot notation, not bracket notation.
\n\n When you add targets to a rule and the associated rule triggers soon after, new or updated\n targets might not be immediately invoked. Allow a short period of time for changes to take\n effect.
\n\n This action can partially fail if too many requests are made at the same time. If that\n happens, FailedEntryCount
is non-zero in the response and each entry in\n FailedEntries
provides the ID of the failed target and the error code.
"
+ "smithy.api#documentation": "Adds the specified targets to the specified rule, or updates the targets if they are\n already associated with the rule.
\n Targets are the resources that are invoked when a rule is triggered.
\n You can configure the following as targets for Events:
\n\n \n \n EC2 instances
\n \n \n SSM Run Command
\n \n \n SSM Automation
\n \n \n AWS Lambda functions
\n \n \n Data streams in Amazon Kinesis Data Streams
\n \n \n Data delivery streams in Amazon Kinesis Data Firehose
\n \n \n Amazon ECS tasks
\n \n \n AWS Step Functions state machines
\n \n \n AWS Batch jobs
\n \n \n AWS CodeBuild projects
\n \n \n Pipelines in AWS CodePipeline
\n \n \n Amazon Inspector assessment templates
\n \n \n Amazon SNS topics
\n \n \n Amazon SQS queues, including FIFO queues
\n \n \n The default event bus of another AWS account
\n \n \n Amazon API Gateway REST APIs
\n \n \n Redshift Clusters to invoke Data API ExecuteStatement on
\n \n \n Custom/SaaS HTTPS APIs via EventBridge API Destinations
\n \n \n Amazon SageMaker Model Building Pipelines
\n \n \n\n\n\n Creating rules with built-in targets is supported only in the AWS Management Console. The\n built-in targets are EC2 CreateSnapshot API call
, EC2 RebootInstances API\n call
, EC2 StopInstances API call
, and EC2 TerminateInstances API\n call
.
\n\n For some target types, PutTargets
provides target-specific parameters. If the\n target is a Kinesis data stream, you can optionally specify which shard the event goes to by\n using the KinesisParameters
argument. To invoke a command on multiple EC2\n instances with one rule, you can use the RunCommandParameters
field.
\n\n To be able to make API calls against the resources that you own, Amazon EventBridge\n (CloudWatch Events) needs the appropriate permissions. For AWS Lambda and Amazon SNS\n resources, EventBridge relies on resource-based policies. For EC2 instances, Kinesis data\n streams, AWS Step Functions state machines and API Gateway REST APIs, EventBridge relies on\n IAM roles that you specify in the RoleARN
argument in PutTargets
.\n For more information, see Authentication\n and Access Control in the Amazon EventBridge User Guide .
\n\n If another AWS account is in the same region and has granted you permission (using\n PutPermission
), you can send events to that account. Set that account's event\n bus as a target of the rules in your account. To send the matched events to the other account,\n specify that account's event bus as the Arn
value when you run\n PutTargets
. If your account sends events to another account, your account is\n charged for each sent event. Each event sent to another account is charged as a custom event.\n The account receiving the event is not charged. For more information, see Amazon EventBridge (CloudWatch Events)\n Pricing .
\n\n \n \n Input
, InputPath
, and InputTransformer
are not\n available with PutTarget
if the target is an event bus of a different AWS\n account.
\n \n\n If you are setting the event bus of another account as the target, and that account\n granted permission to your account through an organization instead of directly by the account\n ID, then you must specify a RoleArn
with proper permissions in the\n Target
structure. For more information, see Sending and\n Receiving Events Between AWS Accounts in the Amazon EventBridge User\n Guide .
\n\n For more information about enabling cross-account events, see PutPermission .
\n\n \n Input , InputPath , and\n InputTransformer are mutually exclusive and optional\n parameters of a target. When a rule is triggered due to a matched event:
\n\n \n \n If none of the following arguments are specified for a target, then the entire event\n is passed to the target in JSON format (unless the target is Amazon EC2 Run Command or\n Amazon ECS task, in which case nothing from the event is passed to the target).
\n \n \n If Input is specified in the form of valid JSON, then\n the matched event is overridden with this constant.
\n \n \n If InputPath is specified in the form of JSONPath\n (for example, $.detail
), then only the part of the event specified in the\n path is passed to the target (for example, only the detail part of the event is\n passed).
\n \n \n If InputTransformer is specified, then one or more\n specified JSONPaths are extracted from the event and used as values in a template that you\n specify as the input to the target.
\n \n \n\n When you specify InputPath
or InputTransformer
, you must use\n JSON dot notation, not bracket notation.
\n\n When you add targets to a rule and the associated rule triggers soon after, new or updated\n targets might not be immediately invoked. Allow a short period of time for changes to take\n effect.
\n\n This action can partially fail if too many requests are made at the same time. If that\n happens, FailedEntryCount
is non-zero in the response and each entry in\n FailedEntries
provides the ID of the failed target and the error code.
"
}
},
"com.amazonaws.eventbridge#PutTargetsRequest": {
@@ -5530,6 +5530,73 @@
}
}
},
+ "com.amazonaws.eventbridge#SageMakerPipelineParameter": {
+ "type": "structure",
+ "members": {
+ "Name": {
+ "target": "com.amazonaws.eventbridge#SageMakerPipelineParameterName",
+ "traits": {
+ "smithy.api#documentation": "Name of parameter to start execution of a SageMaker Model Building Pipeline.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Value": {
+ "target": "com.amazonaws.eventbridge#SageMakerPipelineParameterValue",
+ "traits": {
+ "smithy.api#documentation": "Value of parameter to start execution of a SageMaker Model Building Pipeline.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Name/Value pair of a parameter to start execution of a SageMaker Model Building\n Pipeline.
"
+ }
+ },
+ "com.amazonaws.eventbridge#SageMakerPipelineParameterList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.eventbridge#SageMakerPipelineParameter"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 200
+ }
+ }
+ },
+ "com.amazonaws.eventbridge#SageMakerPipelineParameterName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 256
+ },
+ "smithy.api#pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9])*$"
+ }
+ },
+ "com.amazonaws.eventbridge#SageMakerPipelineParameterValue": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 1024
+ }
+ }
+ },
+ "com.amazonaws.eventbridge#SageMakerPipelineParameters": {
+ "type": "structure",
+ "members": {
+ "PipelineParameterList": {
+ "target": "com.amazonaws.eventbridge#SageMakerPipelineParameterList",
+ "traits": {
+ "smithy.api#documentation": "List of Parameter names and values for SageMaker Model Building Pipeline execution.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "These are custom parameters to use when the target is a SageMaker Model Building Pipeline\n that starts based on EventBridge events.
"
+ }
+ },
"com.amazonaws.eventbridge#ScheduleExpression": {
"type": "string",
"traits": {
@@ -5888,6 +5955,12 @@
"smithy.api#documentation": "Contains the Redshift Data API parameters to use when the target is a Redshift\n cluster.
\n If you specify a Redshift Cluster as a Target, you can use this to specify parameters to\n invoke the Redshift Data API ExecuteStatement based on EventBridge events.
"
}
},
+ "SageMakerPipelineParameters": {
+ "target": "com.amazonaws.eventbridge#SageMakerPipelineParameters",
+ "traits": {
+ "smithy.api#documentation": "Contains the SageMaker Model Building Pipeline parameters to start execution of a\n SageMaker Model Building Pipeline.
\n If you specify a SageMaker Model Building Pipeline as a target, you can use this to\n specify parameters to start a pipeline execution based on EventBridge events.
"
+ }
+ },
"DeadLetterConfig": {
"target": "com.amazonaws.eventbridge#DeadLetterConfig",
"traits": {
diff --git a/codegen/sdk-codegen/aws-models/fis.2020-12-01.json b/codegen/sdk-codegen/aws-models/fis.2020-12-01.json
index 3bbbff3d1bb..ec586f0c57f 100644
--- a/codegen/sdk-codegen/aws-models/fis.2020-12-01.json
+++ b/codegen/sdk-codegen/aws-models/fis.2020-12-01.json
@@ -667,7 +667,7 @@
"traits": {
"smithy.api#length": {
"min": 0,
- "max": 64
+ "max": 1024
},
"smithy.api#pattern": "[\\S]+"
}
@@ -1199,7 +1199,7 @@
"traits": {
"smithy.api#length": {
"min": 0,
- "max": 64
+ "max": 1024
},
"smithy.api#pattern": "[\\S]+"
}
diff --git a/codegen/sdk-codegen/aws-models/frauddetector.2019-11-15.json b/codegen/sdk-codegen/aws-models/frauddetector.2019-11-15.json
index eaf4cdd8fdc..c30b9f25c57 100644
--- a/codegen/sdk-codegen/aws-models/frauddetector.2019-11-15.json
+++ b/codegen/sdk-codegen/aws-models/frauddetector.2019-11-15.json
@@ -39,6 +39,12 @@
{
"target": "com.amazonaws.frauddetector#BatchGetVariable"
},
+ {
+ "target": "com.amazonaws.frauddetector#CancelBatchPredictionJob"
+ },
+ {
+ "target": "com.amazonaws.frauddetector#CreateBatchPredictionJob"
+ },
{
"target": "com.amazonaws.frauddetector#CreateDetectorVersion"
},
@@ -54,6 +60,9 @@
{
"target": "com.amazonaws.frauddetector#CreateVariable"
},
+ {
+ "target": "com.amazonaws.frauddetector#DeleteBatchPredictionJob"
+ },
{
"target": "com.amazonaws.frauddetector#DeleteDetector"
},
@@ -96,6 +105,9 @@
{
"target": "com.amazonaws.frauddetector#DescribeModelVersions"
},
+ {
+ "target": "com.amazonaws.frauddetector#GetBatchPredictionJobs"
+ },
{
"target": "com.amazonaws.frauddetector#GetDetectors"
},
@@ -228,6 +240,37 @@
"smithy.api#httpError": 403
}
},
+ "com.amazonaws.frauddetector#AsyncJobStatus": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "IN_PROGRESS_INITIALIZING",
+ "name": "IN_PROGRESS_INITIALIZING"
+ },
+ {
+ "value": "IN_PROGRESS",
+ "name": "IN_PROGRESS"
+ },
+ {
+ "value": "CANCEL_IN_PROGRESS",
+ "name": "CANCEL_IN_PROGRESS"
+ },
+ {
+ "value": "CANCELED",
+ "name": "CANCELED"
+ },
+ {
+ "value": "COMPLETE",
+ "name": "COMPLETE"
+ },
+ {
+ "value": "FAILED",
+ "name": "FAILED"
+ }
+ ]
+ }
+ },
"com.amazonaws.frauddetector#BatchCreateVariable": {
"type": "operation",
"input": {
@@ -264,7 +307,7 @@
}
},
"code": {
- "target": "com.amazonaws.frauddetector#integer",
+ "target": "com.amazonaws.frauddetector#Integer2",
"traits": {
"smithy.api#documentation": "The error code.
"
}
@@ -351,7 +394,7 @@
}
},
"code": {
- "target": "com.amazonaws.frauddetector#integer",
+ "target": "com.amazonaws.frauddetector#Integer2",
"traits": {
"smithy.api#documentation": "The error code.
"
}
@@ -402,6 +445,152 @@
}
}
},
+ "com.amazonaws.frauddetector#BatchPrediction": {
+ "type": "structure",
+ "members": {
+ "jobId": {
+ "target": "com.amazonaws.frauddetector#identifier",
+ "traits": {
+ "smithy.api#documentation": "The job ID for the batch prediction.
"
+ }
+ },
+ "status": {
+ "target": "com.amazonaws.frauddetector#AsyncJobStatus",
+ "traits": {
+ "smithy.api#documentation": "The batch prediction status.
"
+ }
+ },
+ "failureReason": {
+ "target": "com.amazonaws.frauddetector#string",
+ "traits": {
+ "smithy.api#documentation": "The reason a batch prediction job failed.
"
+ }
+ },
+ "startTime": {
+ "target": "com.amazonaws.frauddetector#time",
+ "traits": {
+ "smithy.api#documentation": "Timestamp of when the batch prediction job started.
"
+ }
+ },
+ "completionTime": {
+ "target": "com.amazonaws.frauddetector#time",
+ "traits": {
+ "smithy.api#documentation": "Timestamp of when the batch prediction job comleted.
"
+ }
+ },
+ "lastHeartbeatTime": {
+ "target": "com.amazonaws.frauddetector#time",
+ "traits": {
+ "smithy.api#documentation": "Timestamp of most recent heartbeat indicating the batch prediction job was making progress.
"
+ }
+ },
+ "inputPath": {
+ "target": "com.amazonaws.frauddetector#s3BucketLocation",
+ "traits": {
+ "smithy.api#documentation": "The Amazon S3 location of your training file.
"
+ }
+ },
+ "outputPath": {
+ "target": "com.amazonaws.frauddetector#s3BucketLocation",
+ "traits": {
+ "smithy.api#documentation": "The Amazon S3 location of your output file.
"
+ }
+ },
+ "eventTypeName": {
+ "target": "com.amazonaws.frauddetector#identifier",
+ "traits": {
+ "smithy.api#documentation": "The name of the event type.
"
+ }
+ },
+ "detectorName": {
+ "target": "com.amazonaws.frauddetector#identifier",
+ "traits": {
+ "smithy.api#documentation": "The name of the detector.
"
+ }
+ },
+ "detectorVersion": {
+ "target": "com.amazonaws.frauddetector#floatVersionString",
+ "traits": {
+ "smithy.api#documentation": "The detector version.
"
+ }
+ },
+ "iamRoleArn": {
+ "target": "com.amazonaws.frauddetector#iamRoleArn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the IAM role to use for this job request.
"
+ }
+ },
+ "arn": {
+ "target": "com.amazonaws.frauddetector#fraudDetectorArn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of batch prediction job.
"
+ }
+ },
+ "processedRecordsCount": {
+ "target": "com.amazonaws.frauddetector#Integer",
+ "traits": {
+ "smithy.api#documentation": "The number of records processed by the batch prediction job.
"
+ }
+ },
+ "totalRecordsCount": {
+ "target": "com.amazonaws.frauddetector#Integer",
+ "traits": {
+ "smithy.api#documentation": "The total number of records in the batch prediction job.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The batch prediction details.
"
+ }
+ },
+ "com.amazonaws.frauddetector#BatchPredictionList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.frauddetector#BatchPrediction"
+ }
+ },
+ "com.amazonaws.frauddetector#CancelBatchPredictionJob": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.frauddetector#CancelBatchPredictionJobRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.frauddetector#CancelBatchPredictionJobResult"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.frauddetector#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.frauddetector#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.frauddetector#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.frauddetector#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Cancels the specified batch prediction job.
"
+ }
+ },
+ "com.amazonaws.frauddetector#CancelBatchPredictionJobRequest": {
+ "type": "structure",
+ "members": {
+ "jobId": {
+ "target": "com.amazonaws.frauddetector#identifier",
+ "traits": {
+ "smithy.api#documentation": "The ID of the batch prediction job to cancel.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.frauddetector#CancelBatchPredictionJobResult": {
+ "type": "structure",
+ "members": {}
+ },
"com.amazonaws.frauddetector#ConflictException": {
"type": "structure",
"members": {
@@ -418,6 +607,92 @@
"smithy.api#httpError": 409
}
},
+ "com.amazonaws.frauddetector#CreateBatchPredictionJob": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.frauddetector#CreateBatchPredictionJobRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.frauddetector#CreateBatchPredictionJobResult"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.frauddetector#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.frauddetector#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.frauddetector#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Creates a batch prediction job.
"
+ }
+ },
+ "com.amazonaws.frauddetector#CreateBatchPredictionJobRequest": {
+ "type": "structure",
+ "members": {
+ "jobId": {
+ "target": "com.amazonaws.frauddetector#identifier",
+ "traits": {
+ "smithy.api#documentation": "The ID of the batch prediction job.
",
+ "smithy.api#required": {}
+ }
+ },
+ "inputPath": {
+ "target": "com.amazonaws.frauddetector#s3BucketLocation",
+ "traits": {
+ "smithy.api#documentation": "The Amazon S3 location of your training file.
",
+ "smithy.api#required": {}
+ }
+ },
+ "outputPath": {
+ "target": "com.amazonaws.frauddetector#s3BucketLocation",
+ "traits": {
+ "smithy.api#documentation": "The Amazon S3 location of your output file.
",
+ "smithy.api#required": {}
+ }
+ },
+ "eventTypeName": {
+ "target": "com.amazonaws.frauddetector#identifier",
+ "traits": {
+ "smithy.api#documentation": "The name of the event type.
",
+ "smithy.api#required": {}
+ }
+ },
+ "detectorName": {
+ "target": "com.amazonaws.frauddetector#identifier",
+ "traits": {
+ "smithy.api#documentation": "The name of the detector.
",
+ "smithy.api#required": {}
+ }
+ },
+ "detectorVersion": {
+ "target": "com.amazonaws.frauddetector#wholeNumberVersionString",
+ "traits": {
+ "smithy.api#documentation": "The detector version.
"
+ }
+ },
+ "iamRoleArn": {
+ "target": "com.amazonaws.frauddetector#iamRoleArn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the IAM role to use for this job request.
",
+ "smithy.api#required": {}
+ }
+ },
+ "tags": {
+ "target": "com.amazonaws.frauddetector#tagList",
+ "traits": {
+ "smithy.api#documentation": "A collection of key and value pairs.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.frauddetector#CreateBatchPredictionJobResult": {
+ "type": "structure",
+ "members": {}
+ },
"com.amazonaws.frauddetector#CreateDetectorVersion": {
"type": "operation",
"input": {
@@ -925,6 +1200,48 @@
"smithy.api#documentation": "The model training validation messages.
"
}
},
+ "com.amazonaws.frauddetector#DeleteBatchPredictionJob": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.frauddetector#DeleteBatchPredictionJobRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.frauddetector#DeleteBatchPredictionJobResult"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.frauddetector#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.frauddetector#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.frauddetector#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.frauddetector#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Deletes a batch prediction job.
"
+ }
+ },
+ "com.amazonaws.frauddetector#DeleteBatchPredictionJobRequest": {
+ "type": "structure",
+ "members": {
+ "jobId": {
+ "target": "com.amazonaws.frauddetector#identifier",
+ "traits": {
+ "smithy.api#documentation": "The ID of the batch prediction job to delete.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.frauddetector#DeleteBatchPredictionJobResult": {
+ "type": "structure",
+ "members": {}
+ },
"com.amazonaws.frauddetector#DeleteDetector": {
"type": "operation",
"input": {
@@ -2079,6 +2396,77 @@
"smithy.api#documentation": "The message details.
"
}
},
+ "com.amazonaws.frauddetector#GetBatchPredictionJobs": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.frauddetector#GetBatchPredictionJobsRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.frauddetector#GetBatchPredictionJobsResult"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.frauddetector#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.frauddetector#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.frauddetector#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.frauddetector#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Gets all batch prediction jobs or a specific job if you specify a job ID. This is a paginated API. If you provide a null maxResults, this action retrieves a maximum of 50 records per page. If you provide a maxResults, the value must be between 1 and 50. To get the next page results, provide the pagination token from the GetBatchPredictionJobsResponse as part of your request. A null pagination token fetches the records from the beginning.
",
+ "smithy.api#paginated": {
+ "inputToken": "nextToken",
+ "outputToken": "nextToken",
+ "pageSize": "maxResults"
+ }
+ }
+ },
+ "com.amazonaws.frauddetector#GetBatchPredictionJobsRequest": {
+ "type": "structure",
+ "members": {
+ "jobId": {
+ "target": "com.amazonaws.frauddetector#identifier",
+ "traits": {
+ "smithy.api#documentation": "The batch prediction job for which to get the details.
"
+ }
+ },
+ "maxResults": {
+ "target": "com.amazonaws.frauddetector#batchPredictionsMaxPageSize",
+ "traits": {
+ "smithy.api#documentation": "The maximum number of objects to return for the request.
"
+ }
+ },
+ "nextToken": {
+ "target": "com.amazonaws.frauddetector#string",
+ "traits": {
+ "smithy.api#documentation": "The next token from the previous request.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.frauddetector#GetBatchPredictionJobsResult": {
+ "type": "structure",
+ "members": {
+ "batchPredictions": {
+ "target": "com.amazonaws.frauddetector#BatchPredictionList",
+ "traits": {
+ "smithy.api#documentation": "An array containing the details of each batch prediction job.
"
+ }
+ },
+ "nextToken": {
+ "target": "com.amazonaws.frauddetector#string",
+ "traits": {
+ "smithy.api#documentation": "The next token for the subsequent request.
"
+ }
+ }
+ }
+ },
"com.amazonaws.frauddetector#GetDetectorVersion": {
"type": "operation",
"input": {
@@ -3115,6 +3503,15 @@
}
}
},
+ "com.amazonaws.frauddetector#Integer": {
+ "type": "integer",
+ "traits": {
+ "smithy.api#box": {}
+ }
+ },
+ "com.amazonaws.frauddetector#Integer2": {
+ "type": "integer"
+ },
"com.amazonaws.frauddetector#InternalServerException": {
"type": "structure",
"members": {
@@ -5351,6 +5748,16 @@
}
}
},
+ "com.amazonaws.frauddetector#batchPredictionsMaxPageSize": {
+ "type": "integer",
+ "traits": {
+ "smithy.api#box": {},
+ "smithy.api#range": {
+ "min": 1,
+ "max": 50
+ }
+ }
+ },
"com.amazonaws.frauddetector#blob": {
"type": "blob"
},
@@ -5462,9 +5869,6 @@
"smithy.api#pattern": "^[0-9a-z_-]+$"
}
},
- "com.amazonaws.frauddetector#integer": {
- "type": "integer"
- },
"com.amazonaws.frauddetector#labelList": {
"type": "list",
"member": {
@@ -5619,7 +6023,13 @@
}
},
"com.amazonaws.frauddetector#time": {
- "type": "string"
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 11,
+ "max": 30
+ }
+ }
},
"com.amazonaws.frauddetector#variableName": {
"type": "string",
diff --git a/codegen/sdk-codegen/aws-models/gamelift.2015-10-01.json b/codegen/sdk-codegen/aws-models/gamelift.2015-10-01.json
index f2f30ec7ad8..88a19646dac 100644
--- a/codegen/sdk-codegen/aws-models/gamelift.2015-10-01.json
+++ b/codegen/sdk-codegen/aws-models/gamelift.2015-10-01.json
@@ -741,7 +741,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates a fleet of Amazon Elastic Compute Cloud (Amazon EC2) instances to host your\n custom game server or Realtime Servers. Use this operation to configure the computing resources for\n your fleet and provide instructions for running game servers on each instance.
\n Most GameLift fleets can deploy instances to multiple locations, including the home\n Region (where the fleet is created) and an optional set of remote locations. Fleets that\n are created in the following AWS Regions support multiple locations: us-east-1 (N.\n Virginia), us-west-2 (Oregon), eu-central-1 (Frankfurt), eu-west-1 (Ireland),\n ap-southeast-2 (Sydney), ap-northeast-1 (Tokyo), and ap-northeast-2 (Seoul). Fleets that\n created in other GameLift Regions can have instances in the fleet Region only. All\n instances deployed to fleet locations use the same configuration.
\n To create a fleet, choose the hardware for your instances, specify a game server build\n or Realtime script to deploy, and provide a runtime configuration to direct GameLift how\n to start and run game servers on each instance in the fleet. Set permissions for inbound\n traffic to your game servers, and enable optional features as needed. When creating a\n multi-location fleet, provide a list of additional remote locations.
\n \n If successful, this operation creates a new Fleet resource and places it in\n NEW
status, which prompts GameLift to initiate the fleet creation\n workflow . You can track fleet creation by checking fleet status using DescribeFleetAttributes and DescribeFleetLocationAttributes /, or by monitoring fleet creation events\n using DescribeFleetEvents . As soon as the fleet status changes to\n ACTIVE
, you can enable automatic scaling for the fleet with PutScalingPolicy and set capacity for the home Region with UpdateFleetCapacity . When the status of each remote location reaches\n ACTIVE
, you can set capacity by location using UpdateFleetCapacity .
\n\n \n \n Learn more \n
\n \n Setting up fleets \n
\n \n Debug fleet creation issues \n
\n \n Multi-location fleets \n
\n \n Related actions \n
\n \n CreateFleet | \n UpdateFleetCapacity | \n PutScalingPolicy | \n DescribeEC2InstanceLimits | \n DescribeFleetAttributes | \n DescribeFleetLocationAttributes | \n UpdateFleetAttributes | \n StopFleetActions | \n DeleteFleet | \n All APIs by task \n
"
+ "smithy.api#documentation": "Creates a fleet of Amazon Elastic Compute Cloud (Amazon EC2) instances to host your\n custom game server or Realtime Servers. Use this operation to configure the computing resources for\n your fleet and provide instructions for running game servers on each instance.
\n Most GameLift fleets can deploy instances to multiple locations, including the home\n Region (where the fleet is created) and an optional set of remote locations. Fleets that\n are created in the following AWS Regions support multiple locations: us-east-1 (N.\n Virginia), us-west-2 (Oregon), eu-central-1 (Frankfurt), eu-west-1 (Ireland),\n ap-southeast-2 (Sydney), ap-northeast-1 (Tokyo), and ap-northeast-2 (Seoul). Fleets that\n are created in other GameLift Regions can deploy instances in the fleet's home Region\n only. All fleet instances use the same configuration regardless of location; however,\n you can adjust capacity settings and turn auto-scaling on/off for each location.
\n To create a fleet, choose the hardware for your instances, specify a game server build\n or Realtime script to deploy, and provide a runtime configuration to direct GameLift how\n to start and run game servers on each instance in the fleet. Set permissions for inbound\n traffic to your game servers, and enable optional features as needed. When creating a\n multi-location fleet, provide a list of additional remote locations.
\n \n If successful, this operation creates a new Fleet resource and places it in\n NEW
status, which prompts GameLift to initiate the fleet creation\n workflow . You can track fleet creation by checking fleet status using DescribeFleetAttributes and DescribeFleetLocationAttributes /, or by monitoring fleet creation events\n using DescribeFleetEvents . As soon as the fleet status changes to\n ACTIVE
, you can enable automatic scaling for the fleet with PutScalingPolicy and set capacity for the home Region with UpdateFleetCapacity . When the status of each remote location reaches\n ACTIVE
, you can set capacity by location using UpdateFleetCapacity .
\n\n \n \n Learn more \n
\n \n Setting up fleets \n
\n \n Debug fleet creation issues \n
\n \n Multi-location fleets \n
\n \n Related actions \n
\n \n CreateFleet | \n UpdateFleetCapacity | \n PutScalingPolicy | \n DescribeEC2InstanceLimits | \n DescribeFleetAttributes | \n DescribeFleetLocationAttributes | \n UpdateFleetAttributes | \n StopFleetActions | \n DeleteFleet | \n All APIs by task \n
"
}
},
"com.amazonaws.gamelift#CreateFleetInput": {
@@ -1233,6 +1233,9 @@
{
"target": "com.amazonaws.gamelift#LimitExceededException"
},
+ {
+ "target": "com.amazonaws.gamelift#NotFoundException"
+ },
{
"target": "com.amazonaws.gamelift#TaggingFailedException"
},
@@ -1241,7 +1244,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates a placement queue that processes requests for new game sessions. A queue uses\n FleetIQ algorithms to determine the best placement locations and find an\n available game server there, then prompts the game server process to start a new game\n session.
\n A game session queue is configured with a set of destinations (GameLift fleets or\n aliases), which determine the locations where the queue can place new game sessions.\n These destinations can span multiple fleet types (Spot and On-Demand), instance types,\n and AWS Regions. If the queue includes multi-location fleets, the queue is able to place\n game sessions in all of a fleet's remote locations. You can opt to filter out individual\n locations if needed.
\n The queue configuration also determines how FleetIQ selects the best available placement\n for a new game session. Before searching for an available game server, FleetIQ first\n prioritizes the queue's destinations and locations, with the best placement locations on\n top. You can set up the queue to use the FleetIQ default prioritization or provide an\n alternate set of priorities.
\n To create a new queue, provide a name, timeout value, and a list of destinations.\n Optionally, specify a sort configuration and/or a filter, and define a set of latency\n cap policies.
\n If successful, a new GameSessionQueue
object is returned with an assigned\n queue ARN. New game session requests, which are submitted to queue with StartGameSessionPlacement or StartMatchmaking , reference a queue's name or ARN.
\n \n Learn more \n
\n \n \n Design a game session queue \n
\n \n \n Create a game session queue \n
\n \n Related actions \n
\n \n CreateGameSessionQueue | \n DescribeGameSessionQueues | \n UpdateGameSessionQueue | \n DeleteGameSessionQueue | \n All APIs by task \n
"
+ "smithy.api#documentation": "Creates a placement queue that processes requests for new game sessions. A queue uses\n FleetIQ algorithms to determine the best placement locations and find an\n available game server there, then prompts the game server process to start a new game\n session.
\n A game session queue is configured with a set of destinations (GameLift fleets or\n aliases), which determine the locations where the queue can place new game sessions.\n These destinations can span multiple fleet types (Spot and On-Demand), instance types,\n and AWS Regions. If the queue includes multi-location fleets, the queue is able to place\n game sessions in all of a fleet's remote locations. You can opt to filter out individual\n locations if needed.
\n The queue configuration also determines how FleetIQ selects the best available placement\n for a new game session. Before searching for an available game server, FleetIQ first\n prioritizes the queue's destinations and locations, with the best placement locations on\n top. You can set up the queue to use the FleetIQ default prioritization or provide an\n alternate set of priorities.
\n To create a new queue, provide a name, timeout value, and a list of destinations.\n Optionally, specify a sort configuration and/or a filter, and define a set of latency\n cap policies. You can also include the ARN for an Amazon Simple Notification Service\n (SNS) topic to receive notifications of game session placement activity. Notifications\n using SNS or CloudWatch events is the preferred way to track placement activity.
\n If successful, a new GameSessionQueue
object is returned with an assigned\n queue ARN. New game session requests, which are submitted to the queue with StartGameSessionPlacement or StartMatchmaking ,\n reference a queue's name or ARN.
\n \n Learn more \n
\n \n \n Design a game session queue \n
\n \n \n Create a game session queue \n
\n \n Related actions \n
\n \n CreateGameSessionQueue | \n DescribeGameSessionQueues | \n UpdateGameSessionQueue | \n DeleteGameSessionQueue | \n All APIs by task \n
"
}
},
"com.amazonaws.gamelift#CreateGameSessionQueueInput": {
@@ -1284,6 +1287,18 @@
"smithy.api#documentation": "Custom settings to use when prioritizing destinations and locations for game session placements. This \n configuration replaces the FleetIQ default prioritization process. Priority types that are not explicitly \n named will be automatically applied at the end of the prioritization process.
"
}
},
+ "CustomEventData": {
+ "target": "com.amazonaws.gamelift#QueueCustomEventData",
+ "traits": {
+ "smithy.api#documentation": "\n Information to be added to all events that are related to this game session queue.\n
"
+ }
+ },
+ "NotificationTarget": {
+ "target": "com.amazonaws.gamelift#QueueSnsArnStringModel",
+ "traits": {
+ "smithy.api#documentation": "An SNS topic ARN that is set up to receive game session placement notifications. See \n Setting up notifications for game session placement .
"
+ }
+ },
"Tags": {
"target": "com.amazonaws.gamelift#TagList",
"traits": {
@@ -1338,7 +1353,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Defines a new matchmaking configuration for use with FlexMatch. Whether your are using\n FlexMatch with GameLift hosting or as a standalone matchmaking service, the matchmaking\n configuration sets out rules for matching players and forming teams. If you're also\n using GameLift hosting, it defines how to start game sessions for each match. Your\n matchmaking system can use multiple configurations to handle different game scenarios.\n All matchmaking requests (StartMatchmaking or StartMatchBackfill ) identify the matchmaking configuration to use and\n provide player attributes consistent with that configuration.
\n To create a matchmaking configuration, you must provide the following: configuration\n name and FlexMatch mode (with or without GameLift hosting); a rule set that specifies how\n to evaluate players and find acceptable matches; whether player acceptance is required;\n and the maximum time allowed for a matchmaking attempt. When using FlexMatch with GameLift\n hosting, you also need to identify the game session queue to use when starting a game\n session for the match.
\n In addition, you must set up an Amazon Simple Notification Service (SNS) to receive matchmaking notifications, and\n provide the topic ARN in the matchmaking configuration. An alternative method,\n continuously polling ticket status with DescribeMatchmaking , is only\n suitable for games in development with low matchmaking usage.
\n \n Learn more \n
\n \n \n Design a FlexMatch matchmaker \n
\n \n \n Set up FlexMatch event notification \n
\n \n Related actions \n
\n \n CreateMatchmakingConfiguration | \n DescribeMatchmakingConfigurations | \n UpdateMatchmakingConfiguration | \n DeleteMatchmakingConfiguration | \n CreateMatchmakingRuleSet | \n DescribeMatchmakingRuleSets | \n ValidateMatchmakingRuleSet | \n DeleteMatchmakingRuleSet | \n All APIs by task \n
"
+ "smithy.api#documentation": "Defines a new matchmaking configuration for use with FlexMatch. Whether your are using\n FlexMatch with GameLift hosting or as a standalone matchmaking service, the matchmaking\n configuration sets out rules for matching players and forming teams. If you're also\n using GameLift hosting, it defines how to start game sessions for each match. Your\n matchmaking system can use multiple configurations to handle different game scenarios.\n All matchmaking requests (StartMatchmaking or StartMatchBackfill ) identify the matchmaking configuration to use and\n provide player attributes consistent with that configuration.
\n To create a matchmaking configuration, you must provide the following: configuration\n name and FlexMatch mode (with or without GameLift hosting); a rule set that specifies how\n to evaluate players and find acceptable matches; whether player acceptance is required;\n and the maximum time allowed for a matchmaking attempt. When using FlexMatch with GameLift\n hosting, you also need to identify the game session queue to use when starting a game\n session for the match.
\n In addition, you must set up an Amazon Simple Notification Service (SNS) topic to receive matchmaking notifications.\n Provide the topic ARN in the matchmaking configuration. An alternative method,\n continuously polling ticket status with DescribeMatchmaking , is only\n suitable for games in development with low matchmaking usage.
\n \n Learn more \n
\n \n \n Design a FlexMatch matchmaker \n
\n \n \n Set up FlexMatch event notification \n
\n \n Related actions \n
\n \n CreateMatchmakingConfiguration | \n DescribeMatchmakingConfigurations | \n UpdateMatchmakingConfiguration | \n DeleteMatchmakingConfiguration | \n CreateMatchmakingRuleSet | \n DescribeMatchmakingRuleSets | \n ValidateMatchmakingRuleSet | \n DeleteMatchmakingRuleSet | \n All APIs by task \n
"
}
},
"com.amazonaws.gamelift#CreateMatchmakingConfigurationInput": {
@@ -1393,7 +1408,7 @@
"NotificationTarget": {
"target": "com.amazonaws.gamelift#SnsArnStringModel",
"traits": {
- "smithy.api#documentation": "An SNS topic ARN that is set up to receive matchmaking notifications.
"
+ "smithy.api#documentation": "An SNS topic ARN that is set up to receive matchmaking notifications. See \n Setting up notifications for matchmaking for more information.
"
}
},
"AdditionalPlayerCount": {
@@ -7072,6 +7087,18 @@
"traits": {
"smithy.api#documentation": "Custom settings to use when prioritizing destinations and locations for game session placements. This \n configuration replaces the FleetIQ default prioritization process. Priority types that are not explicitly \n named will be automatically applied at the end of the prioritization process.
"
}
+ },
+ "CustomEventData": {
+ "target": "com.amazonaws.gamelift#QueueCustomEventData",
+ "traits": {
+ "smithy.api#documentation": "\n Information that is added to all events that are related to this game session queue.\n
"
+ }
+ },
+ "NotificationTarget": {
+ "target": "com.amazonaws.gamelift#QueueSnsArnStringModel",
+ "traits": {
+ "smithy.api#documentation": "An SNS topic ARN that is set up to receive game session placement notifications. See \n Setting up notifications for game session placement .
"
+ }
}
},
"traits": {
@@ -9408,6 +9435,26 @@
"target": "com.amazonaws.gamelift#ArnStringModel"
}
},
+ "com.amazonaws.gamelift#QueueCustomEventData": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ },
+ "smithy.api#pattern": "[\\s\\S]*"
+ }
+ },
+ "com.amazonaws.gamelift#QueueSnsArnStringModel": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 300
+ },
+ "smithy.api#pattern": "[a-zA-Z0-9:_-]*(\\.fifo)?"
+ }
+ },
"com.amazonaws.gamelift#RegisterGameServer": {
"type": "operation",
"input": {
@@ -11710,6 +11757,18 @@
"traits": {
"smithy.api#documentation": "Custom settings to use when prioritizing destinations and locations for game session placements. This \n configuration replaces the FleetIQ default prioritization process. Priority types that are not explicitly \n named will be automatically applied at the end of the prioritization process. To remove an existing priority configuration, pass in an empty set.
"
}
+ },
+ "CustomEventData": {
+ "target": "com.amazonaws.gamelift#QueueCustomEventData",
+ "traits": {
+ "smithy.api#documentation": "\n Information to be added to all events that are related to this game session queue.\n
"
+ }
+ },
+ "NotificationTarget": {
+ "target": "com.amazonaws.gamelift#QueueSnsArnStringModel",
+ "traits": {
+ "smithy.api#documentation": "An SNS topic ARN that is set up to receive game session placement notifications. See \n Setting up notifications for game session placement .
"
+ }
}
},
"traits": {
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 c87f60b6292..085eed28044 100644
--- a/codegen/sdk-codegen/aws-models/glue.2017-03-31.json
+++ b/codegen/sdk-codegen/aws-models/glue.2017-03-31.json
@@ -9711,7 +9711,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves the security configurations for the resource policies set on individual resources, and also the account-level policy.
\n\t\n\t This operation also returns the Data Catalog resource policy. However, if you enabled metadata encryption in Data Catalog settings, and you do not have permission on the AWS KMS key, the operation can't return the Data Catalog resource policy.
",
+ "smithy.api#documentation": "Retrieves the resource policies set on individual resources by AWS Resource Access Manager\n during cross-account permission grants. Also retrieves the Data Catalog resource\n policy.
\n If you enabled metadata encryption in Data Catalog settings, and you do not have\n permission on the AWS KMS key, the operation can't return the Data Catalog resource\n policy.
",
"smithy.api#paginated": {
"inputToken": "NextToken",
"outputToken": "NextToken",
@@ -9792,7 +9792,7 @@
"ResourceArn": {
"target": "com.amazonaws.glue#GlueResourceArn",
"traits": {
- "smithy.api#documentation": "The ARN of the AWS Glue resource for the resource policy to be retrieved. For more\n information about AWS Glue resource ARNs, see the AWS Glue ARN string pattern \n
"
+ "smithy.api#documentation": "The ARN of the AWS Glue resource for which to retrieve the resource policy. If not\n supplied, the Data Catalog resource policy is returned. Use GetResourcePolicies
\n to view all existing resource policies. For more information see Specifying AWS Glue Resource ARNs .\n
"
}
}
}
@@ -13400,6 +13400,12 @@
"traits": {
"smithy.api#documentation": "The time at which the entry was created.
"
}
+ },
+ "OtherMetadataValueList": {
+ "target": "com.amazonaws.glue#OtherMetadataValueList",
+ "traits": {
+ "smithy.api#documentation": "Other metadata belonging to the same metadata key.
"
+ }
}
},
"traits": {
@@ -13716,6 +13722,32 @@
"target": "com.amazonaws.glue#Order"
}
},
+ "com.amazonaws.glue#OtherMetadataValueList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.glue#OtherMetadataValueListItem"
+ }
+ },
+ "com.amazonaws.glue#OtherMetadataValueListItem": {
+ "type": "structure",
+ "members": {
+ "MetadataValue": {
+ "target": "com.amazonaws.glue#MetadataValueString",
+ "traits": {
+ "smithy.api#documentation": "The metadata key’s corresponding value for the other metadata belonging to the same metadata key.
"
+ }
+ },
+ "CreatedTime": {
+ "target": "com.amazonaws.glue#CreatedTimestamp",
+ "traits": {
+ "smithy.api#documentation": "The time at which the entry was created.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "A structure containing other metadata for a schema version belonging to the same metadata key.
"
+ }
+ },
"com.amazonaws.glue#PageSize": {
"type": "integer",
"traits": {
@@ -14323,7 +14355,7 @@
"ResourceArn": {
"target": "com.amazonaws.glue#GlueResourceArn",
"traits": {
- "smithy.api#documentation": "The ARN of the AWS Glue resource for the resource policy to be set. For more\n information about AWS Glue resource ARNs, see the AWS Glue ARN string pattern \n
"
+ "smithy.api#documentation": "Do not use. For internal use only.
"
}
},
"PolicyHashCondition": {
@@ -14335,13 +14367,13 @@
"PolicyExistsCondition": {
"target": "com.amazonaws.glue#ExistCondition",
"traits": {
- "smithy.api#documentation": "A value of MUST_EXIST
is used to update a policy. A value of\n NOT_EXIST
is used to create a new policy. If a value of NONE
or a\n null value is used, the call will not depend on the existence of a policy.
"
+ "smithy.api#documentation": "A value of MUST_EXIST
is used to update a policy. A value of\n NOT_EXIST
is used to create a new policy. If a value of NONE
or a\n null value is used, the call does not depend on the existence of a policy.
"
}
},
"EnableHybrid": {
"target": "com.amazonaws.glue#EnableHybridValues",
"traits": {
- "smithy.api#documentation": "Allows you to specify if you want to use both resource-level and account/catalog-level resource policies. A resource-level policy is a policy attached to an individual resource such as a database or a table.
\n\t\n\t The default value of NO
indicates that resource-level policies cannot co-exist with an account-level policy. A value of YES
means the use of both resource-level and account/catalog-level resource policies is allowed.
"
+ "smithy.api#documentation": "If 'TRUE'
, indicates that you are using both methods to grant cross-account\n access to Data Catalog resources:
\n \n Must be set to 'TRUE'
if you have already used the Management Console to\n grant cross-account access, otherwise the call fails. Default is 'FALSE'.
"
}
}
}
@@ -15534,7 +15566,7 @@
"min": 1,
"max": 255
},
- "smithy.api#pattern": "[a-zA-Z0-9-_$#]+"
+ "smithy.api#pattern": "[a-zA-Z0-9-_$#.]+"
}
},
"com.amazonaws.glue#SchemaRegistryTokenString": {
diff --git a/codegen/sdk-codegen/aws-models/greengrass.2017-06-07.json b/codegen/sdk-codegen/aws-models/greengrass.2017-06-07.json
index 1b2b74252d5..34bea933c3a 100644
--- a/codegen/sdk-codegen/aws-models/greengrass.2017-06-07.json
+++ b/codegen/sdk-codegen/aws-models/greengrass.2017-06-07.json
@@ -1336,7 +1336,8 @@
"Name": {
"target": "com.amazonaws.greengrass#__string",
"traits": {
- "smithy.api#documentation": "The name of the group."
+ "smithy.api#documentation": "The name of the group.",
+ "smithy.api#required": {}
}
},
"tags": {
diff --git a/codegen/sdk-codegen/aws-models/iam.2010-05-08.json b/codegen/sdk-codegen/aws-models/iam.2010-05-08.json
index 1a940787969..2caa964f4c2 100644
--- a/codegen/sdk-codegen/aws-models/iam.2010-05-08.json
+++ b/codegen/sdk-codegen/aws-models/iam.2010-05-08.json
@@ -732,7 +732,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Adds a new client ID (also known as audience) to the list of client IDs already\n registered for the specified IAM OpenID Connect (OIDC) provider resource.
\n This operation is idempotent; it does not fail or return an error if you add an existing\n client ID to the provider.
"
+ "smithy.api#documentation": "Adds a new client ID (also known as audience) to the list of client IDs already\n registered for the specified IAM OpenID Connect (OIDC) provider resource.
\n This operation is idempotent; it does not fail or return an error if you add an\n existing client ID to the provider.
"
}
},
"com.amazonaws.iam#AddClientIDToOpenIDConnectProviderRequest": {
@@ -741,14 +741,14 @@
"OpenIDConnectProviderArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) provider resource to\n add the client ID to. You can get a list of OIDC provider ARNs by using the ListOpenIDConnectProviders operation.
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) provider resource to\n add the client ID to. You can get a list of OIDC provider ARNs by using the ListOpenIDConnectProviders operation.
",
"smithy.api#required": {}
}
},
"ClientID": {
"target": "com.amazonaws.iam#clientIDType",
"traits": {
- "smithy.api#documentation": "The client ID (also known as audience) to add to the IAM OpenID Connect provider\n resource.
",
+ "smithy.api#documentation": "The client ID (also known as audience) to add to the IAM OpenID Connect provider\n resource.
",
"smithy.api#required": {}
}
}
@@ -777,7 +777,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Adds the specified IAM role to the specified instance profile. An instance profile can\n contain only one role, and this quota cannot be increased. You can remove the existing role\n and then add a different role to an instance profile. You must then wait for the change to\n appear across all of AWS because of eventual consistency .\n To force the change, you must disassociate\n the instance profile and then associate the\n instance profile , or you can stop your instance and then restart it.
\n \n The caller of this operation must be granted the PassRole
permission on the\n IAM role by a permissions policy.
\n \n For more information about roles, see Working with roles . For more\n information about instance profiles, see About instance profiles .
"
+ "smithy.api#documentation": "Adds the specified IAM role to the specified instance profile. An instance profile\n can contain only one role, and this quota cannot be increased. You can remove the\n existing role and then add a different role to an instance profile. You must then wait\n for the change to appear across all of AWS because of eventual\n consistency . To force the change, you must disassociate the instance profile and then associate the\n instance profile , or you can stop your instance and then restart it.
\n \n The caller of this operation must be granted the PassRole
permission\n on the IAM role by a permissions policy.
\n \n For more information about roles, see Working with roles . For more\n information about instance profiles, see About instance\n profiles .
"
}
},
"com.amazonaws.iam#AddRoleToInstanceProfileRequest": {
@@ -786,14 +786,14 @@
"InstanceProfileName": {
"target": "com.amazonaws.iam#instanceProfileNameType",
"traits": {
- "smithy.api#documentation": "The name of the instance profile to update.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the instance profile to update.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name of the role to add.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the role to add.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -825,14 +825,14 @@
"GroupName": {
"target": "com.amazonaws.iam#groupNameType",
"traits": {
- "smithy.api#documentation": "The name of the group to update.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the group to update.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user to add.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the user to add.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -867,7 +867,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Attaches the specified managed policy to the specified IAM group.
\n You use this operation to attach a managed policy to a group. To embed an inline policy in a\n group, use PutGroupPolicy .
\n As a best practice, you can validate your IAM policies. \n To learn more, see Validating IAM policies \n in the IAM User Guide .
\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
"
+ "smithy.api#documentation": "Attaches the specified managed policy to the specified IAM group.
\n You use this operation to attach a managed policy to a group. To embed an inline\n policy in a group, use PutGroupPolicy .
\n As a best practice, you can validate your IAM policies. \n To learn more, see Validating IAM policies \n in the IAM User Guide .
\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
"
}
},
"com.amazonaws.iam#AttachGroupPolicyRequest": {
@@ -876,14 +876,14 @@
"GroupName": {
"target": "com.amazonaws.iam#groupNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) of the group to attach the policy to.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) of the group to attach the policy to.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy you want to attach.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy you want to attach.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
}
@@ -915,7 +915,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Attaches the specified managed policy to the specified IAM role. When you attach a\n managed policy to a role, the managed policy becomes part of the role's permission (access)\n policy.
\n \n You cannot use a managed policy as the role's trust policy. The role's trust policy\n is created at the same time as the role, using CreateRole . You can\n update a role's trust policy using UpdateAssumeRolePolicy .
\n \n Use this operation to attach a managed policy to a role. To embed an\n inline policy in a role, use PutRolePolicy . For more information about\n policies, see Managed policies and inline\n policies in the IAM User Guide .
\n As a best practice, you can validate your IAM policies. \n To learn more, see Validating IAM policies \n in the IAM User Guide .
"
+ "smithy.api#documentation": "Attaches the specified managed policy to the specified IAM role. When you attach a\n managed policy to a role, the managed policy becomes part of the role's permission\n (access) policy.
\n \n You cannot use a managed policy as the role's trust policy. The role's trust\n policy is created at the same time as the role, using CreateRole .\n You can update a role's trust policy using UpdateAssumeRolePolicy .
\n \n Use this operation to attach a managed policy to a role. To embed\n an inline policy in a role, use PutRolePolicy . For more information\n about policies, see Managed policies and inline\n policies in the IAM User Guide .
\n As a best practice, you can validate your IAM policies. \n To learn more, see Validating IAM policies \n in the IAM User Guide .
"
}
},
"com.amazonaws.iam#AttachRolePolicyRequest": {
@@ -924,14 +924,14 @@
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) of the role to attach the policy to.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) of the role to attach the policy to.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy you want to attach.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy you want to attach.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
}
@@ -960,7 +960,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Attaches the specified managed policy to the specified user.
\n You use this operation to attach a managed policy to a user. To embed an\n inline policy in a user, use PutUserPolicy .
\n As a best practice, you can validate your IAM policies. \n To learn more, see Validating IAM policies \n in the IAM User Guide .
\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
"
+ "smithy.api#documentation": "Attaches the specified managed policy to the specified user.
\n You use this operation to attach a managed policy to a user. To\n embed an inline policy in a user, use PutUserPolicy .
\n As a best practice, you can validate your IAM policies. \n To learn more, see Validating IAM policies \n in the IAM User Guide .
\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
"
}
},
"com.amazonaws.iam#AttachUserPolicyRequest": {
@@ -969,14 +969,14 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM user to attach the policy to.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM user to attach the policy to.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy you want to attach.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy you want to attach.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
}
@@ -1051,7 +1051,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Changes the password of the IAM user who is calling this operation. This operation can\n be performed using the AWS CLI, the AWS API, or the My Security\n Credentials page in the AWS Management Console. The AWS account root user password is\n not affected by this operation.
\n Use UpdateLoginProfile to use the AWS CLI, the AWS API, or the\n Users page in the IAM console to change the password\n for any IAM user. For more information about modifying passwords, see Managing\n passwords in the IAM User Guide .
"
+ "smithy.api#documentation": "Changes the password of the IAM user who is calling this operation. This operation\n can be performed using the AWS CLI, the AWS API, or the My\n Security Credentials page in the AWS Management Console. The AWS account root user\n password is not affected by this operation.
\n Use UpdateLoginProfile to use the AWS CLI, the AWS API, or the\n Users page in the IAM console to change the\n password for any IAM user. For more information about modifying passwords, see Managing\n passwords in the IAM User Guide .
"
}
},
"com.amazonaws.iam#ChangePasswordRequest": {
@@ -1067,7 +1067,7 @@
"NewPassword": {
"target": "com.amazonaws.iam#passwordType",
"traits": {
- "smithy.api#documentation": "The new password. The new password must conform to the AWS account's password policy,\n if one exists.
\n The regex pattern \n that is used to validate this parameter is a string of characters. That string can include almost any printable \n ASCII character from the space (\\u0020
) through the end of the ASCII character range (\\u00FF
). \n You can also include the tab (\\u0009
), line feed (\\u000A
), and carriage return (\\u000D
) \n characters. Any of these characters are valid in a password. However, many tools, such \n as the AWS Management Console, might restrict the ability to type certain characters because they have \n special meaning within that tool.
",
+ "smithy.api#documentation": "The new password. The new password must conform to the AWS account's password\n policy, if one exists.
\n The regex pattern \n that is used to validate this parameter is a string of characters. That string can include almost any printable \n ASCII character from the space (\\u0020
) through the end of the ASCII character range (\\u00FF
). \n You can also include the tab (\\u0009
), line feed (\\u000A
), and carriage return (\\u000D
) \n characters. Any of these characters are valid in a password. However, many tools, such \n as the AWS Management Console, might restrict the ability to type certain characters because they have \n special meaning within that tool.
",
"smithy.api#required": {}
}
}
@@ -1223,7 +1223,7 @@
}
],
"traits": {
- "smithy.api#documentation": " Creates a new AWS secret access key and corresponding AWS access key ID for the\n specified user. The default status for new keys is Active
.
\n If you do not specify a user name, IAM determines the user name implicitly based on\n the AWS access key ID signing the request. This operation works for access keys under the\n AWS account. Consequently, you can use this operation to manage AWS account root user\n credentials. This is true even if the AWS account has no associated users.
\n For information about quotas on the number of keys you can create, see IAM and STS\n quotas in the IAM User Guide .
\n \n To ensure the security of your AWS account, the secret access key is accessible\n only during key and user creation. You must save the key (for example, in a text file)\n if you want to be able to access it again. If a secret key is lost, you can delete the\n access keys for the associated user and then create new keys.
\n "
+ "smithy.api#documentation": " Creates a new AWS secret access key and corresponding AWS access key ID for the\n specified user. The default status for new keys is Active
.
\n If you do not specify a user name, IAM determines the user name implicitly based on\n the AWS access key ID signing the request. This operation works for access keys under\n the AWS account. Consequently, you can use this operation to manage AWS account root\n user credentials. This is true even if the AWS account has no associated users.
\n For information about quotas on the number of keys you can create, see IAM and STS\n quotas in the IAM User Guide .
\n \n To ensure the security of your AWS account, the secret access key is accessible\n only during key and user creation. You must save the key (for example, in a text\n file) if you want to be able to access it again. If a secret key is lost, you can\n delete the access keys for the associated user and then create new keys.
\n "
}
},
"com.amazonaws.iam#CreateAccessKeyRequest": {
@@ -1232,7 +1232,7 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM user that the new key will belong to.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The name of the IAM user that the new key will belong to.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
}
}
@@ -1269,7 +1269,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates an alias for your AWS account. For information about using an AWS account\n alias, see Using an\n alias for your AWS account ID in the\n IAM User Guide .
"
+ "smithy.api#documentation": "Creates an alias for your AWS account. For information about using an AWS account\n alias, see Using an\n alias for your AWS account ID in the\n IAM User Guide .
"
}
},
"com.amazonaws.iam#CreateAccountAliasRequest": {
@@ -1278,7 +1278,7 @@
"AccountAlias": {
"target": "com.amazonaws.iam#accountAliasType",
"traits": {
- "smithy.api#documentation": "The account alias to create.
\n This parameter allows (through its regex pattern ) a string of characters consisting of \n lowercase letters, digits, and dashes. You cannot start or finish with a dash, nor can you have \n two dashes in a row.
",
+ "smithy.api#documentation": "The account alias to create.
\n This parameter allows (through its regex pattern ) a string of characters consisting of \n lowercase letters, digits, and dashes. You cannot start or finish with a dash, nor can you have \n two dashes in a row.
",
"smithy.api#required": {}
}
}
@@ -1307,7 +1307,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates a new group.
\n For information about the number of groups you can create, see IAM and STS\n quotas in the IAM User Guide .
"
+ "smithy.api#documentation": "Creates a new group.
\n For information about the number of groups you can create, see IAM and STS\n quotas in the IAM User Guide .
"
}
},
"com.amazonaws.iam#CreateGroupRequest": {
@@ -1316,13 +1316,13 @@
"Path": {
"target": "com.amazonaws.iam#pathType",
"traits": {
- "smithy.api#documentation": " The path to the group. For more information about paths, see IAM\n identifiers in the IAM User Guide .
\n This parameter is optional. If it is not included, it defaults to a slash (/).
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": " The path to the group. For more information about paths, see IAM\n identifiers in the IAM User Guide .
\n This parameter is optional. If it is not included, it defaults to a slash (/).
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"GroupName": {
"target": "com.amazonaws.iam#groupNameType",
"traits": {
- "smithy.api#documentation": "The name of the group to create. Do not include the path in this value.
\n IAM user, group, role, and policy names must be unique within the account. Names are\n not distinguished by case. For example, you cannot create resources named both \"MyResource\"\n and \"myresource\".
",
+ "smithy.api#documentation": "The name of the group to create. Do not include the path in this value.
\n IAM user, group, role, and policy names must be unique within the account. Names are\n not distinguished by case. For example, you cannot create resources named both\n \"MyResource\" and \"myresource\".
",
"smithy.api#required": {}
}
}
@@ -1369,7 +1369,7 @@
}
],
"traits": {
- "smithy.api#documentation": " Creates a new instance profile. For information about instance profiles, see About\n instance profiles .
\n For information about the number of instance profiles you can create, see IAM object\n quotas in the IAM User Guide .
"
+ "smithy.api#documentation": " Creates a new instance profile. For information about instance profiles, see Using\n roles for applications on Amazon EC2 in the\n IAM User Guide , and Instance profiles in the Amazon EC2 User Guide .
\n For information about the number of instance profiles you can create, see IAM object\n quotas in the IAM User Guide .
"
}
},
"com.amazonaws.iam#CreateInstanceProfileRequest": {
@@ -1378,14 +1378,14 @@
"InstanceProfileName": {
"target": "com.amazonaws.iam#instanceProfileNameType",
"traits": {
- "smithy.api#documentation": "The name of the instance profile to create.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the instance profile to create.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"Path": {
"target": "com.amazonaws.iam#pathType",
"traits": {
- "smithy.api#documentation": " The path to the instance profile. For more information about paths, see IAM\n Identifiers in the IAM User Guide .
\n This parameter is optional. If it is not included, it defaults to a slash (/).
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": " The path to the instance profile. For more information about paths, see IAM\n Identifiers in the IAM User Guide .
\n This parameter is optional. If it is not included, it defaults to a slash (/).
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"Tags": {
@@ -1437,7 +1437,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates a password for the specified IAM user. A password allows an IAM user to\n access AWS services through the AWS Management Console.
\n You can use the AWS CLI, the AWS API, or the Users \n page in the IAM console to create a password for any IAM user. Use ChangePassword to update your own existing password in the My Security Credentials page in the AWS Management Console.
\n For more information about managing passwords, see Managing passwords in the\n IAM User Guide .
"
+ "smithy.api#documentation": "Creates a password for the specified IAM user. A password allows an IAM user to\n access AWS services through the AWS Management Console.
\n You can use the AWS CLI, the AWS API, or the Users page in the IAM console to create a password for any IAM user.\n Use ChangePassword to update your own existing password in the\n My Security Credentials page in the\n AWS Management Console.
\n For more information about managing passwords, see Managing passwords in the\n IAM User Guide .
"
}
},
"com.amazonaws.iam#CreateLoginProfileRequest": {
@@ -1446,14 +1446,14 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM user to create a password for. The user must already exist.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the IAM user to create a password for. The user must already\n exist.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"Password": {
"target": "com.amazonaws.iam#passwordType",
"traits": {
- "smithy.api#documentation": "The new password for the user.
\n The regex pattern \n that is used to validate this parameter is a string of characters. That string can include almost any printable \n ASCII character from the space (\\u0020
) through the end of the ASCII character range (\\u00FF
). \n You can also include the tab (\\u0009
), line feed (\\u000A
), and carriage return (\\u000D
) \n characters. Any of these characters are valid in a password. However, many tools, such \n as the AWS Management Console, might restrict the ability to type certain characters because they have \n special meaning within that tool.
",
+ "smithy.api#documentation": "The new password for the user.
\n The regex pattern \n that is used to validate this parameter is a string of characters. That string can include almost any printable \n ASCII character from the space (\\u0020
) through the end of the ASCII character range (\\u00FF
). \n You can also include the tab (\\u0009
), line feed (\\u000A
), and carriage return (\\u000D
) \n characters. Any of these characters are valid in a password. However, many tools, such \n as the AWS Management Console, might restrict the ability to type certain characters because they have \n special meaning within that tool.
",
"smithy.api#required": {}
}
},
@@ -1506,7 +1506,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates an IAM entity to describe an identity provider (IdP) that supports OpenID Connect (OIDC) .
\n The OIDC provider that you create with this operation can be used as a principal in a\n role's trust policy. Such a policy establishes a trust relationship between AWS and the\n OIDC provider.
\n When you create the IAM OIDC provider, you specify the following:
\n \n \n The URL of the OIDC identity provider (IdP) to trust
\n \n \n A list of client IDs (also known as audiences) that identify the application or\n applications that are allowed to authenticate using the OIDC provider
\n \n \n A list of thumbprints of one or more server certificates that the IdP uses
\n \n \n You get all of this information from the OIDC IdP that you want to use to access\n AWS.
\n \n The trust for the OIDC provider is derived from the IAM provider that this\n operation creates. Therefore, it is best to limit access to the CreateOpenIDConnectProvider operation to highly privileged users.
\n "
+ "smithy.api#documentation": "Creates an IAM entity to describe an identity provider (IdP) that supports OpenID Connect (OIDC) .
\n The OIDC provider that you create with this operation can be used as a principal in a\n role's trust policy. Such a policy establishes a trust relationship between AWS and\n the OIDC provider.
\n When you create the IAM OIDC provider, you specify the following:
\n \n \n The URL of the OIDC identity provider (IdP) to trust
\n \n \n A list of client IDs (also known as audiences) that identify the application\n or applications that are allowed to authenticate using the OIDC provider
\n \n \n A list of thumbprints of one or more server certificates that the IdP\n uses
\n \n \n You get all of this information from the OIDC IdP that you want to use to access\n AWS.
\n \n The trust for the OIDC provider is derived from the IAM provider that this\n operation creates. Therefore, it is best to limit access to the CreateOpenIDConnectProvider operation to highly privileged\n users.
\n "
}
},
"com.amazonaws.iam#CreateOpenIDConnectProviderRequest": {
@@ -1515,20 +1515,20 @@
"Url": {
"target": "com.amazonaws.iam#OpenIDConnectProviderUrlType",
"traits": {
- "smithy.api#documentation": "The URL of the identity provider. The URL must begin with https://
and\n should correspond to the iss
claim in the provider's OpenID Connect ID tokens.\n Per the OIDC standard, path components are allowed but query parameters are not. Typically\n the URL consists of only a hostname, like https://server.example.org
or\n https://example.com
.
\n You cannot register the same provider multiple times in a single AWS account. If you\n try to submit a URL that has already been used for an OpenID Connect provider in the AWS\n account, you will get an error.
",
+ "smithy.api#documentation": "The URL of the identity provider. The URL must begin with https://
and\n should correspond to the iss
claim in the provider's OpenID Connect ID\n tokens. Per the OIDC standard, path components are allowed but query parameters are not.\n Typically the URL consists of only a hostname, like\n https://server.example.org
or https://example.com
.
\n You cannot register the same provider multiple times in a single AWS account. If you\n try to submit a URL that has already been used for an OpenID Connect provider in the\n AWS account, you will get an error.
",
"smithy.api#required": {}
}
},
"ClientIDList": {
"target": "com.amazonaws.iam#clientIDListType",
"traits": {
- "smithy.api#documentation": "A list of client IDs (also known as audiences). When a mobile or web app registers with\n an OpenID Connect provider, they establish a value that identifies the application. (This\n is the value that's sent as the client_id
parameter on OAuth requests.)
\n You can register multiple client IDs with the same provider. For example, you might have\n multiple applications that use the same OIDC provider. You cannot register more than 100\n client IDs with a single IAM OIDC provider.
\n There is no defined format for a client ID. The\n CreateOpenIDConnectProviderRequest
operation accepts client IDs up to 255\n characters long.
"
+ "smithy.api#documentation": "A list of client IDs (also known as audiences). When a mobile or web app registers\n with an OpenID Connect provider, they establish a value that identifies the application.\n (This is the value that's sent as the client_id
parameter on OAuth\n requests.)
\n You can register multiple client IDs with the same provider. For example, you might\n have multiple applications that use the same OIDC provider. You cannot register more\n than 100 client IDs with a single IAM OIDC provider.
\n There is no defined format for a client ID. The\n CreateOpenIDConnectProviderRequest
operation accepts client IDs up to\n 255 characters long.
"
}
},
"ThumbprintList": {
"target": "com.amazonaws.iam#thumbprintListType",
"traits": {
- "smithy.api#documentation": "A list of server certificate thumbprints for the OpenID Connect (OIDC) identity\n provider's server certificates. Typically this list includes only one entry. However, IAM\n lets you have up to five thumbprints for an OIDC provider. This lets you maintain multiple\n thumbprints if the identity provider is rotating certificates.
\n The server certificate thumbprint is the hex-encoded SHA-1 hash value of the X.509\n certificate used by the domain where the OpenID Connect provider makes its keys available.\n It is always a 40-character string.
\n You must provide at least one thumbprint when creating an IAM OIDC provider. For\n example, assume that the OIDC provider is server.example.com
and the provider\n stores its keys at https://keys.server.example.com/openid-connect. In that case, the\n thumbprint string would be the hex-encoded SHA-1 hash value of the certificate used by\n https://keys.server.example.com.
\n For more information about obtaining the OIDC provider's thumbprint, see Obtaining the thumbprint for an OpenID Connect provider in the IAM\n User Guide .
",
+ "smithy.api#documentation": "A list of server certificate thumbprints for the OpenID Connect (OIDC) identity\n provider's server certificates. Typically this list includes only one entry. However,\n IAM lets you have up to five thumbprints for an OIDC provider. This lets you maintain\n multiple thumbprints if the identity provider is rotating certificates.
\n The server certificate thumbprint is the hex-encoded SHA-1 hash value of the X.509\n certificate used by the domain where the OpenID Connect provider makes its keys\n available. It is always a 40-character string.
\n You must provide at least one thumbprint when creating an IAM OIDC provider. For\n example, assume that the OIDC provider is server.example.com
and the\n provider stores its keys at https://keys.server.example.com/openid-connect. In that\n case, the thumbprint string would be the hex-encoded SHA-1 hash value of the certificate\n used by https://keys.server.example.com.
\n For more information about obtaining the OIDC provider's thumbprint, see Obtaining the\n thumbprint for an OpenID Connect provider in the IAM User\n Guide .
",
"smithy.api#required": {}
}
},
@@ -1546,7 +1546,7 @@
"OpenIDConnectProviderArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the new IAM OpenID Connect provider that is created.\n For more information, see OpenIDConnectProviderListEntry .
"
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the new IAM OpenID Connect provider that is\n created. For more information, see OpenIDConnectProviderListEntry .\n
"
}
},
"Tags": {
@@ -1589,7 +1589,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates a new managed policy for your AWS account.
\n This operation creates a policy version with a version identifier of v1
and\n sets v1 as the policy's default version. For more information about policy versions, see\n Versioning for managed policies in the\n IAM User Guide .
\n As a best practice, you can validate your IAM policies. \n To learn more, see Validating IAM policies \n in the IAM User Guide .
\n For more\n information about managed policies in general, see Managed policies and inline\n policies in the IAM User Guide .
"
+ "smithy.api#documentation": "Creates a new managed policy for your AWS account.
\n This operation creates a policy version with a version identifier of v1
\n and sets v1 as the policy's default version. For more information about policy versions,\n see Versioning for managed policies in the\n IAM User Guide .
\n As a best practice, you can validate your IAM policies. \n To learn more, see Validating IAM policies \n in the IAM User Guide .
\n For more information about managed policies in general, see Managed\n policies and inline policies in the\n IAM User Guide .
"
}
},
"com.amazonaws.iam#CreatePolicyRequest": {
@@ -1598,27 +1598,27 @@
"PolicyName": {
"target": "com.amazonaws.iam#policyNameType",
"traits": {
- "smithy.api#documentation": "The friendly name of the policy.
\n IAM user, group, role, and policy names must be unique within the account. Names are\n not distinguished by case. For example, you cannot create resources named both \"MyResource\"\n and \"myresource\".
",
+ "smithy.api#documentation": "The friendly name of the policy.
\n IAM user, group, role, and policy names must be unique within the account. Names are\n not distinguished by case. For example, you cannot create resources named both\n \"MyResource\" and \"myresource\".
",
"smithy.api#required": {}
}
},
"Path": {
"target": "com.amazonaws.iam#policyPathType",
"traits": {
- "smithy.api#documentation": "The path for the policy.
\n For more information about paths, see IAM identifiers in the\n IAM User Guide .
\n This parameter is optional. If it is not included, it defaults to a slash (/).
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": "The path for the policy.
\n For more information about paths, see IAM identifiers in the\n IAM User Guide .
\n This parameter is optional. If it is not included, it defaults to a slash (/).
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"PolicyDocument": {
"target": "com.amazonaws.iam#policyDocumentType",
"traits": {
- "smithy.api#documentation": "The JSON policy document that you want to use as the content for the new policy.
\n You must provide policies in JSON format in IAM. However, for AWS CloudFormation\n templates formatted in YAML, you can provide the policy in JSON or YAML format. AWS\n CloudFormation always converts a YAML policy to JSON format before submitting it to\n IAM.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
+ "smithy.api#documentation": "The JSON policy document that you want to use as the content for the new\n policy.
\n You must provide policies in JSON format in IAM. However, for AWS CloudFormation\n templates formatted in YAML, you can provide the policy in JSON or YAML format. AWS\n CloudFormation always converts a YAML policy to JSON format before submitting it to\n IAM.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
"smithy.api#required": {}
}
},
"Description": {
"target": "com.amazonaws.iam#policyDescriptionType",
"traits": {
- "smithy.api#documentation": "A friendly description of the policy.
\n Typically used to store information about the permissions defined in the policy. For\n example, \"Grants access to production DynamoDB tables.\"
\n The policy description is immutable. After a value is assigned, it cannot be\n changed.
"
+ "smithy.api#documentation": "A friendly description of the policy.
\n Typically used to store information about the permissions defined in the policy. For\n example, \"Grants access to production DynamoDB tables.\"
\n The policy description is immutable. After a value is assigned, it cannot be\n changed.
"
}
},
"Tags": {
@@ -1669,7 +1669,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates a new version of the specified managed policy. To update a managed policy, you\n create a new policy version. A managed policy can have up to five versions. If the policy\n has five versions, you must delete an existing version using DeletePolicyVersion before you create a new version.
\n Optionally, you can set the new version as the policy's default version. The default\n version is the version that is in effect for the IAM users, groups, and roles to which\n the policy is attached.
\n For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide .
"
+ "smithy.api#documentation": "Creates a new version of the specified managed policy. To update a managed policy, you\n create a new policy version. A managed policy can have up to five versions. If the\n policy has five versions, you must delete an existing version using DeletePolicyVersion before you create a new version.
\n Optionally, you can set the new version as the policy's default version. The default\n version is the version that is in effect for the IAM users, groups, and roles to which\n the policy is attached.
\n For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide .
"
}
},
"com.amazonaws.iam#CreatePolicyVersionRequest": {
@@ -1678,21 +1678,21 @@
"PolicyArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy to which you want to add a new\n version.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy to which you want to add a new\n version.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
},
"PolicyDocument": {
"target": "com.amazonaws.iam#policyDocumentType",
"traits": {
- "smithy.api#documentation": "The JSON policy document that you want to use as the content for this new version of the\n policy.
\n You must provide policies in JSON format in IAM. However, for AWS CloudFormation\n templates formatted in YAML, you can provide the policy in JSON or YAML format. AWS\n CloudFormation always converts a YAML policy to JSON format before submitting it to\n IAM.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
+ "smithy.api#documentation": "The JSON policy document that you want to use as the content for this new version of\n the policy.
\n You must provide policies in JSON format in IAM. However, for AWS CloudFormation\n templates formatted in YAML, you can provide the policy in JSON or YAML format. AWS\n CloudFormation always converts a YAML policy to JSON format before submitting it to\n IAM.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
"smithy.api#required": {}
}
},
"SetAsDefault": {
"target": "com.amazonaws.iam#booleanType",
"traits": {
- "smithy.api#documentation": "Specifies whether to set this version as the policy's default version.
\n When this parameter is true
, the new policy version becomes the operative\n version. That is, it becomes the version that is in effect for the IAM users, groups, and\n roles that the policy is attached to.
\n For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide .
"
+ "smithy.api#documentation": "Specifies whether to set this version as the policy's default version.
\n When this parameter is true
, the new policy version becomes the operative\n version. That is, it becomes the version that is in effect for the IAM users, groups,\n and roles that the policy is attached to.
\n For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide .
"
}
}
}
@@ -1740,7 +1740,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates a new role for your AWS account. For more information about roles, see\n IAM\n roles . For information about quotas for role names and the number of roles you\n can create, see IAM and STS quotas in the IAM User Guide .
"
+ "smithy.api#documentation": "Creates a new role for your AWS account. For more information about roles, see\n IAM\n roles . For information about quotas for role names and the number of roles\n you can create, see IAM and STS quotas in the\n IAM User Guide .
"
}
},
"com.amazonaws.iam#CreateRoleRequest": {
@@ -1749,20 +1749,20 @@
"Path": {
"target": "com.amazonaws.iam#pathType",
"traits": {
- "smithy.api#documentation": " The path to the role. For more information about paths, see IAM Identifiers in the\n IAM User Guide .
\n This parameter is optional. If it is not included, it defaults to a slash (/).
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": " The path to the role. For more information about paths, see IAM\n Identifiers in the IAM User Guide .
\n This parameter is optional. If it is not included, it defaults to a slash (/).
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name of the role to create.
\n IAM user, group, role, and policy names must be unique within the account. Names are\n not distinguished by case. For example, you cannot create resources named both \"MyResource\"\n and \"myresource\".
",
+ "smithy.api#documentation": "The name of the role to create.
\n IAM user, group, role, and policy names must be unique within the account. Names are\n not distinguished by case. For example, you cannot create resources named both\n \"MyResource\" and \"myresource\".
",
"smithy.api#required": {}
}
},
"AssumeRolePolicyDocument": {
"target": "com.amazonaws.iam#policyDocumentType",
"traits": {
- "smithy.api#documentation": "The trust relationship policy document that grants an entity permission to assume the\n role.
\n\n In IAM, you must provide a JSON policy that has been converted to a string. However,\n for AWS CloudFormation templates formatted in YAML, you can provide the policy in JSON or\n YAML format. AWS CloudFormation always converts a YAML policy to JSON format before\n submitting it to IAM.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n \n Upon success, the response includes\n the same trust policy in JSON format.
",
+ "smithy.api#documentation": "The trust relationship policy document that grants an entity permission to assume the\n role.
\n In IAM, you must provide a JSON policy that has been converted to a string. However,\n for AWS CloudFormation templates formatted in YAML, you can provide the policy in JSON\n or YAML format. AWS CloudFormation always converts a YAML policy to JSON format before\n submitting it to IAM.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n \n Upon success, the response includes the same trust policy in JSON format.
",
"smithy.api#required": {}
}
},
@@ -1775,13 +1775,13 @@
"MaxSessionDuration": {
"target": "com.amazonaws.iam#roleMaxSessionDurationType",
"traits": {
- "smithy.api#documentation": "The maximum session duration (in seconds) that you want to set for the specified role.\n If you do not specify a value for this setting, the default maximum of one hour is applied.\n This setting can have a value from 1 hour to 12 hours.
\n Anyone who assumes the role from the AWS CLI or API can use the\n DurationSeconds
API parameter or the duration-seconds
CLI\n parameter to request a longer session. The MaxSessionDuration
setting\n determines the maximum duration that can be requested using the\n DurationSeconds
parameter. If users don't specify a value for the\n DurationSeconds
parameter, their security credentials are valid for one\n hour by default. This applies when you use the AssumeRole*
API operations or\n the assume-role*
CLI operations but does not apply when you use those\n operations to create a console URL. For more information, see Using IAM roles in the\n IAM User Guide .
"
+ "smithy.api#documentation": "The maximum session duration (in seconds) that you want to set for the specified role.\n If you do not specify a value for this setting, the default maximum of one hour is\n applied. This setting can have a value from 1 hour to 12 hours.
\n Anyone who assumes the role from the AWS CLI or API can use the\n DurationSeconds
API parameter or the duration-seconds
CLI\n parameter to request a longer session. The MaxSessionDuration
setting\n determines the maximum duration that can be requested using the\n DurationSeconds
parameter. If users don't specify a value for the\n DurationSeconds
parameter, their security credentials are valid for one\n hour by default. This applies when you use the AssumeRole*
API operations\n or the assume-role*
CLI operations but does not apply when you use those\n operations to create a console URL. For more information, see Using IAM\n roles in the IAM User Guide .
"
}
},
"PermissionsBoundary": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The ARN of the policy that is used to set the permissions boundary for the role.
"
+ "smithy.api#documentation": "The ARN of the policy that is used to set the permissions boundary for the\n role.
"
}
},
"Tags": {
@@ -1833,7 +1833,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates an IAM resource that describes an identity provider (IdP) that supports SAML\n 2.0.
\n The SAML provider resource that you create with this operation can be used as a\n principal in an IAM role's trust policy. Such a policy can enable federated users who\n sign in using the SAML IdP to assume the role. You can create an IAM role that supports\n Web-based single sign-on (SSO) to the AWS Management Console or one that supports API access to\n AWS.
\n When you create the SAML provider resource, you upload a SAML metadata document that you\n get from your IdP. That document includes the issuer's name, expiration information, and\n keys that can be used to validate the SAML authentication response (assertions) that the\n IdP sends. You must generate the metadata document using the identity management software\n that is used as your organization's IdP.
\n \n This operation requires Signature Version 4 .
\n \n For more information, see Enabling SAML 2.0\n federated users to access the AWS Management Console and About SAML 2.0-based\n federation in the IAM User Guide .
"
+ "smithy.api#documentation": "Creates an IAM resource that describes an identity provider (IdP) that supports SAML\n 2.0.
\n The SAML provider resource that you create with this operation can be used as a\n principal in an IAM role's trust policy. Such a policy can enable federated users who\n sign in using the SAML IdP to assume the role. You can create an IAM role that\n supports Web-based single sign-on (SSO) to the AWS Management Console or one that supports API access\n to AWS.
\n When you create the SAML provider resource, you upload a SAML metadata document that\n you get from your IdP. That document includes the issuer's name, expiration information,\n and keys that can be used to validate the SAML authentication response (assertions) that\n the IdP sends. You must generate the metadata document using the identity management\n software that is used as your organization's IdP.
\n \n This operation requires Signature Version 4 .
\n \n For more information, see Enabling SAML 2.0\n federated users to access the AWS Management Console and About SAML 2.0-based\n federation in the IAM User Guide .
"
}
},
"com.amazonaws.iam#CreateSAMLProviderRequest": {
@@ -1842,14 +1842,14 @@
"SAMLMetadataDocument": {
"target": "com.amazonaws.iam#SAMLMetadataDocumentType",
"traits": {
- "smithy.api#documentation": "An XML document generated by an identity provider (IdP) that supports SAML 2.0. The\n document includes the issuer's name, expiration information, and keys that can be used to\n validate the SAML authentication response (assertions) that are received from the IdP. You\n must generate the metadata document using the identity management software that is used as\n your organization's IdP.
\n For more information, see About SAML 2.0-based\n federation in the IAM User Guide \n
",
+ "smithy.api#documentation": "An XML document generated by an identity provider (IdP) that supports SAML 2.0. The\n document includes the issuer's name, expiration information, and keys that can be used\n to validate the SAML authentication response (assertions) that are received from the\n IdP. You must generate the metadata document using the identity management software that\n is used as your organization's IdP.
\n For more information, see About SAML 2.0-based\n federation in the IAM User Guide \n
",
"smithy.api#required": {}
}
},
"Name": {
"target": "com.amazonaws.iam#SAMLProviderNameType",
"traits": {
- "smithy.api#documentation": "The name of the provider to create.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the provider to create.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
@@ -1904,7 +1904,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates an IAM role that is linked to a specific AWS service. The service controls\n the attached policies and when the role can be deleted. This helps ensure that the service\n is not broken by an unexpectedly changed or deleted role, which could put your AWS\n resources into an unknown state. Allowing the service to control the role helps improve\n service stability and proper cleanup when a service and its role are no longer needed. For\n more information, see Using service-linked roles \n in the IAM User Guide .
\n To attach a policy to this service-linked role, you must make the request using the\n AWS service that depends on this role.
"
+ "smithy.api#documentation": "Creates an IAM role that is linked to a specific AWS service. The service controls\n the attached policies and when the role can be deleted. This helps ensure that the\n service is not broken by an unexpectedly changed or deleted role, which could put your\n AWS resources into an unknown state. Allowing the service to control the role helps\n improve service stability and proper cleanup when a service and its role are no longer\n needed. For more information, see Using service-linked\n roles in the IAM User Guide .
\n To attach a policy to this service-linked role, you must make the request using the\n AWS service that depends on this role.
"
}
},
"com.amazonaws.iam#CreateServiceLinkedRoleRequest": {
@@ -1913,7 +1913,7 @@
"AWSServiceName": {
"target": "com.amazonaws.iam#groupNameType",
"traits": {
- "smithy.api#documentation": "The service principal for the AWS service to which this role is attached. You use a\n string similar to a URL but without the http:// in front. For example:\n elasticbeanstalk.amazonaws.com
.
\n Service principals are unique and case-sensitive. To find the exact service principal\n for your service-linked role, see AWS services that\n work with IAM in the IAM User Guide . Look for the\n services that have Yes in the Service-Linked Role column. Choose the Yes \n link to view the service-linked role documentation for that service.
",
+ "smithy.api#documentation": "The service principal for the AWS service to which this role is attached. You use a\n string similar to a URL but without the http:// in front. For example:\n elasticbeanstalk.amazonaws.com
.
\n Service principals are unique and case-sensitive. To find the exact service principal\n for your service-linked role, see AWS services\n that work with IAM in the IAM User Guide . Look for\n the services that have Yes in the Service-Linked Role column. Choose the Yes link to view the service-linked role documentation for that\n service.
",
"smithy.api#required": {}
}
},
@@ -1926,7 +1926,7 @@
"CustomSuffix": {
"target": "com.amazonaws.iam#customSuffixType",
"traits": {
- "smithy.api#documentation": "
\n A string that you provide, which is combined with the service-provided prefix to form\n the complete role name. If you make multiple requests for the same service, then you must\n supply a different CustomSuffix
for each request. Otherwise the request fails\n with a duplicate role name error. For example, you could add -1
or\n -debug
to the suffix.
\n Some services do not support the CustomSuffix
parameter. If you provide an\n optional suffix and the operation fails, try the operation again without the suffix.
"
+ "smithy.api#documentation": "
\n A string that you provide, which is combined with the service-provided prefix to form\n the complete role name. If you make multiple requests for the same service, then you\n must supply a different CustomSuffix
for each request. Otherwise the\n request fails with a duplicate role name error. For example, you could add\n -1
or -debug
to the suffix.
\n Some services do not support the CustomSuffix
parameter. If you provide\n an optional suffix and the operation fails, try the operation again without the\n suffix.
"
}
}
}
@@ -1937,7 +1937,7 @@
"Role": {
"target": "com.amazonaws.iam#Role",
"traits": {
- "smithy.api#documentation": "A Role object that contains details about the newly created\n role.
"
+ "smithy.api#documentation": "A Role object that contains details about the newly created\n role.
"
}
}
}
@@ -1962,7 +1962,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Generates a set of credentials consisting of a user name and password that can be used\n to access the service specified in the request. These credentials are generated by IAM,\n and can be used only for the specified service.
\n You can have a maximum of two sets of service-specific credentials for each supported\n service per user.
\n You can create service-specific credentials for AWS CodeCommit and Amazon Keyspaces (for Apache\n Cassandra).
\n You can reset the password to a new service-generated value by calling ResetServiceSpecificCredential .
\n For more information about service-specific credentials, see Using IAM with AWS CodeCommit: Git\n credentials, SSH keys, and AWS access keys in the\n IAM User Guide .
"
+ "smithy.api#documentation": "Generates a set of credentials consisting of a user name and password that can be used\n to access the service specified in the request. These credentials are generated by\n IAM, and can be used only for the specified service.
\n You can have a maximum of two sets of service-specific credentials for each supported\n service per user.
\n You can create service-specific credentials for AWS CodeCommit and Amazon Keyspaces (for Apache\n Cassandra).
\n You can reset the password to a new service-generated value by calling ResetServiceSpecificCredential .
\n For more information about service-specific credentials, see Using IAM\n with AWS CodeCommit: Git credentials, SSH keys, and AWS access keys in the\n IAM User Guide .
"
}
},
"com.amazonaws.iam#CreateServiceSpecificCredentialRequest": {
@@ -1971,14 +1971,14 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM user that is to be associated with the credentials. The new\n service-specific credentials have the same permissions as the associated user except that\n they can be used only to access the specified service.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the IAM user that is to be associated with the credentials. The new\n service-specific credentials have the same permissions as the associated user except\n that they can be used only to access the specified service.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"ServiceName": {
"target": "com.amazonaws.iam#serviceName",
"traits": {
- "smithy.api#documentation": "The name of the AWS service that is to be associated with the credentials. The service\n you specify here is the only service that can be accessed using these credentials.
",
+ "smithy.api#documentation": "The name of the AWS service that is to be associated with the credentials. The\n service you specify here is the only service that can be accessed using these\n credentials.
",
"smithy.api#required": {}
}
}
@@ -1990,7 +1990,7 @@
"ServiceSpecificCredential": {
"target": "com.amazonaws.iam#ServiceSpecificCredential",
"traits": {
- "smithy.api#documentation": "A structure that contains information about the newly created service-specific\n credential.
\n \n This is the only time that the password for this credential set is available. It\n cannot be recovered later. Instead, you must reset the password with ResetServiceSpecificCredential .
\n "
+ "smithy.api#documentation": "A structure that contains information about the newly created service-specific\n credential.
\n \n This is the only time that the password for this credential set is available. It\n cannot be recovered later. Instead, you must reset the password with ResetServiceSpecificCredential .
\n "
}
}
}
@@ -2024,7 +2024,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates a new IAM user for your AWS account.
\n For information about quotas for the number of IAM users you can create, see IAM and STS\n quotas in the IAM User Guide .
"
+ "smithy.api#documentation": "Creates a new IAM user for your AWS account.
\n For information about quotas for the number of IAM users you can create, see IAM and STS\n quotas in the IAM User Guide .
"
}
},
"com.amazonaws.iam#CreateUserRequest": {
@@ -2033,20 +2033,20 @@
"Path": {
"target": "com.amazonaws.iam#pathType",
"traits": {
- "smithy.api#documentation": " The path for the user name. For more information about paths, see IAM\n identifiers in the IAM User Guide .
\n This parameter is optional. If it is not included, it defaults to a slash (/).
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": " The path for the user name. For more information about paths, see IAM\n identifiers in the IAM User Guide .
\n This parameter is optional. If it is not included, it defaults to a slash (/).
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name of the user to create.
\n IAM user, group, role, and policy names must be unique within the account. Names are\n not distinguished by case. For example, you cannot create resources named both \"MyResource\"\n and \"myresource\".
",
+ "smithy.api#documentation": "The name of the user to create.
\n IAM user, group, role, and policy names must be unique within the account. Names are\n not distinguished by case. For example, you cannot create resources named both\n \"MyResource\" and \"myresource\".
",
"smithy.api#required": {}
}
},
"PermissionsBoundary": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The ARN of the policy that is used to set the permissions boundary for the user.
"
+ "smithy.api#documentation": "The ARN of the policy that is used to set the permissions boundary for the\n user.
"
}
},
"Tags": {
@@ -2097,7 +2097,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates a new virtual MFA device for the AWS account. After creating the virtual MFA,\n use EnableMFADevice to attach the MFA device to an IAM user. For more\n information about creating and working with virtual MFA devices, see Using a virtual MFA\n device in the IAM User Guide .
\n For information about the maximum number of MFA devices you can create, see IAM and STS\n quotas in the IAM User Guide .
\n \n The seed information contained in the QR code and the Base32 string should be treated\n like any other secret access information. In other words, protect the seed information\n as you would your AWS access keys or your passwords. After you provision your virtual\n device, you should ensure that the information is destroyed following secure\n procedures.
\n "
+ "smithy.api#documentation": "Creates a new virtual MFA device for the AWS account. After creating the virtual\n MFA, use EnableMFADevice to attach the MFA device to an IAM user.\n For more information about creating and working with virtual MFA devices, see Using a virtual MFA\n device in the IAM User Guide .
\n For information about the maximum number of MFA devices you can create, see IAM and STS\n quotas in the IAM User Guide .
\n \n The seed information contained in the QR code and the Base32 string should be\n treated like any other secret access information. In other words, protect the seed\n information as you would your AWS access keys or your passwords. After you\n provision your virtual device, you should ensure that the information is destroyed\n following secure procedures.
\n "
}
},
"com.amazonaws.iam#CreateVirtualMFADeviceRequest": {
@@ -2106,13 +2106,13 @@
"Path": {
"target": "com.amazonaws.iam#pathType",
"traits": {
- "smithy.api#documentation": " The path for the virtual MFA device. For more information about paths, see IAM\n identifiers in the IAM User Guide .
\n This parameter is optional. If it is not included, it defaults to a slash (/).
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": " The path for the virtual MFA device. For more information about paths, see IAM\n identifiers in the IAM User Guide .
\n This parameter is optional. If it is not included, it defaults to a slash (/).
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"VirtualMFADeviceName": {
"target": "com.amazonaws.iam#virtualMFADeviceName",
"traits": {
- "smithy.api#documentation": "The name of the virtual MFA device. Use with path to uniquely identify a virtual MFA\n device.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the virtual MFA device. Use with path to uniquely identify a virtual MFA\n device.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
@@ -2198,7 +2198,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deactivates the specified MFA device and removes it from association with the user name\n for which it was originally enabled.
\n For more information about creating and working with virtual MFA devices, see Enabling a virtual\n multi-factor authentication (MFA) device in the\n IAM User Guide .
"
+ "smithy.api#documentation": "Deactivates the specified MFA device and removes it from association with the user\n name for which it was originally enabled.
\n For more information about creating and working with virtual MFA devices, see Enabling a virtual\n multi-factor authentication (MFA) device in the\n IAM User Guide .
"
}
},
"com.amazonaws.iam#DeactivateMFADeviceRequest": {
@@ -2207,14 +2207,14 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user whose MFA device you want to deactivate.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the user whose MFA device you want to deactivate.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"SerialNumber": {
"target": "com.amazonaws.iam#serialNumberType",
"traits": {
- "smithy.api#documentation": "The serial number that uniquely identifies the MFA device. For virtual MFA devices, the\n serial number is the device ARN.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of upper and lowercase alphanumeric characters with no spaces. You can also include any of the \n following characters: =,.@:/-
",
+ "smithy.api#documentation": "The serial number that uniquely identifies the MFA device. For virtual MFA devices,\n the serial number is the device ARN.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of upper and lowercase alphanumeric characters with no spaces. You can also include any of the \n following characters: =,.@:/-
",
"smithy.api#required": {}
}
}
@@ -2237,7 +2237,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the access key pair associated with the specified IAM user.
\n If you do not specify a user name, IAM determines the user name implicitly based on\n the AWS access key ID signing the request. This operation works for access keys under the\n AWS account. Consequently, you can use this operation to manage AWS account root user\n credentials even if the AWS account has no associated users.
"
+ "smithy.api#documentation": "Deletes the access key pair associated with the specified IAM user.
\n If you do not specify a user name, IAM determines the user name implicitly based on\n the AWS access key ID signing the request. This operation works for access keys under\n the AWS account. Consequently, you can use this operation to manage AWS account root\n user credentials even if the AWS account has no associated users.
"
}
},
"com.amazonaws.iam#DeleteAccessKeyRequest": {
@@ -2246,13 +2246,13 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user whose access key pair you want to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The name of the user whose access key pair you want to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
},
"AccessKeyId": {
"target": "com.amazonaws.iam#accessKeyIdType",
"traits": {
- "smithy.api#documentation": "The access key ID for the access key ID and secret access key you want to delete.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
+ "smithy.api#documentation": "The access key ID for the access key ID and secret access key you want to\n delete.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
"smithy.api#required": {}
}
}
@@ -2275,7 +2275,7 @@
}
],
"traits": {
- "smithy.api#documentation": " Deletes the specified AWS account alias. For information about using an AWS account\n alias, see Using an\n alias for your AWS account ID in the\n IAM User Guide .
"
+ "smithy.api#documentation": " Deletes the specified AWS account alias. For information about using an AWS\n account alias, see Using an alias for your AWS account ID in the\n IAM User Guide .
"
}
},
"com.amazonaws.iam#DeleteAccountAliasRequest": {
@@ -2284,7 +2284,7 @@
"AccountAlias": {
"target": "com.amazonaws.iam#accountAliasType",
"traits": {
- "smithy.api#documentation": "The name of the account alias to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of \n lowercase letters, digits, and dashes. You cannot start or finish with a dash, nor can you have \n two dashes in a row.
",
+ "smithy.api#documentation": "The name of the account alias to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of \n lowercase letters, digits, and dashes. You cannot start or finish with a dash, nor can you have \n two dashes in a row.
",
"smithy.api#required": {}
}
}
@@ -2340,7 +2340,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the specified IAM group. The group must not contain any users or have any\n attached policies.
"
+ "smithy.api#documentation": "Deletes the specified IAM group. The group must not contain any users or have any\n attached policies.
"
}
},
"com.amazonaws.iam#DeleteGroupPolicy": {
@@ -2360,7 +2360,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the specified inline policy that is embedded in the specified IAM\n group.
\n A group can also have managed policies attached to it. To detach a managed policy from a\n group, use DetachGroupPolicy . For more information about policies, refer\n to Managed\n policies and inline policies in the\n IAM User Guide .
"
+ "smithy.api#documentation": "Deletes the specified inline policy that is embedded in the specified IAM\n group.
\n A group can also have managed policies attached to it. To detach a managed policy from\n a group, use DetachGroupPolicy . For more information about policies,\n refer to Managed policies and inline\n policies in the IAM User Guide .
"
}
},
"com.amazonaws.iam#DeleteGroupPolicyRequest": {
@@ -2369,14 +2369,14 @@
"GroupName": {
"target": "com.amazonaws.iam#groupNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) identifying the group that the policy is embedded\n in.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) identifying the group that the policy is embedded\n in.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyName": {
"target": "com.amazonaws.iam#policyNameType",
"traits": {
- "smithy.api#documentation": "The name identifying the policy document to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name identifying the policy document to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -2388,7 +2388,7 @@
"GroupName": {
"target": "com.amazonaws.iam#groupNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM group to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the IAM group to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -2414,7 +2414,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the specified instance profile. The instance profile must not have an associated\n role.
\n \n Make sure that you do not have any Amazon EC2 instances running with the instance\n profile you are about to delete. Deleting a role or instance profile that is associated\n with a running instance will break any applications running on the instance.
\n \n For more information about instance profiles, see About instance profiles .
"
+ "smithy.api#documentation": "Deletes the specified instance profile. The instance profile must not have an\n associated role.
\n \n Make sure that you do not have any Amazon EC2 instances running with the instance\n profile you are about to delete. Deleting a role or instance profile that is\n associated with a running instance will break any applications running on the\n instance.
\n \n For more information about instance profiles, see About instance\n profiles .
"
}
},
"com.amazonaws.iam#DeleteInstanceProfileRequest": {
@@ -2423,7 +2423,7 @@
"InstanceProfileName": {
"target": "com.amazonaws.iam#instanceProfileNameType",
"traits": {
- "smithy.api#documentation": "The name of the instance profile to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the instance profile to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -2449,7 +2449,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the password for the specified IAM user, which terminates the user's ability\n to access AWS services through the AWS Management Console.
\n You can use the AWS CLI, the AWS API, or the Users \n page in the IAM console to delete a password for any IAM user. You can use ChangePassword to update, but not delete, your own password in the My Security Credentials page in the AWS Management Console.
\n \n Deleting a user's password does not prevent a user from accessing AWS through the\n command line interface or the API. To prevent all user access, you must also either make\n any access keys inactive or delete them. For more information about making keys inactive\n or deleting them, see UpdateAccessKey and DeleteAccessKey .
\n "
+ "smithy.api#documentation": "Deletes the password for the specified IAM user, which terminates the user's ability\n to access AWS services through the AWS Management Console.
\n You can use the AWS CLI, the AWS API, or the Users page in the IAM console to delete a password for any IAM user.\n You can use ChangePassword to update, but not delete, your own\n password in the My Security Credentials page in the\n AWS Management Console.
\n \n Deleting a user's password does not prevent a user from accessing AWS through\n the command line interface or the API. To prevent all user access, you must also\n either make any access keys inactive or delete them. For more information about\n making keys inactive or deleting them, see UpdateAccessKey and\n DeleteAccessKey .
\n "
}
},
"com.amazonaws.iam#DeleteLoginProfileRequest": {
@@ -2458,7 +2458,7 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name of the user whose password you want to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the user whose password you want to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -2481,7 +2481,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes an OpenID Connect identity provider (IdP) resource object in IAM.
\n Deleting an IAM OIDC provider resource does not update any roles that reference the\n provider as a principal in their trust policies. Any attempt to assume a role that\n references a deleted provider fails.
\n This operation is idempotent; it does not fail or return an error if you call the\n operation for a provider that does not exist.
"
+ "smithy.api#documentation": "Deletes an OpenID Connect identity provider (IdP) resource object in IAM.
\n Deleting an IAM OIDC provider resource does not update any roles that reference the\n provider as a principal in their trust policies. Any attempt to assume a role that\n references a deleted provider fails.
\n This operation is idempotent; it does not fail or return an error if you call the\n operation for a provider that does not exist.
"
}
},
"com.amazonaws.iam#DeleteOpenIDConnectProviderRequest": {
@@ -2490,7 +2490,7 @@
"OpenIDConnectProviderArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM OpenID Connect provider resource object to\n delete. You can get a list of OpenID Connect provider resource ARNs by using the ListOpenIDConnectProviders operation.
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM OpenID Connect provider resource object to\n delete. You can get a list of OpenID Connect provider resource ARNs by using the ListOpenIDConnectProviders operation.
",
"smithy.api#required": {}
}
}
@@ -2519,7 +2519,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the specified managed policy.
\n Before you can delete a managed policy, you must first detach the policy from all users,\n groups, and roles that it is attached to. In addition, you must delete all the policy's\n versions. The following steps describe the process for deleting a managed policy:
\n \n \n Detach the policy from all users, groups, and roles that the policy is attached\n to, using DetachUserPolicy , DetachGroupPolicy , or DetachRolePolicy . To list all the users,\n groups, and roles that a policy is attached to, use ListEntitiesForPolicy .
\n \n \n Delete all versions of the policy using DeletePolicyVersion . To\n list the policy's versions, use ListPolicyVersions . You cannot use\n DeletePolicyVersion to delete the version that is marked as the\n default version. You delete the policy's default version in the next step of the\n process.
\n \n \n Delete the policy (this automatically deletes the policy's default version) using\n this operation.
\n \n \n For information about managed policies, see Managed policies and inline\n policies in the IAM User Guide .
"
+ "smithy.api#documentation": "Deletes the specified managed policy.
\n Before you can delete a managed policy, you must first detach the policy from all\n users, groups, and roles that it is attached to. In addition, you must delete all the\n policy's versions. The following steps describe the process for deleting a managed\n policy:
\n \n \n Detach the policy from all users, groups, and roles that the policy is\n attached to, using DetachUserPolicy , DetachGroupPolicy , or DetachRolePolicy . To\n list all the users, groups, and roles that a policy is attached to, use ListEntitiesForPolicy .
\n \n \n Delete all versions of the policy using DeletePolicyVersion .\n To list the policy's versions, use ListPolicyVersions . You\n cannot use DeletePolicyVersion to delete the version that is\n marked as the default version. You delete the policy's default version in the\n next step of the process.
\n \n \n Delete the policy (this automatically deletes the policy's default version)\n using this operation.
\n \n \n For information about managed policies, see Managed policies and inline\n policies in the IAM User Guide .
"
}
},
"com.amazonaws.iam#DeletePolicyRequest": {
@@ -2528,7 +2528,7 @@
"PolicyArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy you want to delete.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy you want to delete.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
}
@@ -2557,7 +2557,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the specified version from the specified managed policy.
\n You cannot delete the default version from a policy using this operation. To delete the\n default version from a policy, use DeletePolicy . To find out which\n version of a policy is marked as the default version, use ListPolicyVersions .
\n For information about versions for managed policies, see Versioning for managed\n policies in the IAM User Guide .
"
+ "smithy.api#documentation": "Deletes the specified version from the specified managed policy.
\n You cannot delete the default version from a policy using this operation. To delete\n the default version from a policy, use DeletePolicy . To find out which\n version of a policy is marked as the default version, use ListPolicyVersions .
\n For information about versions for managed policies, see Versioning for managed\n policies in the IAM User Guide .
"
}
},
"com.amazonaws.iam#DeletePolicyVersionRequest": {
@@ -2566,14 +2566,14 @@
"PolicyArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy from which you want to delete a\n version.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy from which you want to delete a\n version.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
},
"VersionId": {
"target": "com.amazonaws.iam#policyVersionIdType",
"traits": {
- "smithy.api#documentation": "The policy version to delete.
\n This parameter allows (through its regex pattern ) a string of characters that \n consists of the lowercase letter 'v' followed by one or two digits, and optionally \n followed by a period '.' and a string of letters and digits.
\n For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide .
",
+ "smithy.api#documentation": "The policy version to delete.
\n This parameter allows (through its regex pattern ) a string of characters that \n consists of the lowercase letter 'v' followed by one or two digits, and optionally \n followed by a period '.' and a string of letters and digits.
\n For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide .
",
"smithy.api#required": {}
}
}
@@ -2605,7 +2605,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the specified role. The role must not have any policies attached. For more\n information about roles, see Working with roles .
\n \n Make sure that you do not have any Amazon EC2 instances running with the role you are\n about to delete. Deleting a role or instance profile that is associated with a running\n instance will break any applications running on the instance.
\n "
+ "smithy.api#documentation": "Deletes the specified role. The role must not have any policies attached. For more\n information about roles, see Working with roles .
\n \n Make sure that you do not have any Amazon EC2 instances running with the role you\n are about to delete. Deleting a role or instance profile that is associated with a\n running instance will break any applications running on the instance.
\n "
}
},
"com.amazonaws.iam#DeleteRolePermissionsBoundary": {
@@ -2625,7 +2625,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the permissions boundary for the specified IAM role.
\n \n Deleting the permissions boundary for a role might increase its permissions. For\n example, it might allow anyone who assumes the role to perform all the actions granted\n in its permissions policies.
\n "
+ "smithy.api#documentation": "Deletes the permissions boundary for the specified IAM role.
\n \n Deleting the permissions boundary for a role might increase its permissions. For\n example, it might allow anyone who assumes the role to perform all the actions\n granted in its permissions policies.
\n "
}
},
"com.amazonaws.iam#DeleteRolePermissionsBoundaryRequest": {
@@ -2634,7 +2634,7 @@
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM role from which you want to remove the\n permissions boundary.
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM role from which you want to remove the\n permissions boundary.
",
"smithy.api#required": {}
}
}
@@ -2660,7 +2660,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the specified inline policy that is embedded in the specified IAM role.
\n A role can also have managed policies attached to it. To detach a managed policy from a\n role, use DetachRolePolicy . For more information about policies, refer to\n Managed\n policies and inline policies in the\n IAM User Guide .
"
+ "smithy.api#documentation": "Deletes the specified inline policy that is embedded in the specified IAM\n role.
\n A role can also have managed policies attached to it. To detach a managed policy from\n a role, use DetachRolePolicy . For more information about policies,\n refer to Managed policies and inline\n policies in the IAM User Guide .
"
}
},
"com.amazonaws.iam#DeleteRolePolicyRequest": {
@@ -2669,14 +2669,14 @@
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) identifying the role that the policy is embedded\n in.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) identifying the role that the policy is embedded\n in.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyName": {
"target": "com.amazonaws.iam#policyNameType",
"traits": {
- "smithy.api#documentation": "The name of the inline policy to delete from the specified IAM role.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the inline policy to delete from the specified IAM role.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -2688,7 +2688,7 @@
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name of the role to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the role to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -2714,7 +2714,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes a SAML provider resource in IAM.
\n Deleting the provider resource from IAM does not update any roles that reference the\n SAML provider resource's ARN as a principal in their trust policies. Any attempt to assume\n a role that references a non-existent provider resource ARN fails.
\n \n This operation requires Signature Version 4 .
\n "
+ "smithy.api#documentation": "Deletes a SAML provider resource in IAM.
\n Deleting the provider resource from IAM does not update any roles that reference the\n SAML provider resource's ARN as a principal in their trust policies. Any attempt to\n assume a role that references a non-existent provider resource ARN fails.
\n \n This operation requires Signature Version 4 .
\n "
}
},
"com.amazonaws.iam#DeleteSAMLProviderRequest": {
@@ -2740,7 +2740,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the specified SSH public key.
\n The SSH public key deleted by this operation is used only for authenticating the\n associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to\n authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH\n connections in the AWS CodeCommit User Guide .
"
+ "smithy.api#documentation": "Deletes the specified SSH public key.
\n The SSH public key deleted by this operation is used only for authenticating the\n associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys\n to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for\n SSH connections in the AWS CodeCommit User Guide .
"
}
},
"com.amazonaws.iam#DeleteSSHPublicKeyRequest": {
@@ -2749,14 +2749,14 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM user associated with the SSH public key.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the IAM user associated with the SSH public key.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"SSHPublicKeyId": {
"target": "com.amazonaws.iam#publicKeyIdType",
"traits": {
- "smithy.api#documentation": "The unique identifier for the SSH public key.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
+ "smithy.api#documentation": "The unique identifier for the SSH public key.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
"smithy.api#required": {}
}
}
@@ -2782,7 +2782,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the specified server certificate.
\n For more information about working with server certificates, see Working with\n server certificates in the IAM User Guide . This topic\n also includes a list of AWS services that can use the server certificates that you manage\n with IAM.
\n \n If you are using a server certificate with Elastic Load Balancing, deleting the\n certificate could have implications for your application. If Elastic Load Balancing\n doesn't detect the deletion of bound certificates, it may continue to use the\n certificates. This could cause Elastic Load Balancing to stop accepting traffic. We\n recommend that you remove the reference to the certificate from Elastic Load Balancing\n before using this command to delete the certificate. For more information, see DeleteLoadBalancerListeners in the Elastic Load Balancing API\n Reference .
\n "
+ "smithy.api#documentation": "Deletes the specified server certificate.
\n For more information about working with server certificates, see Working\n with server certificates in the IAM User Guide . This\n topic also includes a list of AWS services that can use the server certificates that\n you manage with IAM.
\n \n If you are using a server certificate with Elastic Load Balancing, deleting the\n certificate could have implications for your application. If Elastic Load Balancing\n doesn't detect the deletion of bound certificates, it may continue to use the\n certificates. This could cause Elastic Load Balancing to stop accepting traffic. We\n recommend that you remove the reference to the certificate from Elastic Load\n Balancing before using this command to delete the certificate. For more information,\n see DeleteLoadBalancerListeners in the Elastic Load Balancing API\n Reference .
\n "
}
},
"com.amazonaws.iam#DeleteServerCertificateRequest": {
@@ -2791,7 +2791,7 @@
"ServerCertificateName": {
"target": "com.amazonaws.iam#serverCertificateNameType",
"traits": {
- "smithy.api#documentation": "The name of the server certificate you want to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the server certificate you want to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -2817,7 +2817,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Submits a service-linked role deletion request and returns a\n DeletionTaskId
, which you can use to check the status of the deletion. Before\n you call this operation, confirm that the role has no active sessions and that any\n resources used by the role in the linked service are deleted. If you call this operation\n more than once for the same service-linked role and an earlier deletion task is not\n complete, then the DeletionTaskId
of the earlier request is returned.
\n If you submit a deletion request for a service-linked role whose linked service is still\n accessing a resource, then the deletion task fails. If it fails, the GetServiceLinkedRoleDeletionStatus operation returns the reason for the\n failure, usually including the resources that must be deleted. To delete the service-linked\n role, you must first remove those resources from the linked service and then submit the\n deletion request again. Resources are specific to the service that is linked to the role.\n For more information about removing resources from a service, see the AWS documentation for your service.
\n For more information about service-linked roles, see Roles\n terms and concepts: AWS service-linked role in the\n IAM User Guide .
"
+ "smithy.api#documentation": "Submits a service-linked role deletion request and returns a\n DeletionTaskId
, which you can use to check the status of the deletion.\n Before you call this operation, confirm that the role has no active sessions and that\n any resources used by the role in the linked service are deleted. If you call this\n operation more than once for the same service-linked role and an earlier deletion task\n is not complete, then the DeletionTaskId
of the earlier request is\n returned.
\n If you submit a deletion request for a service-linked role whose linked service is\n still accessing a resource, then the deletion task fails. If it fails, the GetServiceLinkedRoleDeletionStatus operation returns the reason for the\n failure, usually including the resources that must be deleted. To delete the\n service-linked role, you must first remove those resources from the linked service and\n then submit the deletion request again. Resources are specific to the service that is\n linked to the role. For more information about removing resources from a service, see\n the AWS documentation for your\n service.
\n For more information about service-linked roles, see Roles terms and concepts: AWS service-linked role in the\n IAM User Guide .
"
}
},
"com.amazonaws.iam#DeleteServiceLinkedRoleRequest": {
@@ -2838,7 +2838,7 @@
"DeletionTaskId": {
"target": "com.amazonaws.iam#DeletionTaskIdType",
"traits": {
- "smithy.api#documentation": "The deletion task identifier that you can use to check the status of the deletion. This\n identifier is returned in the format\n task/aws-service-role///
.
",
+ "smithy.api#documentation": "The deletion task identifier that you can use to check the status of the deletion.\n This identifier is returned in the format\n task/aws-service-role///
.
",
"smithy.api#required": {}
}
}
@@ -2864,13 +2864,13 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM user associated with the service-specific credential. If this\n value is not specified, then the operation assumes the user whose credentials are used to\n call the operation.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The name of the IAM user associated with the service-specific credential. If this\n value is not specified, then the operation assumes the user whose credentials are used\n to call the operation.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
},
"ServiceSpecificCredentialId": {
"target": "com.amazonaws.iam#serviceSpecificCredentialId",
"traits": {
- "smithy.api#documentation": "The unique identifier of the service-specific credential. You can get this value by\n calling ListServiceSpecificCredentials .
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
+ "smithy.api#documentation": "The unique identifier of the service-specific credential. You can get this value by\n calling ListServiceSpecificCredentials .
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
"smithy.api#required": {}
}
}
@@ -2893,7 +2893,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes a signing certificate associated with the specified IAM user.
\n If you do not specify a user name, IAM determines the user name implicitly based on\n the AWS access key ID signing the request. This operation works for access keys under the\n AWS account. Consequently, you can use this operation to manage AWS account root user\n credentials even if the AWS account has no associated IAM users.
"
+ "smithy.api#documentation": "Deletes a signing certificate associated with the specified IAM user.
\n If you do not specify a user name, IAM determines the user name implicitly based on\n the AWS access key ID signing the request. This operation works for access keys under\n the AWS account. Consequently, you can use this operation to manage AWS account root\n user credentials even if the AWS account has no associated IAM users.
"
}
},
"com.amazonaws.iam#DeleteSigningCertificateRequest": {
@@ -2902,13 +2902,13 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user the signing certificate belongs to.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The name of the user the signing certificate belongs to.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
},
"CertificateId": {
"target": "com.amazonaws.iam#certificateIdType",
"traits": {
- "smithy.api#documentation": "The ID of the signing certificate to delete.
\n The format of this parameter, as described by its regex pattern, is a string of characters\n that can be upper- or lower-cased letters or digits.
",
+ "smithy.api#documentation": "The ID of the signing certificate to delete.
\n The format of this parameter, as described by its regex pattern, is a string of\n characters that can be upper- or lower-cased letters or digits.
",
"smithy.api#required": {}
}
}
@@ -2937,7 +2937,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the specified IAM user. Unlike the AWS Management Console, when you delete a user\n programmatically, you must delete the items attached to the user manually, or the deletion\n fails. For more information, see Deleting an IAM\n user . Before attempting to delete a user, remove the following items:
\n "
+ "smithy.api#documentation": "Deletes the specified IAM user. Unlike the AWS Management Console, when you delete a user\n programmatically, you must delete the items attached to the user manually, or the\n deletion fails. For more information, see Deleting an IAM\n user . Before attempting to delete a user, remove the following items:
\n "
}
},
"com.amazonaws.iam#DeleteUserPermissionsBoundary": {
@@ -2954,7 +2954,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the permissions boundary for the specified IAM user.
\n \n Deleting the permissions boundary for a user might increase its permissions by\n allowing the user to perform all the actions granted in its permissions policies.\n
\n "
+ "smithy.api#documentation": "Deletes the permissions boundary for the specified IAM user.
\n \n Deleting the permissions boundary for a user might increase its permissions by\n allowing the user to perform all the actions granted in its permissions policies.\n
\n "
}
},
"com.amazonaws.iam#DeleteUserPermissionsBoundaryRequest": {
@@ -2963,7 +2963,7 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM user from which you want to remove the\n permissions boundary.
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM user from which you want to remove the\n permissions boundary.
",
"smithy.api#required": {}
}
}
@@ -2986,7 +2986,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes the specified inline policy that is embedded in the specified IAM user.
\n A user can also have managed policies attached to it. To detach a managed policy from a\n user, use DetachUserPolicy . For more information about policies, refer to\n Managed\n policies and inline policies in the\n IAM User Guide .
"
+ "smithy.api#documentation": "Deletes the specified inline policy that is embedded in the specified IAM\n user.
\n A user can also have managed policies attached to it. To detach a managed policy from\n a user, use DetachUserPolicy . For more information about policies,\n refer to Managed policies and inline\n policies in the IAM User Guide .
"
}
},
"com.amazonaws.iam#DeleteUserPolicyRequest": {
@@ -2995,14 +2995,14 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) identifying the user that the policy is embedded\n in.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) identifying the user that the policy is embedded\n in.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyName": {
"target": "com.amazonaws.iam#policyNameType",
"traits": {
- "smithy.api#documentation": "The name identifying the policy document to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name identifying the policy document to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -3014,7 +3014,7 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the user to delete.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -3040,7 +3040,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Deletes a virtual MFA device.
\n \n You must deactivate a user's virtual MFA device before you can delete it. For\n information about deactivating MFA devices, see DeactivateMFADevice .\n
\n "
+ "smithy.api#documentation": "Deletes a virtual MFA device.
\n \n You must deactivate a user's virtual MFA device before you can delete it. For\n information about deactivating MFA devices, see DeactivateMFADevice .
\n "
}
},
"com.amazonaws.iam#DeleteVirtualMFADeviceRequest": {
@@ -3049,7 +3049,7 @@
"SerialNumber": {
"target": "com.amazonaws.iam#serialNumberType",
"traits": {
- "smithy.api#documentation": "The serial number that uniquely identifies the MFA device. For virtual MFA devices, the\n serial number is the same as the ARN.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of upper and lowercase alphanumeric characters with no spaces. You can also include any of the \n following characters: =,.@:/-
",
+ "smithy.api#documentation": "The serial number that uniquely identifies the MFA device. For virtual MFA devices,\n the serial number is the same as the ARN.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of upper and lowercase alphanumeric characters with no spaces. You can also include any of the \n following characters: =,.@:/-
",
"smithy.api#required": {}
}
}
@@ -3127,7 +3127,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Removes the specified managed policy from the specified IAM group.
\n A group can also have inline policies embedded with it. To delete an inline policy, use\n DeleteGroupPolicy . For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide .
"
+ "smithy.api#documentation": "Removes the specified managed policy from the specified IAM group.
\n A group can also have inline policies embedded with it. To delete an inline policy,\n use DeleteGroupPolicy . For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide .
"
}
},
"com.amazonaws.iam#DetachGroupPolicyRequest": {
@@ -3136,14 +3136,14 @@
"GroupName": {
"target": "com.amazonaws.iam#groupNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM group to detach the policy from.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM group to detach the policy from.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy you want to detach.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy you want to detach.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
}
@@ -3172,7 +3172,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Removes the specified managed policy from the specified role.
\n A role can also have inline policies embedded with it. To delete an inline policy, use\n DeleteRolePolicy . For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide .
"
+ "smithy.api#documentation": "Removes the specified managed policy from the specified role.
\n A role can also have inline policies embedded with it. To delete an inline policy, use\n DeleteRolePolicy . For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide .
"
}
},
"com.amazonaws.iam#DetachRolePolicyRequest": {
@@ -3181,14 +3181,14 @@
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM role to detach the policy from.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM role to detach the policy from.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy you want to detach.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy you want to detach.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
}
@@ -3214,7 +3214,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Removes the specified managed policy from the specified user.
\n A user can also have inline policies embedded with it. To delete an inline policy, use\n DeleteUserPolicy . For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide .
"
+ "smithy.api#documentation": "Removes the specified managed policy from the specified user.
\n A user can also have inline policies embedded with it. To delete an inline policy, use\n DeleteUserPolicy . For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide .
"
}
},
"com.amazonaws.iam#DetachUserPolicyRequest": {
@@ -3223,14 +3223,14 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM user to detach the policy from.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM user to detach the policy from.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy you want to detach.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy you want to detach.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
}
@@ -3288,7 +3288,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Enables the specified MFA device and associates it with the specified IAM user. When\n enabled, the MFA device is required for every subsequent login by the IAM user associated\n with the device.
"
+ "smithy.api#documentation": "Enables the specified MFA device and associates it with the specified IAM user. When\n enabled, the MFA device is required for every subsequent login by the IAM user\n associated with the device.
"
}
},
"com.amazonaws.iam#EnableMFADeviceRequest": {
@@ -3297,28 +3297,28 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM user for whom you want to enable the MFA device.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the IAM user for whom you want to enable the MFA device.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"SerialNumber": {
"target": "com.amazonaws.iam#serialNumberType",
"traits": {
- "smithy.api#documentation": "The serial number that uniquely identifies the MFA device. For virtual MFA devices, the\n serial number is the device ARN.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of upper and lowercase alphanumeric characters with no spaces. You can also include any of the \n following characters: =,.@:/-
",
+ "smithy.api#documentation": "The serial number that uniquely identifies the MFA device. For virtual MFA devices,\n the serial number is the device ARN.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of upper and lowercase alphanumeric characters with no spaces. You can also include any of the \n following characters: =,.@:/-
",
"smithy.api#required": {}
}
},
"AuthenticationCode1": {
"target": "com.amazonaws.iam#authenticationCodeType",
"traits": {
- "smithy.api#documentation": "An authentication code emitted by the device.
\n The format for this parameter is a string of six digits.
\n \n Submit your request immediately after generating the authentication codes. If you\n generate the codes and then wait too long to submit the request, the MFA device\n successfully associates with the user but the MFA device becomes out of sync. This\n happens because time-based one-time passwords (TOTP) expire after a short period of\n time. If this happens, you can resync the device .
\n ",
+ "smithy.api#documentation": "An authentication code emitted by the device.
\n The format for this parameter is a string of six digits.
\n \n Submit your request immediately after generating the authentication codes. If you\n generate the codes and then wait too long to submit the request, the MFA device\n successfully associates with the user but the MFA device becomes out of sync. This\n happens because time-based one-time passwords (TOTP) expire after a short period of\n time. If this happens, you can resync the\n device .
\n ",
"smithy.api#required": {}
}
},
"AuthenticationCode2": {
"target": "com.amazonaws.iam#authenticationCodeType",
"traits": {
- "smithy.api#documentation": "A subsequent authentication code emitted by the device.
\n The format for this parameter is a string of six digits.
\n \n Submit your request immediately after generating the authentication codes. If you\n generate the codes and then wait too long to submit the request, the MFA device\n successfully associates with the user but the MFA device becomes out of sync. This\n happens because time-based one-time passwords (TOTP) expire after a short period of\n time. If this happens, you can resync the device .
\n ",
+ "smithy.api#documentation": "A subsequent authentication code emitted by the device.
\n The format for this parameter is a string of six digits.
\n \n Submit your request immediately after generating the authentication codes. If you\n generate the codes and then wait too long to submit the request, the MFA device\n successfully associates with the user but the MFA device becomes out of sync. This\n happens because time-based one-time passwords (TOTP) expire after a short period of\n time. If this happens, you can resync the\n device .
\n ",
"smithy.api#required": {}
}
}
@@ -3563,7 +3563,7 @@
}
],
"traits": {
- "smithy.api#documentation": " Generates a credential report for the AWS account. For more information about the\n credential report, see Getting credential reports in the\n IAM User Guide .
"
+ "smithy.api#documentation": " Generates a credential report for the AWS account. For more information about the\n credential report, see Getting credential reports in\n the IAM User Guide .
"
}
},
"com.amazonaws.iam#GenerateCredentialReportResponse": {
@@ -3600,7 +3600,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Generates a report for service last accessed data for AWS Organizations. You can generate a report\n for any entities (organization root, organizational unit, or account) or policies in your\n organization.
\n To call this operation, you must be signed in using your AWS Organizations management account\n credentials. You can use your long-term IAM user or root user credentials, or temporary\n credentials from assuming an IAM role. SCPs must be enabled for your organization root.\n You must have the required IAM and AWS Organizations permissions. For more information, see Refining\n permissions using service last accessed data in the\n IAM User Guide .
\n You can generate a service last accessed data report for entities by specifying only the\n entity's path. This data includes a list of services that are allowed by any service\n control policies (SCPs) that apply to the entity.
\n You can generate a service last accessed data report for a policy by specifying an\n entity's path and an optional AWS Organizations policy ID. This data includes a list of services that\n are allowed by the specified SCP.
\n For each service in both report types, the data includes the most recent account\n activity that the policy allows to account principals in the entity or the entity's\n children. For important information about the data, reporting period, permissions required,\n troubleshooting, and supported Regions see Reducing permissions using\n service last accessed data in the IAM User Guide .
\n \n The data includes all attempts to access AWS, not just the successful ones. This\n includes all attempts that were made using the AWS Management Console, the AWS API through any of\n the SDKs, or any of the command line tools. An unexpected entry in the service last\n accessed data does not mean that an account has been compromised, because the request\n might have been denied. Refer to your CloudTrail logs as the authoritative source for\n information about all API calls and whether they were successful or denied access. For\n more information, see Logging IAM events with\n CloudTrail in the IAM User Guide .
\n \n This operation returns a JobId
. Use this parameter in the \n GetOrganizationsAccessReport \n
operation to check the status of the\n report generation. To check the status of this request, use the JobId
\n parameter in the \n GetOrganizationsAccessReport \n
operation and\n test the JobStatus
response parameter. When the job is complete, you can\n retrieve the report.
\n To generate a service last accessed data report for entities, specify an entity path\n without specifying the optional AWS Organizations policy ID. The type of entity that you specify\n determines the data returned in the report.
\n \n \n \n Root – When you specify the organizations\n root as the entity, the resulting report lists all of the services allowed by SCPs\n that are attached to your root. For each service, the report includes data for all\n accounts in your organization except the management account, because the\n management account is not limited by SCPs.
\n \n \n \n OU – When you specify an organizational\n unit (OU) as the entity, the resulting report lists all of the services allowed by\n SCPs that are attached to the OU and its parents. For each service, the report\n includes data for all accounts in the OU or its children. This data excludes the\n management account, because the management account is not limited by SCPs.
\n \n \n \n management account – When you specify the\n management account, the resulting report lists all AWS services, because the\n management account is not limited by SCPs. For each service, the report includes data\n for only the management account.
\n \n \n \n Account – When you specify another account\n as the entity, the resulting report lists all of the services allowed by SCPs that\n are attached to the account and its parents. For each service, the report includes\n data for only the specified account.
\n \n \n To generate a service last accessed data report for policies, specify an entity path and\n the optional AWS Organizations policy ID. The type of entity that you specify determines the data\n returned for each service.
\n \n \n \n Root – When you specify the root entity\n and a policy ID, the resulting report lists all of the services that are allowed by\n the specified SCP. For each service, the report includes data for all accounts in\n your organization to which the SCP applies. This data excludes the management account,\n because the management account is not limited by SCPs. If the SCP is not attached to\n any entities in the organization, then the report will return a list of services with\n no data.
\n \n \n \n OU – When you specify an OU entity and a\n policy ID, the resulting report lists all of the services that are allowed by the\n specified SCP. For each service, the report includes data for all accounts in the OU\n or its children to which the SCP applies. This means that other accounts outside the\n OU that are affected by the SCP might not be included in the data. This data excludes\n the management account, because the management account is not limited by SCPs. If the\n SCP is not attached to the OU or one of its children, the report will return a list\n of services with no data.
\n \n \n \n management account – When you specify the\n management account, the resulting report lists all AWS services, because the\n management account is not limited by SCPs. If you specify a policy ID in the CLI or\n API, the policy is ignored. For each service, the report includes data for only the\n management account.
\n \n \n \n Account – When you specify another account\n entity and a policy ID, the resulting report lists all of the services that are\n allowed by the specified SCP. For each service, the report includes data for only the\n specified account. This means that other accounts in the organization that are\n affected by the SCP might not be included in the data. If the SCP is not attached to\n the account, the report will return a list of services with no data.
\n \n \n \n Service last accessed data does not use other policy types when determining whether a\n principal could access a service. These other policy types include identity-based\n policies, resource-based policies, access control lists, IAM permissions boundaries,\n and STS assume role policies. It only applies SCP logic. For more about the evaluation\n of policy types, see Evaluating policies in the IAM User Guide .
\n \n For more information about service last accessed data, see Reducing policy scope by\n viewing user activity in the IAM User Guide .
"
+ "smithy.api#documentation": "Generates a report for service last accessed data for AWS Organizations. You can generate a report\n for any entities (organization root, organizational unit, or account) or policies in\n your organization.
\n To call this operation, you must be signed in using your AWS Organizations management account\n credentials. You can use your long-term IAM user or root user credentials, or\n temporary credentials from assuming an IAM role. SCPs must be enabled for your\n organization root. You must have the required IAM and AWS Organizations permissions. For more\n information, see Refining permissions using\n service last accessed data in the\n IAM User Guide .
\n You can generate a service last accessed data report for entities by specifying only\n the entity's path. This data includes a list of services that are allowed by any service\n control policies (SCPs) that apply to the entity.
\n You can generate a service last accessed data report for a policy by specifying an\n entity's path and an optional AWS Organizations policy ID. This data includes a list of services that\n are allowed by the specified SCP.
\n For each service in both report types, the data includes the most recent account\n activity that the policy allows to account principals in the entity or the entity's\n children. For important information about the data, reporting period, permissions\n required, troubleshooting, and supported Regions see Reducing permissions using\n service last accessed data in the\n IAM User Guide .
\n \n The data includes all attempts to access AWS, not just the successful ones. This\n includes all attempts that were made using the AWS Management Console, the AWS API through any\n of the SDKs, or any of the command line tools. An unexpected entry in the service\n last accessed data does not mean that an account has been compromised, because the\n request might have been denied. Refer to your CloudTrail logs as the authoritative\n source for information about all API calls and whether they were successful or\n denied access. For more information, see Logging IAM events with\n CloudTrail in the IAM User Guide .
\n \n This operation returns a JobId
. Use this parameter in the \n GetOrganizationsAccessReport \n
operation to check the status of\n the report generation. To check the status of this request, use the JobId
\n parameter in the \n GetOrganizationsAccessReport \n
operation\n and test the JobStatus
response parameter. When the job is complete, you\n can retrieve the report.
\n To generate a service last accessed data report for entities, specify an entity path\n without specifying the optional AWS Organizations policy ID. The type of entity that you specify\n determines the data returned in the report.
\n \n \n \n Root – When you specify the\n organizations root as the entity, the resulting report lists all of the services\n allowed by SCPs that are attached to your root. For each service, the report\n includes data for all accounts in your organization except the\n management account, because the management account is not limited by SCPs.
\n \n \n \n OU – When you specify an\n organizational unit (OU) as the entity, the resulting report lists all of the\n services allowed by SCPs that are attached to the OU and its parents. For each\n service, the report includes data for all accounts in the OU or its children.\n This data excludes the management account, because the management account is not\n limited by SCPs.
\n \n \n \n management account – When you specify the\n management account, the resulting report lists all AWS services, because the\n management account is not limited by SCPs. For each service, the report includes\n data for only the management account.
\n \n \n \n Account – When you specify another\n account as the entity, the resulting report lists all of the services allowed by\n SCPs that are attached to the account and its parents. For each service, the\n report includes data for only the specified account.
\n \n \n To generate a service last accessed data report for policies, specify an entity path\n and the optional AWS Organizations policy ID. The type of entity that you specify determines the data\n returned for each service.
\n \n \n \n Root – When you specify the root\n entity and a policy ID, the resulting report lists all of the services that are\n allowed by the specified SCP. For each service, the report includes data for all\n accounts in your organization to which the SCP applies. This data excludes the\n management account, because the management account is not limited by SCPs. If the\n SCP is not attached to any entities in the organization, then the report will\n return a list of services with no data.
\n \n \n \n OU – When you specify an OU entity and\n a policy ID, the resulting report lists all of the services that are allowed by\n the specified SCP. For each service, the report includes data for all accounts\n in the OU or its children to which the SCP applies. This means that other\n accounts outside the OU that are affected by the SCP might not be included in\n the data. This data excludes the management account, because the\n management account is not limited by SCPs. If the SCP is not attached to the OU\n or one of its children, the report will return a list of services with no\n data.
\n \n \n \n management account – When you specify the\n management account, the resulting report lists all AWS services, because the\n management account is not limited by SCPs. If you specify a policy ID in the CLI\n or API, the policy is ignored. For each service, the report includes data for\n only the management account.
\n \n \n \n Account – When you specify another\n account entity and a policy ID, the resulting report lists all of the services\n that are allowed by the specified SCP. For each service, the report includes\n data for only the specified account. This means that other accounts in the\n organization that are affected by the SCP might not be included in the data. If\n the SCP is not attached to the account, the report will return a list of\n services with no data.
\n \n \n \n Service last accessed data does not use other policy types when determining\n whether a principal could access a service. These other policy types include\n identity-based policies, resource-based policies, access control lists, IAM\n permissions boundaries, and STS assume role policies. It only applies SCP logic.\n For more about the evaluation of policy types, see Evaluating policies in the\n IAM User Guide .
\n \n For more information about service last accessed data, see Reducing policy scope by\n viewing user activity in the IAM User Guide .
"
}
},
"com.amazonaws.iam#GenerateOrganizationsAccessReportRequest": {
@@ -3609,14 +3609,14 @@
"EntityPath": {
"target": "com.amazonaws.iam#organizationsEntityPathType",
"traits": {
- "smithy.api#documentation": "The path of the AWS Organizations entity (root, OU, or account). You can build an entity path using\n the known structure of your organization. For example, assume that your account ID is\n 123456789012
and its parent OU ID is ou-rge0-awsabcde
. The\n organization root ID is r-f6g7h8i9j0example
and your organization ID is\n o-a1b2c3d4e5
. Your entity path is\n o-a1b2c3d4e5/r-f6g7h8i9j0example/ou-rge0-awsabcde/123456789012
.
",
+ "smithy.api#documentation": "The path of the AWS Organizations entity (root, OU, or account). You can build an entity path using\n the known structure of your organization. For example, assume that your account ID is\n 123456789012
and its parent OU ID is ou-rge0-awsabcde
. The\n organization root ID is r-f6g7h8i9j0example
and your organization ID is\n o-a1b2c3d4e5
. Your entity path is\n o-a1b2c3d4e5/r-f6g7h8i9j0example/ou-rge0-awsabcde/123456789012
.
",
"smithy.api#required": {}
}
},
"OrganizationsPolicyId": {
"target": "com.amazonaws.iam#organizationsPolicyIdType",
"traits": {
- "smithy.api#documentation": "The identifier of the AWS Organizations service control policy (SCP). This parameter is\n optional.
\n This ID is used to generate information about when an account principal that is limited\n by the SCP attempted to access an AWS service.
"
+ "smithy.api#documentation": "The identifier of the AWS Organizations service control policy (SCP). This parameter is\n optional.
\n This ID is used to generate information about when an account principal that is\n limited by the SCP attempted to access an AWS service.
"
}
}
}
@@ -3649,7 +3649,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Generates a report that includes details about when an IAM resource (user, group,\n role, or policy) was last used in an attempt to access AWS services. Recent activity\n usually appears within four hours. IAM reports activity for the last 365 days, or less if\n your Region began supporting this feature within the last year. For more information, see\n Regions where data is tracked .
\n \n The service last accessed data includes all attempts to access an AWS API, not just\n the successful ones. This includes all attempts that were made using the AWS Management Console, the\n AWS API through any of the SDKs, or any of the command line tools. An unexpected entry\n in the service last accessed data does not mean that your account has been compromised,\n because the request might have been denied. Refer to your CloudTrail logs as the\n authoritative source for information about all API calls and whether they were\n successful or denied access. For more information, see Logging IAM events with\n CloudTrail in the IAM User Guide .
\n \n The GenerateServiceLastAccessedDetails
operation returns a\n JobId
. Use this parameter in the following operations to retrieve the\n following details from your report:
\n \n \n \n GetServiceLastAccessedDetails – Use this operation for\n users, groups, roles, or policies to list every AWS service that the resource could\n access using permissions policies. For each service, the response includes\n information about the most recent access attempt.
\n The JobId
returned by GenerateServiceLastAccessedDetail
\n must be used by the same role within a session, or by the same user when used to call\n GetServiceLastAccessedDetail
.
\n \n \n \n GetServiceLastAccessedDetailsWithEntities – Use this\n operation for groups and policies to list information about the associated entities\n (users or roles) that attempted to access a specific AWS service.
\n \n \n To check the status of the GenerateServiceLastAccessedDetails
request, use\n the JobId
parameter in the same operations and test the JobStatus
\n response parameter.
\n For additional information about the permissions policies that allow an identity (user,\n group, or role) to access specific services, use the ListPoliciesGrantingServiceAccess operation.
\n \n Service last accessed data does not use other policy types when determining whether a\n resource could access a service. These other policy types include resource-based\n policies, access control lists, AWS Organizations policies, IAM permissions boundaries,\n and AWS STS assume role policies. It only applies permissions policy logic. For more\n about the evaluation of policy types, see Evaluating policies in the IAM User Guide .
\n \n For more information about service and action last accessed data, see Reducing\n permissions using service last accessed data in the\n IAM User Guide .
"
+ "smithy.api#documentation": "Generates a report that includes details about when an IAM resource (user, group,\n role, or policy) was last used in an attempt to access AWS services. Recent activity\n usually appears within four hours. IAM reports activity for the last 365 days, or less\n if your Region began supporting this feature within the last year. For more information,\n see Regions where data is tracked .
\n \n The service last accessed data includes all attempts to access an AWS API, not\n just the successful ones. This includes all attempts that were made using the\n AWS Management Console, the AWS API through any of the SDKs, or any of the command line tools.\n An unexpected entry in the service last accessed data does not mean that your\n account has been compromised, because the request might have been denied. Refer to\n your CloudTrail logs as the authoritative source for information about all API calls\n and whether they were successful or denied access. For more information, see Logging\n IAM events with CloudTrail in the\n IAM User Guide .
\n \n The GenerateServiceLastAccessedDetails
operation returns a\n JobId
. Use this parameter in the following operations to retrieve the\n following details from your report:
\n \n \n \n GetServiceLastAccessedDetails – Use this operation\n for users, groups, roles, or policies to list every AWS service that the\n resource could access using permissions policies. For each service, the response\n includes information about the most recent access attempt.
\n The JobId
returned by\n GenerateServiceLastAccessedDetail
must be used by the same role\n within a session, or by the same user when used to call\n GetServiceLastAccessedDetail
.
\n \n \n \n GetServiceLastAccessedDetailsWithEntities – Use this\n operation for groups and policies to list information about the associated\n entities (users or roles) that attempted to access a specific AWS service.\n
\n \n \n To check the status of the GenerateServiceLastAccessedDetails
request,\n use the JobId
parameter in the same operations and test the\n JobStatus
response parameter.
\n For additional information about the permissions policies that allow an identity\n (user, group, or role) to access specific services, use the ListPoliciesGrantingServiceAccess operation.
\n \n Service last accessed data does not use other policy types when determining\n whether a resource could access a service. These other policy types include\n resource-based policies, access control lists, AWS Organizations policies, IAM\n permissions boundaries, and AWS STS assume role policies. It only applies\n permissions policy logic. For more about the evaluation of policy types, see Evaluating policies in the\n IAM User Guide .
\n \n For more information about service and action last accessed data, see Reducing permissions using service last accessed data in the\n IAM User Guide .
"
}
},
"com.amazonaws.iam#GenerateServiceLastAccessedDetailsRequest": {
@@ -3658,14 +3658,14 @@
"Arn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The ARN of the IAM resource (user, group, role, or managed policy) used to generate\n information about when the resource was last used in an attempt to access an AWS\n service.
",
+ "smithy.api#documentation": "The ARN of the IAM resource (user, group, role, or managed policy) used to generate\n information about when the resource was last used in an attempt to access an AWS\n service.
",
"smithy.api#required": {}
}
},
"Granularity": {
"target": "com.amazonaws.iam#AccessAdvisorUsageGranularityType",
"traits": {
- "smithy.api#documentation": "The level of detail that you want to generate. You can specify whether you want to\n generate information about the last attempt to access services or actions. If you specify\n service-level granularity, this operation generates only service data. If you specify\n action-level granularity, it generates service and action data. If you don't include this\n optional parameter, the operation generates service data.
"
+ "smithy.api#documentation": "The level of detail that you want to generate. You can specify whether you want to\n generate information about the last attempt to access services or actions. If you\n specify service-level granularity, this operation generates only service data. If you\n specify action-level granularity, it generates service and action data. If you don't\n include this optional parameter, the operation generates service data.
"
}
}
}
@@ -3676,7 +3676,7 @@
"JobId": {
"target": "com.amazonaws.iam#jobIDType",
"traits": {
- "smithy.api#documentation": "The JobId
that you can use in the GetServiceLastAccessedDetails or GetServiceLastAccessedDetailsWithEntities operations. The JobId
\n returned by GenerateServiceLastAccessedDetail
must be used by the same role\n within a session, or by the same user when used to call\n GetServiceLastAccessedDetail
.
"
+ "smithy.api#documentation": "The JobId
that you can use in the GetServiceLastAccessedDetails or GetServiceLastAccessedDetailsWithEntities operations. The\n JobId
returned by GenerateServiceLastAccessedDetail
must\n be used by the same role within a session, or by the same user when used to call\n GetServiceLastAccessedDetail
.
"
}
}
}
@@ -3689,8 +3689,13 @@
"output": {
"target": "com.amazonaws.iam#GetAccessKeyLastUsedResponse"
},
+ "errors": [
+ {
+ "target": "com.amazonaws.iam#NoSuchEntityException"
+ }
+ ],
"traits": {
- "smithy.api#documentation": "Retrieves information about when the specified access key was last used. The information\n includes the date and time of last use, along with the AWS service and Region that were\n specified in the last request made with that key.
"
+ "smithy.api#documentation": "Retrieves information about when the specified access key was last used. The\n information includes the date and time of last use, along with the AWS service and\n Region that were specified in the last request made with that key.
"
}
},
"com.amazonaws.iam#GetAccessKeyLastUsedRequest": {
@@ -3699,7 +3704,7 @@
"AccessKeyId": {
"target": "com.amazonaws.iam#accessKeyIdType",
"traits": {
- "smithy.api#documentation": "The identifier of an access key.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
+ "smithy.api#documentation": "The identifier of an access key.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
"smithy.api#required": {}
}
}
@@ -3711,7 +3716,7 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the AWS IAM user that owns this access key.
\n
"
+ "smithy.api#documentation": "The name of the AWS IAM user that owns this access key.
\n
"
}
},
"AccessKeyLastUsed": {
@@ -3739,7 +3744,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves information about all IAM users, groups, roles, and policies in your AWS\n account, including their relationships to one another. Use this operation to obtain a snapshot of\n the configuration of IAM permissions (users, groups, roles, and policies) in your\n account.
\n \n Policies returned by this operation are URL-encoded compliant \n with RFC 3986 . You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode
method of the java.net.URLDecoder
utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.
\n \n You can optionally filter the results using the\n Filter
parameter. You can paginate the results using the\n MaxItems
and Marker
parameters.
",
+ "smithy.api#documentation": "Retrieves information about all IAM users, groups, roles, and policies in your AWS\n account, including their relationships to one another. Use this operation to obtain a\n snapshot of the configuration of IAM permissions (users, groups, roles, and policies)\n in your account.
\n \n Policies returned by this operation are URL-encoded compliant \n with RFC 3986 . You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode
method of the java.net.URLDecoder
utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.
\n \n You can optionally filter the results using the Filter
parameter. You can\n paginate the results using the MaxItems
and Marker
\n parameters.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -3753,7 +3758,7 @@
"Filter": {
"target": "com.amazonaws.iam#entityListType",
"traits": {
- "smithy.api#documentation": "A list of entity types used to filter the results. Only the entities that match the\n types you specify are included in the output. Use the value LocalManagedPolicy
\n to include customer managed policies.
\n The format for this parameter is a comma-separated (if more than one) list of strings.\n Each string value in the list must be one of the valid values listed below.
"
+ "smithy.api#documentation": "A list of entity types used to filter the results. Only the entities that match the\n types you specify are included in the output. Use the value\n LocalManagedPolicy
to include customer managed policies.
\n The format for this parameter is a comma-separated (if more than one) list of strings.\n Each string value in the list must be one of the valid values listed below.
"
}
},
"MaxItems": {
@@ -3828,7 +3833,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves the password policy for the AWS account. This tells you the complexity\n requirements and mandatory rotation periods for the IAM user passwords in your account. For\n more information about using a password policy, see Managing an IAM password\n policy .
"
+ "smithy.api#documentation": "Retrieves the password policy for the AWS account. This tells you the complexity\n requirements and mandatory rotation periods for the IAM user passwords in your account.\n For more information about using a password policy, see Managing an IAM password\n policy .
"
}
},
"com.amazonaws.iam#GetAccountPasswordPolicyResponse": {
@@ -3857,7 +3862,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves information about IAM entity usage and IAM quotas in the AWS\n account.
\n For information about IAM quotas, see IAM and STS quotas in the\n IAM User Guide .
"
+ "smithy.api#documentation": "Retrieves information about IAM entity usage and IAM quotas in the AWS\n account.
\n For information about IAM quotas, see IAM and STS quotas in the\n IAM User Guide .
"
}
},
"com.amazonaws.iam#GetAccountSummaryResponse": {
@@ -3866,7 +3871,7 @@
"SummaryMap": {
"target": "com.amazonaws.iam#summaryMapType",
"traits": {
- "smithy.api#documentation": "A set of key–value pairs containing information about IAM entity usage and\n IAM quotas.
"
+ "smithy.api#documentation": "A set of key–value pairs containing information about IAM entity usage and\n IAM quotas.
"
}
}
},
@@ -3888,7 +3893,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Gets a list of all of the context keys referenced in the input policies. The policies\n are supplied as a list of one or more strings. To get the context keys from policies\n associated with an IAM user, group, or role, use GetContextKeysForPrincipalPolicy .
\n Context keys are variables maintained by AWS and its services that provide details\n about the context of an API query request. Context keys can be evaluated by testing against\n a value specified in an IAM policy. Use GetContextKeysForCustomPolicy
to\n understand what key names and values you must supply when you call SimulateCustomPolicy . Note that all parameters are shown in unencoded form\n here for clarity but must be URL encoded to be included as a part of a real HTML\n request.
"
+ "smithy.api#documentation": "Gets a list of all of the context keys referenced in the input policies. The policies\n are supplied as a list of one or more strings. To get the context keys from policies\n associated with an IAM user, group, or role, use GetContextKeysForPrincipalPolicy .
\n Context keys are variables maintained by AWS and its services that provide details\n about the context of an API query request. Context keys can be evaluated by testing\n against a value specified in an IAM policy. Use\n GetContextKeysForCustomPolicy
to understand what key names and values\n you must supply when you call SimulateCustomPolicy . Note that all\n parameters are shown in unencoded form here for clarity but must be URL encoded to be\n included as a part of a real HTML request.
"
}
},
"com.amazonaws.iam#GetContextKeysForCustomPolicyRequest": {
@@ -3897,7 +3902,7 @@
"PolicyInputList": {
"target": "com.amazonaws.iam#SimulationPolicyListType",
"traits": {
- "smithy.api#documentation": "A list of policies for which you want the list of context keys referenced in those\n policies. Each document is specified as a string containing the complete, valid JSON text\n of an IAM policy.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
+ "smithy.api#documentation": "A list of policies for which you want the list of context keys referenced in those\n policies. Each document is specified as a string containing the complete, valid JSON\n text of an IAM policy.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
"smithy.api#required": {}
}
}
@@ -3934,7 +3939,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Gets a list of all of the context keys referenced in all the IAM policies that are\n attached to the specified IAM entity. The entity can be an IAM user, group, or role. If\n you specify a user, then the request also includes all of the policies attached to groups\n that the user is a member of.
\n You can optionally include a list of one or more additional policies, specified as\n strings. If you want to include only a list of policies by string, use\n GetContextKeysForCustomPolicy instead.
\n \n Note: This operation discloses information about the permissions\n granted to other users. If you do not want users to see other user's permissions, then\n consider allowing them to use GetContextKeysForCustomPolicy \n instead.
\n Context keys are variables maintained by AWS and its services that provide details\n about the context of an API query request. Context keys can be evaluated by testing against\n a value in an IAM policy. Use GetContextKeysForPrincipalPolicy to\n understand what key names and values you must supply when you call SimulatePrincipalPolicy .
"
+ "smithy.api#documentation": "Gets a list of all of the context keys referenced in all the IAM policies that are\n attached to the specified IAM entity. The entity can be an IAM user, group, or role.\n If you specify a user, then the request also includes all of the policies attached to\n groups that the user is a member of.
\n You can optionally include a list of one or more additional policies, specified as\n strings. If you want to include only a list of policies by string,\n use GetContextKeysForCustomPolicy instead.
\n \n Note: This operation discloses information about the\n permissions granted to other users. If you do not want users to see other user's\n permissions, then consider allowing them to use GetContextKeysForCustomPolicy instead.
\n Context keys are variables maintained by AWS and its services that provide details\n about the context of an API query request. Context keys can be evaluated by testing\n against a value in an IAM policy. Use GetContextKeysForPrincipalPolicy to understand what key names and values you must supply when you call SimulatePrincipalPolicy .
"
}
},
"com.amazonaws.iam#GetContextKeysForPrincipalPolicyRequest": {
@@ -3943,14 +3948,14 @@
"PolicySourceArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The ARN of a user, group, or role whose policies contain the context keys that you want\n listed. If you specify a user, the list includes context keys that are found in all\n policies that are attached to the user. The list also includes all groups that the user is\n a member of. If you pick a group or a role, then it includes only those context keys that\n are found in policies attached to that entity. Note that all parameters are shown in\n unencoded form here for clarity, but must be URL encoded to be included as a part of a real\n HTML request.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The ARN of a user, group, or role whose policies contain the context keys that you\n want listed. If you specify a user, the list includes context keys that are found in all\n policies that are attached to the user. The list also includes all groups that the user\n is a member of. If you pick a group or a role, then it includes only those context keys\n that are found in policies attached to that entity. Note that all parameters are shown\n in unencoded form here for clarity, but must be URL encoded to be included as a part of\n a real HTML request.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
},
"PolicyInputList": {
"target": "com.amazonaws.iam#SimulationPolicyListType",
"traits": {
- "smithy.api#documentation": "An optional list of additional policies for which you want the list of context keys that\n are referenced.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n "
+ "smithy.api#documentation": "An optional list of additional policies for which you want the list of context keys\n that are referenced.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n "
}
}
}
@@ -3975,7 +3980,7 @@
}
],
"traits": {
- "smithy.api#documentation": " Retrieves a credential report for the AWS account. For more information about the\n credential report, see Getting credential reports in the\n IAM User Guide .
"
+ "smithy.api#documentation": " Retrieves a credential report for the AWS account. For more information about the\n credential report, see Getting credential reports in\n the IAM User Guide .
"
}
},
"com.amazonaws.iam#GetCredentialReportResponse": {
@@ -4021,7 +4026,7 @@
}
],
"traits": {
- "smithy.api#documentation": " Returns a list of IAM users that are in the specified IAM group. You can paginate\n the results using the MaxItems
and Marker
parameters.
",
+ "smithy.api#documentation": " Returns a list of IAM users that are in the specified IAM group. You can paginate\n the results using the MaxItems
and Marker
parameters.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -4047,7 +4052,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves the specified inline policy document that is embedded in the specified IAM\n group.
\n \n Policies returned by this operation are URL-encoded compliant \n with RFC 3986 . You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode
method of the java.net.URLDecoder
utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.
\n \n An IAM group can also have managed policies\n attached to it. To retrieve a managed policy document that is attached to a group, use\n GetPolicy to determine the policy's default version, then use GetPolicyVersion to retrieve the policy document.
\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
"
+ "smithy.api#documentation": "Retrieves the specified inline policy document that is embedded in the specified IAM\n group.
\n \n Policies returned by this operation are URL-encoded compliant \n with RFC 3986 . You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode
method of the java.net.URLDecoder
utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.
\n \n An IAM group can also have managed policies attached to it. To retrieve a managed\n policy document that is attached to a group, use GetPolicy to\n determine the policy's default version, then use GetPolicyVersion to\n retrieve the policy document.
\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
"
}
},
"com.amazonaws.iam#GetGroupPolicyRequest": {
@@ -4056,14 +4061,14 @@
"GroupName": {
"target": "com.amazonaws.iam#groupNameType",
"traits": {
- "smithy.api#documentation": "The name of the group the policy is associated with.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the group the policy is associated with.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyName": {
"target": "com.amazonaws.iam#policyNameType",
"traits": {
- "smithy.api#documentation": "The name of the policy document to get.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the policy document to get.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -4089,7 +4094,7 @@
"PolicyDocument": {
"target": "com.amazonaws.iam#policyDocumentType",
"traits": {
- "smithy.api#documentation": "The policy document.
\n IAM stores policies in JSON format. However, resources that were created using AWS\n CloudFormation templates can be formatted in YAML. AWS CloudFormation always converts a\n YAML policy to JSON format before submitting it to IAM.
",
+ "smithy.api#documentation": "The policy document.
\n IAM stores policies in JSON format. However, resources that were created using AWS\n CloudFormation templates can be formatted in YAML. AWS CloudFormation always converts\n a YAML policy to JSON format before submitting it to IAM.
",
"smithy.api#required": {}
}
}
@@ -4104,7 +4109,7 @@
"GroupName": {
"target": "com.amazonaws.iam#groupNameType",
"traits": {
- "smithy.api#documentation": "The name of the group.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the group.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
@@ -4173,7 +4178,7 @@
}
],
"traits": {
- "smithy.api#documentation": " Retrieves information about the specified instance profile, including the instance\n profile's path, GUID, ARN, and role. For more information about instance profiles, see\n About\n instance profiles in the IAM User Guide .
",
+ "smithy.api#documentation": " Retrieves information about the specified instance profile, including the instance\n profile's path, GUID, ARN, and role. For more information about instance profiles, see\n About\n instance profiles in the IAM User Guide .
",
"smithy.waiters#waitable": {
"InstanceProfileExists": {
"acceptors": [
@@ -4201,7 +4206,7 @@
"InstanceProfileName": {
"target": "com.amazonaws.iam#instanceProfileNameType",
"traits": {
- "smithy.api#documentation": "The name of the instance profile to get information about.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the instance profile to get information about.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -4239,7 +4244,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves the user name and password creation date for the specified IAM user. If the\n user has not been assigned a password, the operation returns a 404\n (NoSuchEntity
) error.
"
+ "smithy.api#documentation": "Retrieves the user name and password creation date for the specified IAM user. If\n the user has not been assigned a password, the operation returns a 404\n (NoSuchEntity
) error.
"
}
},
"com.amazonaws.iam#GetLoginProfileRequest": {
@@ -4248,7 +4253,7 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name of the user whose login profile you want to retrieve.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the user whose login profile you want to retrieve.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -4289,7 +4294,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Returns information about the specified OpenID Connect (OIDC) provider resource object\n in IAM.
"
+ "smithy.api#documentation": "Returns information about the specified OpenID Connect (OIDC) provider resource object\n in IAM.
"
}
},
"com.amazonaws.iam#GetOpenIDConnectProviderRequest": {
@@ -4298,7 +4303,7 @@
"OpenIDConnectProviderArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the OIDC provider resource object in IAM to get\n information for. You can get a list of OIDC provider resource ARNs by using the ListOpenIDConnectProviders operation.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the OIDC provider resource object in IAM to get\n information for. You can get a list of OIDC provider resource ARNs by using the ListOpenIDConnectProviders operation.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
}
@@ -4310,25 +4315,25 @@
"Url": {
"target": "com.amazonaws.iam#OpenIDConnectProviderUrlType",
"traits": {
- "smithy.api#documentation": "The URL that the IAM OIDC provider resource object is associated with. For more\n information, see CreateOpenIDConnectProvider .
"
+ "smithy.api#documentation": "The URL that the IAM OIDC provider resource object is associated with. For more\n information, see CreateOpenIDConnectProvider .
"
}
},
"ClientIDList": {
"target": "com.amazonaws.iam#clientIDListType",
"traits": {
- "smithy.api#documentation": "A list of client IDs (also known as audiences) that are associated with the specified\n IAM OIDC provider resource object. For more information, see CreateOpenIDConnectProvider .
"
+ "smithy.api#documentation": "A list of client IDs (also known as audiences) that are associated with the specified\n IAM OIDC provider resource object. For more information, see CreateOpenIDConnectProvider .
"
}
},
"ThumbprintList": {
"target": "com.amazonaws.iam#thumbprintListType",
"traits": {
- "smithy.api#documentation": "A list of certificate thumbprints that are associated with the specified IAM OIDC\n provider resource object. For more information, see CreateOpenIDConnectProvider .
"
+ "smithy.api#documentation": "A list of certificate thumbprints that are associated with the specified IAM OIDC\n provider resource object. For more information, see CreateOpenIDConnectProvider .
"
}
},
"CreateDate": {
"target": "com.amazonaws.iam#dateType",
"traits": {
- "smithy.api#documentation": "The date and time when the IAM OIDC provider resource object was created in the AWS\n account.
"
+ "smithy.api#documentation": "The date and time when the IAM OIDC provider resource object was created in the\n AWS account.
"
}
},
"Tags": {
@@ -4356,7 +4361,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves the service last accessed data report for AWS Organizations that was previously generated\n using the \n GenerateOrganizationsAccessReport \n
operation. This\n operation retrieves the status of your report job and the report contents.
\n Depending on the parameters that you passed when you generated the report, the data\n returned could include different information. For details, see GenerateOrganizationsAccessReport .
\n To call this operation, you must be signed in to the management account in your\n organization. SCPs must be enabled for your organization root. You must have permissions to\n perform this operation. For more information, see Refining permissions using\n service last accessed data in the IAM User Guide .
\n For each service that principals in an account (root users, IAM users, or IAM roles)\n could access using SCPs, the operation returns details about the most recent access\n attempt. If there was no attempt, the service is listed without details about the most\n recent attempt to access the service. If the operation fails, it returns the reason that it\n failed.
\n By default, the list is sorted by service namespace.
"
+ "smithy.api#documentation": "Retrieves the service last accessed data report for AWS Organizations that was previously generated\n using the \n GenerateOrganizationsAccessReport \n
operation.\n This operation retrieves the status of your report job and the report contents.
\n Depending on the parameters that you passed when you generated the report, the data\n returned could include different information. For details, see GenerateOrganizationsAccessReport .
\n To call this operation, you must be signed in to the management account in your\n organization. SCPs must be enabled for your organization root. You must have permissions\n to perform this operation. For more information, see Refining permissions using\n service last accessed data in the\n IAM User Guide .
\n For each service that principals in an account (root users, IAM users, or IAM\n roles) could access using SCPs, the operation returns details about the most recent\n access attempt. If there was no attempt, the service is listed without details about the\n most recent attempt to access the service. If the operation fails, it returns the reason\n that it failed.
\n By default, the list is sorted by service namespace.
"
}
},
"com.amazonaws.iam#GetOrganizationsAccessReportRequest": {
@@ -4384,7 +4389,7 @@
"SortKey": {
"target": "com.amazonaws.iam#sortKeyType",
"traits": {
- "smithy.api#documentation": "The key that is used to sort the results. If you choose the namespace key, the results\n are returned in alphabetical order. If you choose the time key, the results are sorted\n numerically by the date and time.
"
+ "smithy.api#documentation": "The key that is used to sort the results. If you choose the namespace key, the results\n are returned in alphabetical order. If you choose the time key, the results are sorted\n numerically by the date and time.
"
}
}
}
@@ -4402,32 +4407,32 @@
"JobCreationDate": {
"target": "com.amazonaws.iam#dateType",
"traits": {
- "smithy.api#documentation": "The date and time, in ISO 8601 date-time\n format , when the report job was created.
",
+ "smithy.api#documentation": "The date and time, in ISO 8601 date-time\n format , when the report job was created.
",
"smithy.api#required": {}
}
},
"JobCompletionDate": {
"target": "com.amazonaws.iam#dateType",
"traits": {
- "smithy.api#documentation": "The date and time, in ISO 8601 date-time\n format , when the generated report job was completed or failed.
\n This field is null if the job is still in progress, as indicated by a job status value\n of IN_PROGRESS
.
"
+ "smithy.api#documentation": "The date and time, in ISO 8601 date-time\n format , when the generated report job was completed or failed.
\n This field is null if the job is still in progress, as indicated by a job status value\n of IN_PROGRESS
.
"
}
},
"NumberOfServicesAccessible": {
"target": "com.amazonaws.iam#integerType",
"traits": {
- "smithy.api#documentation": "The number of services that the applicable SCPs allow account principals to\n access.
"
+ "smithy.api#documentation": "The number of services that the applicable SCPs allow account principals to\n access.
"
}
},
"NumberOfServicesNotAccessed": {
"target": "com.amazonaws.iam#integerType",
"traits": {
- "smithy.api#documentation": "The number of services that account principals are allowed but did not attempt to\n access.
"
+ "smithy.api#documentation": "The number of services that account principals are allowed but did not attempt to\n access.
"
}
},
"AccessDetails": {
"target": "com.amazonaws.iam#AccessDetails",
"traits": {
- "smithy.api#documentation": "An object that contains details about the most recent attempt to access the\n service.
"
+ "smithy.api#documentation": "An object that contains details about the most recent attempt to access the\n service.
"
}
},
"IsTruncated": {
@@ -4467,7 +4472,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves information about the specified managed policy, including the policy's default\n version and the total number of IAM users, groups, and roles to which the policy is\n attached. To retrieve the list of the specific users, groups, and roles that the policy is\n attached to, use ListEntitiesForPolicy . This operation returns metadata\n about the policy. To retrieve the actual policy document for a specific version of the\n policy, use GetPolicyVersion .
\n This operation retrieves information about managed policies. To retrieve information about an\n inline policy that is embedded with an IAM user, group, or role, use GetUserPolicy , GetGroupPolicy , or GetRolePolicy .
\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
"
+ "smithy.api#documentation": "Retrieves information about the specified managed policy, including the policy's\n default version and the total number of IAM users, groups, and roles to which the\n policy is attached. To retrieve the list of the specific users, groups, and roles that\n the policy is attached to, use ListEntitiesForPolicy . This operation\n returns metadata about the policy. To retrieve the actual policy document for a specific\n version of the policy, use GetPolicyVersion .
\n This operation retrieves information about managed policies. To retrieve information\n about an inline policy that is embedded with an IAM user, group, or role, use GetUserPolicy , GetGroupPolicy , or GetRolePolicy .
\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
"
}
},
"com.amazonaws.iam#GetPolicyRequest": {
@@ -4476,7 +4481,7 @@
"PolicyArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the managed policy that you want information\n about.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the managed policy that you want information\n about.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
}
@@ -4516,7 +4521,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves information about the specified version of the specified managed policy,\n including the policy document.
\n \n Policies returned by this operation are URL-encoded compliant \n with RFC 3986 . You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode
method of the java.net.URLDecoder
utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.
\n \n To list the available\n versions for a policy, use ListPolicyVersions .
\n This operation retrieves information about managed policies. To retrieve information about an\n inline policy that is embedded in a user, group, or role, use GetUserPolicy , GetGroupPolicy , or GetRolePolicy .
\n For more information about the types of policies, see Managed policies and inline\n policies in the IAM User Guide .
\n For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide .
"
+ "smithy.api#documentation": "Retrieves information about the specified version of the specified managed policy,\n including the policy document.
\n \n Policies returned by this operation are URL-encoded compliant \n with RFC 3986 . You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode
method of the java.net.URLDecoder
utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.
\n \n To list the available versions for a policy, use ListPolicyVersions .
\n This operation retrieves information about managed policies. To retrieve information\n about an inline policy that is embedded in a user, group, or role, use GetUserPolicy , GetGroupPolicy , or GetRolePolicy .
\n For more information about the types of policies, see Managed policies and inline\n policies in the IAM User Guide .
\n For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide .
"
}
},
"com.amazonaws.iam#GetPolicyVersionRequest": {
@@ -4525,14 +4530,14 @@
"PolicyArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the managed policy that you want information\n about.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the managed policy that you want information\n about.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
},
"VersionId": {
"target": "com.amazonaws.iam#policyVersionIdType",
"traits": {
- "smithy.api#documentation": "Identifies the policy version to retrieve.
\n This parameter allows (through its regex pattern ) a string of characters that \n consists of the lowercase letter 'v' followed by one or two digits, and optionally \n followed by a period '.' and a string of letters and digits.
",
+ "smithy.api#documentation": "Identifies the policy version to retrieve.
\n This parameter allows (through its regex pattern ) a string of characters that \n consists of the lowercase letter 'v' followed by one or two digits, and optionally \n followed by a period '.' and a string of letters and digits.
",
"smithy.api#required": {}
}
}
@@ -4569,7 +4574,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves information about the specified role, including the role's path, GUID, ARN,\n and the role's trust policy that grants permission to assume the role. For more information\n about roles, see Working with roles .
\n \n Policies returned by this operation are URL-encoded compliant \n with RFC 3986 . You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode
method of the java.net.URLDecoder
utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.
\n "
+ "smithy.api#documentation": "Retrieves information about the specified role, including the role's path, GUID, ARN,\n and the role's trust policy that grants permission to assume the role. For more\n information about roles, see Working with roles .
\n \n Policies returned by this operation are URL-encoded compliant \n with RFC 3986 . You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode
method of the java.net.URLDecoder
utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.
\n "
}
},
"com.amazonaws.iam#GetRolePolicy": {
@@ -4589,7 +4594,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves the specified inline policy document that is embedded with the specified IAM\n role.
\n \n Policies returned by this operation are URL-encoded compliant \n with RFC 3986 . You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode
method of the java.net.URLDecoder
utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.
\n \n An IAM role can also have managed policies\n attached to it. To retrieve a managed policy document that is attached to a role, use GetPolicy to determine the policy's default version, then use GetPolicyVersion to retrieve the policy document.
\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
\n For more information about roles, see Using roles to delegate permissions and\n federate identities .
"
+ "smithy.api#documentation": "Retrieves the specified inline policy document that is embedded with the specified\n IAM role.
\n \n Policies returned by this operation are URL-encoded compliant \n with RFC 3986 . You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode
method of the java.net.URLDecoder
utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.
\n \n An IAM role can also have managed policies attached to it. To retrieve a managed\n policy document that is attached to a role, use GetPolicy to determine\n the policy's default version, then use GetPolicyVersion to retrieve\n the policy document.
\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
\n For more information about roles, see Using roles to delegate permissions and\n federate identities .
"
}
},
"com.amazonaws.iam#GetRolePolicyRequest": {
@@ -4598,14 +4603,14 @@
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name of the role associated with the policy.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the role associated with the policy.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyName": {
"target": "com.amazonaws.iam#policyNameType",
"traits": {
- "smithy.api#documentation": "The name of the policy document to get.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the policy document to get.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -4631,7 +4636,7 @@
"PolicyDocument": {
"target": "com.amazonaws.iam#policyDocumentType",
"traits": {
- "smithy.api#documentation": "The policy document.
\n IAM stores policies in JSON format. However, resources that were created using AWS\n CloudFormation templates can be formatted in YAML. AWS CloudFormation always converts a\n YAML policy to JSON format before submitting it to IAM.
",
+ "smithy.api#documentation": "The policy document.
\n IAM stores policies in JSON format. However, resources that were created using AWS\n CloudFormation templates can be formatted in YAML. AWS CloudFormation always converts\n a YAML policy to JSON format before submitting it to IAM.
",
"smithy.api#required": {}
}
}
@@ -4646,7 +4651,7 @@
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM role to get information about.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the IAM role to get information about.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -4687,7 +4692,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Returns the SAML provider metadocument that was uploaded when the IAM SAML provider\n resource object was created or updated.
\n \n This operation requires Signature Version 4 .
\n "
+ "smithy.api#documentation": "Returns the SAML provider metadocument that was uploaded when the IAM SAML provider\n resource object was created or updated.
\n \n This operation requires Signature Version 4 .
\n "
}
},
"com.amazonaws.iam#GetSAMLProviderRequest": {
@@ -4696,7 +4701,7 @@
"SAMLProviderArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the SAML provider resource object in IAM to get\n information about.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the SAML provider resource object in IAM to get\n information about.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
}
@@ -4751,7 +4756,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves the specified SSH public key, including metadata about the key.
\n The SSH public key retrieved by this operation is used only for authenticating the\n associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to\n authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH\n connections in the AWS CodeCommit User Guide .
"
+ "smithy.api#documentation": "Retrieves the specified SSH public key, including metadata about the key.
\n The SSH public key retrieved by this operation is used only for authenticating the\n associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys\n to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH\n connections in the AWS CodeCommit User Guide .
"
}
},
"com.amazonaws.iam#GetSSHPublicKeyRequest": {
@@ -4760,21 +4765,21 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM user associated with the SSH public key.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the IAM user associated with the SSH public key.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"SSHPublicKeyId": {
"target": "com.amazonaws.iam#publicKeyIdType",
"traits": {
- "smithy.api#documentation": "The unique identifier for the SSH public key.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
+ "smithy.api#documentation": "The unique identifier for the SSH public key.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
"smithy.api#required": {}
}
},
"Encoding": {
"target": "com.amazonaws.iam#encodingType",
"traits": {
- "smithy.api#documentation": "Specifies the public key encoding format to use in the response. To retrieve the public\n key in ssh-rsa format, use SSH
. To retrieve the public key in PEM format, use\n PEM
.
",
+ "smithy.api#documentation": "Specifies the public key encoding format to use in the response. To retrieve the\n public key in ssh-rsa format, use SSH
. To retrieve the public key in PEM\n format, use PEM
.
",
"smithy.api#required": {}
}
}
@@ -4811,7 +4816,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves information about the specified server certificate stored in IAM.
\n For more information about working with server certificates, see Working with\n server certificates in the IAM User Guide . This topic\n includes a list of AWS services that can use the server certificates that you manage with\n IAM.
"
+ "smithy.api#documentation": "Retrieves information about the specified server certificate stored in IAM.
\n For more information about working with server certificates, see Working\n with server certificates in the IAM User Guide . This\n topic includes a list of AWS services that can use the server certificates that you\n manage with IAM.
"
}
},
"com.amazonaws.iam#GetServerCertificateRequest": {
@@ -4820,7 +4825,7 @@
"ServerCertificateName": {
"target": "com.amazonaws.iam#serverCertificateNameType",
"traits": {
- "smithy.api#documentation": "The name of the server certificate you want to retrieve information about.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the server certificate you want to retrieve information about.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -4858,7 +4863,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves a service last accessed report that was created using the\n GenerateServiceLastAccessedDetails
operation. You can use the\n JobId
parameter in GetServiceLastAccessedDetails
to retrieve\n the status of your report job. When the report is complete, you can retrieve the generated\n report. The report includes a list of AWS services that the resource (user, group, role,\n or managed policy) can access.
\n \n Service last accessed data does not use other policy types when determining whether a\n resource could access a service. These other policy types include resource-based\n policies, access control lists, AWS Organizations policies, IAM permissions boundaries,\n and AWS STS assume role policies. It only applies permissions policy logic. For more\n about the evaluation of policy types, see Evaluating policies in the IAM User Guide .
\n \n For each service that the resource could access using permissions policies, the\n operation returns details about the most recent access attempt. If there was no attempt,\n the service is listed without details about the most recent attempt to access the service.\n If the operation fails, the GetServiceLastAccessedDetails
operation returns\n the reason that it failed.
\n The GetServiceLastAccessedDetails
operation returns a list of services.\n This list includes the number of entities that have attempted to access the service and the\n date and time of the last attempt. It also returns the ARN of the following entity,\n depending on the resource ARN that you used to generate the report:
\n \n \n \n User – Returns the user ARN that you used\n to generate the report
\n \n \n \n Group – Returns the ARN of the group\n member (user) that last attempted to access the service
\n \n \n \n Role – Returns the role ARN that you used\n to generate the report
\n \n \n \n Policy – Returns the ARN of the user or\n role that last used the policy to attempt to access the service
\n \n \n By default, the list is sorted by service namespace.
\n If you specified ACTION_LEVEL
granularity when you generated the report,\n this operation returns service and action last accessed data. This includes the most recent\n access attempt for each tracked action within a service. Otherwise, this operation returns\n only service data.
\n For more information about service and action last accessed data, see Reducing\n permissions using service last accessed data in the\n IAM User Guide .
"
+ "smithy.api#documentation": "Retrieves a service last accessed report that was created using the\n GenerateServiceLastAccessedDetails
operation. You can use the\n JobId
parameter in GetServiceLastAccessedDetails
to\n retrieve the status of your report job. When the report is complete, you can retrieve\n the generated report. The report includes a list of AWS services that the resource\n (user, group, role, or managed policy) can access.
\n \n Service last accessed data does not use other policy types when determining\n whether a resource could access a service. These other policy types include\n resource-based policies, access control lists, AWS Organizations policies, IAM\n permissions boundaries, and AWS STS assume role policies. It only applies\n permissions policy logic. For more about the evaluation of policy types, see Evaluating policies in the\n IAM User Guide .
\n \n For each service that the resource could access using permissions policies, the\n operation returns details about the most recent access attempt. If there was no attempt,\n the service is listed without details about the most recent attempt to access the\n service. If the operation fails, the GetServiceLastAccessedDetails
\n operation returns the reason that it failed.
\n The GetServiceLastAccessedDetails
operation returns a list of services.\n This list includes the number of entities that have attempted to access the service and\n the date and time of the last attempt. It also returns the ARN of the following entity,\n depending on the resource ARN that you used to generate the report:
\n \n \n \n User – Returns the user ARN that you\n used to generate the report
\n \n \n \n Group – Returns the ARN of the group\n member (user) that last attempted to access the service
\n \n \n \n Role – Returns the role ARN that you\n used to generate the report
\n \n \n \n Policy – Returns the ARN of the user\n or role that last used the policy to attempt to access the service
\n \n \n By default, the list is sorted by service namespace.
\n If you specified ACTION_LEVEL
granularity when you generated the report,\n this operation returns service and action last accessed data. This includes the most\n recent access attempt for each tracked action within a service. Otherwise, this\n operation returns only service data.
\n For more information about service and action last accessed data, see Reducing permissions using service last accessed data in the\n IAM User Guide .
"
}
},
"com.amazonaws.iam#GetServiceLastAccessedDetailsRequest": {
@@ -4867,7 +4872,7 @@
"JobId": {
"target": "com.amazonaws.iam#jobIDType",
"traits": {
- "smithy.api#documentation": "The ID of the request generated by the GenerateServiceLastAccessedDetails operation. The JobId
\n returned by GenerateServiceLastAccessedDetail
must be used by the same role\n within a session, or by the same user when used to call\n GetServiceLastAccessedDetail
.
",
+ "smithy.api#documentation": "The ID of the request generated by the GenerateServiceLastAccessedDetails operation. The JobId
\n returned by GenerateServiceLastAccessedDetail
must be used by the same role\n within a session, or by the same user when used to call\n GetServiceLastAccessedDetail
.
",
"smithy.api#required": {}
}
},
@@ -4898,27 +4903,27 @@
"JobType": {
"target": "com.amazonaws.iam#AccessAdvisorUsageGranularityType",
"traits": {
- "smithy.api#documentation": "The type of job. Service jobs return information about when each service was last\n accessed. Action jobs also include information about when tracked actions within the\n service were last accessed.
"
+ "smithy.api#documentation": "The type of job. Service jobs return information about when each service was last\n accessed. Action jobs also include information about when tracked actions within the\n service were last accessed.
"
}
},
"JobCreationDate": {
"target": "com.amazonaws.iam#dateType",
"traits": {
- "smithy.api#documentation": "The date and time, in ISO 8601 date-time\n format , when the report job was created.
",
+ "smithy.api#documentation": "The date and time, in ISO 8601 date-time\n format , when the report job was created.
",
"smithy.api#required": {}
}
},
"ServicesLastAccessed": {
"target": "com.amazonaws.iam#ServicesLastAccessed",
"traits": {
- "smithy.api#documentation": " A ServiceLastAccessed
object that contains details about the most recent\n attempt to access the service.
",
+ "smithy.api#documentation": " A ServiceLastAccessed
object that contains details about the most recent\n attempt to access the service.
",
"smithy.api#required": {}
}
},
"JobCompletionDate": {
"target": "com.amazonaws.iam#dateType",
"traits": {
- "smithy.api#documentation": "The date and time, in ISO 8601 date-time\n format , when the generated report job was completed or failed.
\n This field is null if the job is still in progress, as indicated by a job status value\n of IN_PROGRESS
.
",
+ "smithy.api#documentation": "The date and time, in ISO 8601 date-time\n format , when the generated report job was completed or failed.
\n This field is null if the job is still in progress, as indicated by a job status value\n of IN_PROGRESS
.
",
"smithy.api#required": {}
}
},
@@ -4959,7 +4964,7 @@
}
],
"traits": {
- "smithy.api#documentation": "After you generate a group or policy report using the\n GenerateServiceLastAccessedDetails
operation, you can use the\n JobId
parameter in GetServiceLastAccessedDetailsWithEntities
.\n This operation retrieves the status of your report job and a list of entities that could\n have used group or policy permissions to access the specified service.
\n \n \n \n Group – For a group report, this operation\n returns a list of users in the group that could have used the group’s policies in an\n attempt to access the service.
\n \n \n \n Policy – For a policy report, this\n operation returns a list of entities (users or roles) that could have used the policy\n in an attempt to access the service.
\n \n \n You can also use this operation for user or role reports to retrieve details about those\n entities.
\n If the operation fails, the GetServiceLastAccessedDetailsWithEntities
\n operation returns the reason that it failed.
\n By default, the list of associated entities is sorted by date, with the most recent\n access listed first.
"
+ "smithy.api#documentation": "After you generate a group or policy report using the\n GenerateServiceLastAccessedDetails
operation, you can use the\n JobId
parameter in\n GetServiceLastAccessedDetailsWithEntities
. This operation retrieves the\n status of your report job and a list of entities that could have used group or policy\n permissions to access the specified service.
\n \n \n \n Group – For a group report, this\n operation returns a list of users in the group that could have used the group’s\n policies in an attempt to access the service.
\n \n \n \n Policy – For a policy report, this\n operation returns a list of entities (users or roles) that could have used the\n policy in an attempt to access the service.
\n \n \n You can also use this operation for user or role reports to retrieve details about\n those entities.
\n If the operation fails, the GetServiceLastAccessedDetailsWithEntities
\n operation returns the reason that it failed.
\n By default, the list of associated entities is sorted by date, with the most recent\n access listed first.
"
}
},
"com.amazonaws.iam#GetServiceLastAccessedDetailsWithEntitiesRequest": {
@@ -4968,14 +4973,14 @@
"JobId": {
"target": "com.amazonaws.iam#jobIDType",
"traits": {
- "smithy.api#documentation": "The ID of the request generated by the GenerateServiceLastAccessedDetails
\n operation.
",
+ "smithy.api#documentation": "The ID of the request generated by the GenerateServiceLastAccessedDetails
\n operation.
",
"smithy.api#required": {}
}
},
"ServiceNamespace": {
"target": "com.amazonaws.iam#serviceNamespaceType",
"traits": {
- "smithy.api#documentation": "The service namespace for an AWS service. Provide the service namespace to learn when\n the IAM entity last attempted to access the specified service.
\n To learn the service namespace for a service, see Actions, resources, and condition keys for AWS services in the\n IAM User Guide . Choose the name of the service to view details\n for that service. In the first paragraph, find the service prefix. For example,\n (service prefix: a4b)
. For more information about service namespaces, see\n AWS\n service namespaces in the AWS General Reference .
",
+ "smithy.api#documentation": "The service namespace for an AWS service. Provide the service namespace to learn\n when the IAM entity last attempted to access the specified service.
\n To learn the service namespace for a service, see Actions, resources, and condition keys for AWS services in the\n IAM User Guide . Choose the name of the service to view\n details for that service. In the first paragraph, find the service prefix. For example,\n (service prefix: a4b)
. For more information about service namespaces,\n see AWS\n service namespaces in the AWS General Reference .
",
"smithy.api#required": {}
}
},
@@ -5006,21 +5011,21 @@
"JobCreationDate": {
"target": "com.amazonaws.iam#dateType",
"traits": {
- "smithy.api#documentation": "The date and time, in ISO 8601 date-time\n format , when the report job was created.
",
+ "smithy.api#documentation": "The date and time, in ISO 8601 date-time\n format , when the report job was created.
",
"smithy.api#required": {}
}
},
"JobCompletionDate": {
"target": "com.amazonaws.iam#dateType",
"traits": {
- "smithy.api#documentation": "The date and time, in ISO 8601 date-time\n format , when the generated report job was completed or failed.
\n This field is null if the job is still in progress, as indicated by a job status value\n of IN_PROGRESS
.
",
+ "smithy.api#documentation": "The date and time, in ISO 8601 date-time\n format , when the generated report job was completed or failed.
\n This field is null if the job is still in progress, as indicated by a job status value\n of IN_PROGRESS
.
",
"smithy.api#required": {}
}
},
"EntityDetailsList": {
"target": "com.amazonaws.iam#entityDetailsListType",
"traits": {
- "smithy.api#documentation": "An EntityDetailsList
object that contains details about when an IAM\n entity (user or role) used group or policy permissions in an attempt to access the\n specified AWS service.
",
+ "smithy.api#documentation": "An EntityDetailsList
object that contains details about when an IAM\n entity (user or role) used group or policy permissions in an attempt to access the\n specified AWS service.
",
"smithy.api#required": {}
}
},
@@ -5064,7 +5069,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves the status of your service-linked role deletion. After you use DeleteServiceLinkedRole to submit a service-linked role for\n deletion, you can use the DeletionTaskId
parameter in\n GetServiceLinkedRoleDeletionStatus
to check the status of the deletion. If\n the deletion fails, this operation returns the reason that it failed, if that information\n is returned by the service.
"
+ "smithy.api#documentation": "Retrieves the status of your service-linked role deletion. After you use DeleteServiceLinkedRole to submit a service-linked role for deletion,\n you can use the DeletionTaskId
parameter in\n GetServiceLinkedRoleDeletionStatus
to check the status of the deletion.\n If the deletion fails, this operation returns the reason that it failed, if that\n information is returned by the service.
"
}
},
"com.amazonaws.iam#GetServiceLinkedRoleDeletionStatusRequest": {
@@ -5073,7 +5078,7 @@
"DeletionTaskId": {
"target": "com.amazonaws.iam#DeletionTaskIdType",
"traits": {
- "smithy.api#documentation": "The deletion task identifier. This identifier is returned by the DeleteServiceLinkedRole operation in the format\n task/aws-service-role///
.
",
+ "smithy.api#documentation": "The deletion task identifier. This identifier is returned by the DeleteServiceLinkedRole operation in the format\n task/aws-service-role///
.
",
"smithy.api#required": {}
}
}
@@ -5114,7 +5119,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves information about the specified IAM user, including the user's creation\n date, path, unique ID, and ARN.
\n If you do not specify a user name, IAM determines the user name implicitly based on\n the AWS access key ID used to sign the request to this operation.
"
+ "smithy.api#documentation": "Retrieves information about the specified IAM user, including the user's creation\n date, path, unique ID, and ARN.
\n If you do not specify a user name, IAM determines the user name implicitly based on\n the AWS access key ID used to sign the request to this operation.
"
}
},
"com.amazonaws.iam#GetUserPolicy": {
@@ -5134,7 +5139,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves the specified inline policy document that is embedded in the specified IAM\n user.
\n \n Policies returned by this operation are URL-encoded compliant \n with RFC 3986 . You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode
method of the java.net.URLDecoder
utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.
\n \n An IAM user can also have managed policies\n attached to it. To retrieve a managed policy document that is attached to a user, use GetPolicy to determine the policy's default version. Then use GetPolicyVersion to retrieve the policy document.
\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
"
+ "smithy.api#documentation": "Retrieves the specified inline policy document that is embedded in the specified IAM\n user.
\n \n Policies returned by this operation are URL-encoded compliant \n with RFC 3986 . You can use a URL \n decoding method to convert the policy back to plain JSON text. For example, if you use Java, you \n can use the decode
method of the java.net.URLDecoder
utility class in \n the Java SDK. Other languages and SDKs provide similar functionality.
\n \n An IAM user can also have managed policies attached to it. To retrieve a managed\n policy document that is attached to a user, use GetPolicy to determine\n the policy's default version. Then use GetPolicyVersion to retrieve\n the policy document.
\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
"
}
},
"com.amazonaws.iam#GetUserPolicyRequest": {
@@ -5143,14 +5148,14 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user who the policy is associated with.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the user who the policy is associated with.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyName": {
"target": "com.amazonaws.iam#policyNameType",
"traits": {
- "smithy.api#documentation": "The name of the policy document to get.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the policy document to get.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -5176,7 +5181,7 @@
"PolicyDocument": {
"target": "com.amazonaws.iam#policyDocumentType",
"traits": {
- "smithy.api#documentation": "The policy document.
\n IAM stores policies in JSON format. However, resources that were created using AWS\n CloudFormation templates can be formatted in YAML. AWS CloudFormation always converts a\n YAML policy to JSON format before submitting it to IAM.
",
+ "smithy.api#documentation": "The policy document.
\n IAM stores policies in JSON format. However, resources that were created using AWS\n CloudFormation templates can be formatted in YAML. AWS CloudFormation always converts\n a YAML policy to JSON format before submitting it to IAM.
",
"smithy.api#required": {}
}
}
@@ -5191,7 +5196,7 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user to get information about.
\n This parameter is optional. If it is not included, it defaults to the user making the\n request. This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The name of the user to get information about.
\n This parameter is optional. If it is not included, it defaults to the user making the\n request. This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
}
}
@@ -5202,7 +5207,7 @@
"User": {
"target": "com.amazonaws.iam#User",
"traits": {
- "smithy.api#documentation": "A structure containing details about the IAM user.
\n \n Due to a service issue, password last used data does not include password use from\n May 3, 2018 22:50 PDT to May 23, 2018 14:08 PDT. This affects last\n sign-in dates shown in the IAM console and password last used dates in the\n IAM credential report , and returned by this operation. If users signed in\n during the affected time, the password last used date that is returned is the date the\n user last signed in before May 3, 2018. For users that signed in after May 23, 2018\n 14:08 PDT, the returned password last used date is accurate.
\n You can use password last used information to identify unused credentials for\n deletion. For example, you might delete users who did not sign in to AWS in the last 90\n days. In cases like this, we recommend that you adjust your evaluation window to include\n dates after May 23, 2018. Alternatively, if your users use access keys to access AWS\n programmatically you can refer to access key last used information because it is\n accurate for all dates.
\n ",
+ "smithy.api#documentation": "A structure containing details about the IAM user.
\n \n Due to a service issue, password last used data does not include password use from\n May 3, 2018 22:50 PDT to May 23, 2018 14:08 PDT. This affects last sign-in dates shown in the IAM console and password last used\n dates in the IAM credential\n report , and returned by this operation. If users signed in during the\n affected time, the password last used date that is returned is the date the user\n last signed in before May 3, 2018. For users that signed in after May 23, 2018 14:08\n PDT, the returned password last used date is accurate.
\n You can use password last used information to identify unused credentials for\n deletion. For example, you might delete users who did not sign in to AWS in the last\n 90 days. In cases like this, we recommend that you adjust your evaluation window to\n include dates after May 23, 2018. Alternatively, if your users use access keys to\n access AWS programmatically you can refer to access key last used information\n because it is accurate for all dates.
\n ",
"smithy.api#required": {}
}
}
@@ -5468,7 +5473,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Returns information about the access key IDs associated with the specified IAM user.\n If there is none, the operation returns an empty list.
\n Although each user is limited to a small number of keys, you can still paginate the\n results using the MaxItems
and Marker
parameters.
\n If the UserName
field is not specified, the user name is determined\n implicitly based on the AWS access key ID used to sign the request. This operation works\n for access keys under the AWS account. Consequently, you can use this operation to manage\n AWS account root user credentials even if the AWS account has no associated\n users.
\n \n To ensure the security of your AWS account, the secret access key is accessible\n only during key and user creation.
\n ",
+ "smithy.api#documentation": "Returns information about the access key IDs associated with the specified IAM user.\n If there is none, the operation returns an empty list.
\n Although each user is limited to a small number of keys, you can still paginate the\n results using the MaxItems
and Marker
parameters.
\n If the UserName
field is not specified, the user name is determined\n implicitly based on the AWS access key ID used to sign the request. This operation\n works for access keys under the AWS account. Consequently, you can use this operation\n to manage AWS account root user credentials even if the AWS account has no\n associated users.
\n \n To ensure the security of your AWS account, the secret access key is accessible\n only during key and user creation.
\n ",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -5483,7 +5488,7 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The name of the user.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
},
"Marker": {
@@ -5541,7 +5546,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists the account alias associated with the AWS account (Note: you can have only one).\n For information about using an AWS account alias, see Using an alias for your AWS account ID \n in the IAM User Guide .
",
+ "smithy.api#documentation": "Lists the account alias associated with the AWS account (Note: you can have only\n one). For information about using an AWS account alias, see Using an alias for your\n AWS account ID in the IAM User Guide .
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -5573,7 +5578,7 @@
"AccountAliases": {
"target": "com.amazonaws.iam#accountAliasListType",
"traits": {
- "smithy.api#documentation": "A list of aliases associated with the account. AWS supports only one alias per\n account.
",
+ "smithy.api#documentation": "A list of aliases associated with the account. AWS supports only one alias per\n account.
",
"smithy.api#required": {}
}
},
@@ -5614,7 +5619,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists all managed policies that are attached to the specified IAM group.
\n An IAM group can also have inline policies embedded with it. To list the inline\n policies for a group, use ListGroupPolicies . For information\n about policies, see Managed policies and inline\n policies in the IAM User Guide .
\n You can paginate the results using the MaxItems
and Marker
\n parameters. You can use the PathPrefix
parameter to limit the list of policies\n to only those matching the specified path prefix. If there are no policies attached to the\n specified group (or none that match the specified path prefix), the operation returns an\n empty list.
",
+ "smithy.api#documentation": "Lists all managed policies that are attached to the specified IAM group.
\n An IAM group can also have inline policies embedded with it. To list the inline\n policies for a group, use ListGroupPolicies . For information about\n policies, see Managed policies and inline\n policies in the IAM User Guide .
\n You can paginate the results using the MaxItems
and Marker
\n parameters. You can use the PathPrefix
parameter to limit the list of\n policies to only those matching the specified path prefix. If there are no policies\n attached to the specified group (or none that match the specified path prefix), the\n operation returns an empty list.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -5629,14 +5634,14 @@
"GroupName": {
"target": "com.amazonaws.iam#groupNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) of the group to list attached policies for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) of the group to list attached policies for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PathPrefix": {
"target": "com.amazonaws.iam#policyPathType",
"traits": {
- "smithy.api#documentation": "The path prefix for filtering the results. This parameter is optional. If it is not\n included, it defaults to a slash (/), listing all policies.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": "The path prefix for filtering the results. This parameter is optional. If it is not\n included, it defaults to a slash (/), listing all policies.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"Marker": {
@@ -5699,7 +5704,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists all managed policies that are attached to the specified IAM role.
\n An IAM role can also have inline policies embedded with it. To list the inline\n policies for a role, use ListRolePolicies . For information about\n policies, see Managed policies and inline\n policies in the IAM User Guide .
\n You can paginate the results using the MaxItems
and Marker
\n parameters. You can use the PathPrefix
parameter to limit the list of policies\n to only those matching the specified path prefix. If there are no policies attached to the\n specified role (or none that match the specified path prefix), the operation returns an\n empty list.
",
+ "smithy.api#documentation": "Lists all managed policies that are attached to the specified IAM role.
\n An IAM role can also have inline policies embedded with it. To list the inline\n policies for a role, use ListRolePolicies . For information about\n policies, see Managed policies and inline\n policies in the IAM User Guide .
\n You can paginate the results using the MaxItems
and Marker
\n parameters. You can use the PathPrefix
parameter to limit the list of\n policies to only those matching the specified path prefix. If there are no policies\n attached to the specified role (or none that match the specified path prefix), the\n operation returns an empty list.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -5714,14 +5719,14 @@
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) of the role to list attached policies for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) of the role to list attached policies for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PathPrefix": {
"target": "com.amazonaws.iam#policyPathType",
"traits": {
- "smithy.api#documentation": "The path prefix for filtering the results. This parameter is optional. If it is not\n included, it defaults to a slash (/), listing all policies.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": "The path prefix for filtering the results. This parameter is optional. If it is not\n included, it defaults to a slash (/), listing all policies.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"Marker": {
@@ -5784,7 +5789,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists all managed policies that are attached to the specified IAM user.
\n An IAM user can also have inline policies embedded with it. To list the inline\n policies for a user, use ListUserPolicies . For information about\n policies, see Managed policies and inline\n policies in the IAM User Guide .
\n You can paginate the results using the MaxItems
and Marker
\n parameters. You can use the PathPrefix
parameter to limit the list of policies\n to only those matching the specified path prefix. If there are no policies attached to the\n specified group (or none that match the specified path prefix), the operation returns an\n empty list.
",
+ "smithy.api#documentation": "Lists all managed policies that are attached to the specified IAM user.
\n An IAM user can also have inline policies embedded with it. To list the inline\n policies for a user, use ListUserPolicies . For information about\n policies, see Managed policies and inline\n policies in the IAM User Guide .
\n You can paginate the results using the MaxItems
and Marker
\n parameters. You can use the PathPrefix
parameter to limit the list of\n policies to only those matching the specified path prefix. If there are no policies\n attached to the specified group (or none that match the specified path prefix), the\n operation returns an empty list.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -5799,14 +5804,14 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) of the user to list attached policies for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) of the user to list attached policies for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PathPrefix": {
"target": "com.amazonaws.iam#policyPathType",
"traits": {
- "smithy.api#documentation": "The path prefix for filtering the results. This parameter is optional. If it is not\n included, it defaults to a slash (/), listing all policies.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": "The path prefix for filtering the results. This parameter is optional. If it is not\n included, it defaults to a slash (/), listing all policies.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"Marker": {
@@ -5869,7 +5874,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists all IAM users, groups, and roles that the specified managed policy is attached\n to.
\n You can use the optional EntityFilter
parameter to limit the results to a\n particular type of entity (users, groups, or roles). For example, to list only the roles\n that are attached to the specified policy, set EntityFilter
to\n Role
.
\n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
+ "smithy.api#documentation": "Lists all IAM users, groups, and roles that the specified managed policy is attached\n to.
\n You can use the optional EntityFilter
parameter to limit the results to a\n particular type of entity (users, groups, or roles). For example, to list only the roles\n that are attached to the specified policy, set EntityFilter
to\n Role
.
\n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -5883,26 +5888,26 @@
"PolicyArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy for which you want the\n versions.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy for which you want the\n versions.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
},
"EntityFilter": {
"target": "com.amazonaws.iam#EntityType",
"traits": {
- "smithy.api#documentation": "The entity type to use for filtering the results.
\n For example, when EntityFilter
is Role
, only the roles that\n are attached to the specified policy are returned. This parameter is optional. If it is not\n included, all attached entities (users, groups, and roles) are returned. The argument for\n this parameter must be one of the valid values listed below.
"
+ "smithy.api#documentation": "The entity type to use for filtering the results.
\n For example, when EntityFilter
is Role
, only the roles that\n are attached to the specified policy are returned. This parameter is optional. If it is\n not included, all attached entities (users, groups, and roles) are returned. The\n argument for this parameter must be one of the valid values listed below.
"
}
},
"PathPrefix": {
"target": "com.amazonaws.iam#pathType",
"traits": {
- "smithy.api#documentation": "The path prefix for filtering the results. This parameter is optional. If it is not\n included, it defaults to a slash (/), listing all entities.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": "The path prefix for filtering the results. This parameter is optional. If it is not\n included, it defaults to a slash (/), listing all entities.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"PolicyUsageFilter": {
"target": "com.amazonaws.iam#PolicyUsageType",
"traits": {
- "smithy.api#documentation": "The policy usage method to use for filtering the results.
\n To list only permissions policies,\n set PolicyUsageFilter
to PermissionsPolicy
. To list only the\n policies used to set permissions boundaries, set the value\n to PermissionsBoundary
.
\n This parameter is optional. If it is not included, all policies are returned.
"
+ "smithy.api#documentation": "The policy usage method to use for filtering the results.
\n To list only permissions policies,\n set PolicyUsageFilter
to PermissionsPolicy
. To list only\n the policies used to set permissions boundaries, set the value\n to PermissionsBoundary
.
\n This parameter is optional. If it is not included, all policies are returned.
"
}
},
"Marker": {
@@ -5974,7 +5979,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists the names of the inline policies that are embedded in the specified IAM\n group.
\n An IAM group can also have managed policies attached to it. To list the managed\n policies that are attached to a group, use ListAttachedGroupPolicies . For\n more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
\n You can paginate the results using the MaxItems
and Marker
\n parameters. If there are no inline policies embedded with the specified group, the\n operation returns an empty list.
",
+ "smithy.api#documentation": "Lists the names of the inline policies that are embedded in the specified IAM\n group.
\n An IAM group can also have managed policies attached to it. To list the managed\n policies that are attached to a group, use ListAttachedGroupPolicies .\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
\n You can paginate the results using the MaxItems
and Marker
\n parameters. If there are no inline policies embedded with the specified group, the\n operation returns an empty list.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -5989,7 +5994,7 @@
"GroupName": {
"target": "com.amazonaws.iam#groupNameType",
"traits": {
- "smithy.api#documentation": "The name of the group to list policies for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the group to list policies for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
@@ -6013,7 +6018,7 @@
"PolicyNames": {
"target": "com.amazonaws.iam#policyNameListType",
"traits": {
- "smithy.api#documentation": "A list of policy names.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "A list of policy names.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
@@ -6048,7 +6053,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists the IAM groups that have the specified path prefix.
\n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
+ "smithy.api#documentation": "Lists the IAM groups that have the specified path prefix.
\n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -6074,7 +6079,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists the IAM groups that the specified IAM user belongs to.
\n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
+ "smithy.api#documentation": "Lists the IAM groups that the specified IAM user belongs to.
\n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -6089,7 +6094,7 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user to list groups for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the user to list groups for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
@@ -6140,7 +6145,7 @@
"PathPrefix": {
"target": "com.amazonaws.iam#pathPrefixType",
"traits": {
- "smithy.api#documentation": " The path prefix for filtering the results. For example, the prefix\n /division_abc/subdivision_xyz/
gets all groups whose path starts with\n /division_abc/subdivision_xyz/
.
\n This parameter is optional. If it is not included, it defaults to a slash (/), listing\n all groups. This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": " The path prefix for filtering the results. For example, the prefix\n /division_abc/subdivision_xyz/
gets all groups whose path starts with\n /division_abc/subdivision_xyz/
.
\n This parameter is optional. If it is not included, it defaults to a slash (/), listing\n all groups. This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"Marker": {
@@ -6266,7 +6271,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists the instance profiles that have the specified path prefix. If there are none, the\n operation returns an empty list. For more information about instance profiles, see About instance\n profiles .
\n \n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for an instance profile, see GetInstanceProfile .
\n \n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
+ "smithy.api#documentation": "Lists the instance profiles that have the specified path prefix. If there are none,\n the operation returns an empty list. For more information about instance profiles, see\n About\n instance profiles .
\n \n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for an instance profile, see GetInstanceProfile .
\n \n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -6292,7 +6297,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists the instance profiles that have the specified associated IAM role. If there are\n none, the operation returns an empty list. For more information about instance profiles, go\n to About\n instance profiles .
\n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
+ "smithy.api#documentation": "Lists the instance profiles that have the specified associated IAM role. If there\n are none, the operation returns an empty list. For more information about instance\n profiles, go to About instance\n profiles .
\n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -6307,7 +6312,7 @@
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name of the role to list instance profiles for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the role to list instance profiles for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
@@ -6358,7 +6363,7 @@
"PathPrefix": {
"target": "com.amazonaws.iam#pathPrefixType",
"traits": {
- "smithy.api#documentation": " The path prefix for filtering the results. For example, the prefix\n /application_abc/component_xyz/
gets all instance profiles whose path\n starts with /application_abc/component_xyz/
.
\n This parameter is optional. If it is not included, it defaults to a slash (/), listing\n all instance profiles. This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": " The path prefix for filtering the results. For example, the prefix\n /application_abc/component_xyz/
gets all instance profiles whose path\n starts with /application_abc/component_xyz/
.
\n This parameter is optional. If it is not included, it defaults to a slash (/), listing\n all instance profiles. This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"Marker": {
@@ -6490,7 +6495,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists the MFA devices for an IAM user. If the request includes a IAM user name, then\n this operation lists all the MFA devices associated with the specified user. If you do not\n specify a user name, IAM determines the user name implicitly based on the AWS access\n key ID signing the request for this operation.
\n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
+ "smithy.api#documentation": "Lists the MFA devices for an IAM user. If the request includes a IAM user name,\n then this operation lists all the MFA devices associated with the specified user. If you\n do not specify a user name, IAM determines the user name implicitly based on the AWS\n access key ID signing the request for this operation.
\n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -6505,7 +6510,7 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user whose MFA devices you want to list.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The name of the user whose MFA devices you want to list.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
},
"Marker": {
@@ -6634,7 +6639,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists information about the IAM OpenID Connect (OIDC) provider resource objects\n defined in the AWS account.
\n \n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for an OIDC provider, see GetOpenIDConnectProvider .
\n "
+ "smithy.api#documentation": "Lists information about the IAM OpenID Connect (OIDC) provider resource objects\n defined in the AWS account.
\n \n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for an OIDC provider, see GetOpenIDConnectProvider .
\n "
}
},
"com.amazonaws.iam#ListOpenIDConnectProvidersRequest": {
@@ -6669,7 +6674,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists all the managed policies that are available in your AWS account, including your\n own customer-defined managed policies and all AWS managed policies.
\n You can filter the list of policies that is returned using the optional\n OnlyAttached
, Scope
, and PathPrefix
parameters.\n For example, to list only the customer managed policies in your AWS account, set\n Scope
to Local
. To list only AWS managed policies, set\n Scope
to AWS
.
\n You can paginate the results using the MaxItems
and Marker
\n parameters.
\n For more information about managed policies, see Managed policies and inline\n policies in the IAM User Guide .
\n \n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a customer manged policy, see\n GetPolicy .
\n ",
+ "smithy.api#documentation": "Lists all the managed policies that are available in your AWS account, including\n your own customer-defined managed policies and all AWS managed policies.
\n You can filter the list of policies that is returned using the optional\n OnlyAttached
, Scope
, and PathPrefix
\n parameters. For example, to list only the customer managed policies in your AWS\n account, set Scope
to Local
. To list only AWS managed\n policies, set Scope
to AWS
.
\n You can paginate the results using the MaxItems
and Marker
\n parameters.
\n For more information about managed policies, see Managed policies and inline\n policies in the IAM User Guide .
\n \n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a customer manged policy, see\n GetPolicy .
\n ",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -6695,7 +6700,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Retrieves a list of policies that the IAM identity (user, group, or role) can use to\n access each specified service.
\n \n This operation does not use other policy types when determining whether a resource\n could access a service. These other policy types include resource-based policies, access\n control lists, AWS Organizations policies, IAM permissions boundaries, and AWS STS\n assume role policies. It only applies permissions policy logic. For more about the\n evaluation of policy types, see Evaluating policies in the IAM User Guide .
\n \n The list of policies returned by the operation depends on the ARN of the identity that\n you provide.
\n \n \n \n User – The list of policies includes the\n managed and inline policies that are attached to the user directly. The list also\n includes any additional managed and inline policies that are attached to the group to\n which the user belongs.
\n \n \n \n Group – The list of policies includes only\n the managed and inline policies that are attached to the group directly. Policies\n that are attached to the group’s user are not included.
\n \n \n \n Role – The list of policies includes only\n the managed and inline policies that are attached to the role.
\n \n \n For each managed policy, this operation returns the ARN and policy name. For each inline\n policy, it returns the policy name and the entity to which it is attached. Inline policies\n do not have an ARN. For more information about these policy types, see Managed\n policies and inline policies in the\n IAM User Guide .
\n Policies that are attached to users and roles as permissions boundaries are not\n returned. To view which managed policy is currently used to set the permissions boundary\n for a user or role, use the GetUser or GetRole \n operations.
"
+ "smithy.api#documentation": "Retrieves a list of policies that the IAM identity (user, group, or role) can use to\n access each specified service.
\n \n This operation does not use other policy types when determining whether a resource\n could access a service. These other policy types include resource-based policies,\n access control lists, AWS Organizations policies, IAM permissions boundaries, and\n AWS STS assume role policies. It only applies permissions policy logic. For more\n about the evaluation of policy types, see Evaluating policies in the\n IAM User Guide .
\n \n The list of policies returned by the operation depends on the ARN of the identity that\n you provide.
\n \n \n \n User – The list of policies includes\n the managed and inline policies that are attached to the user directly. The list\n also includes any additional managed and inline policies that are attached to\n the group to which the user belongs.
\n \n \n \n Group – The list of policies includes\n only the managed and inline policies that are attached to the group directly.\n Policies that are attached to the group’s user are not included.
\n \n \n \n Role – The list of policies includes\n only the managed and inline policies that are attached to the role.
\n \n \n For each managed policy, this operation returns the ARN and policy name. For each\n inline policy, it returns the policy name and the entity to which it is attached. Inline\n policies do not have an ARN. For more information about these policy types, see Managed policies and inline policies in the\n IAM User Guide .
\n Policies that are attached to users and roles as permissions boundaries are not\n returned. To view which managed policy is currently used to set the permissions boundary\n for a user or role, use the GetUser or GetRole \n operations.
"
}
},
"com.amazonaws.iam#ListPoliciesGrantingServiceAccessEntry": {
@@ -6730,14 +6735,14 @@
"Arn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The ARN of the IAM identity (user, group, or role) whose policies you want to\n list.
",
+ "smithy.api#documentation": "The ARN of the IAM identity (user, group, or role) whose policies you want to\n list.
",
"smithy.api#required": {}
}
},
"ServiceNamespaces": {
"target": "com.amazonaws.iam#serviceNamespaceListType",
"traits": {
- "smithy.api#documentation": "The service namespace for the AWS services whose policies you want to list.
\n To learn the service namespace for a service, see Actions, resources, and condition keys for AWS services in the\n IAM User Guide . Choose the name of the service to view details\n for that service. In the first paragraph, find the service prefix. For example,\n (service prefix: a4b)
. For more information about service namespaces, see\n AWS\n service namespaces in the AWS General Reference .
",
+ "smithy.api#documentation": "The service namespace for the AWS services whose policies you want to list.
\n To learn the service namespace for a service, see Actions, resources, and condition keys for AWS services in the\n IAM User Guide . Choose the name of the service to view\n details for that service. In the first paragraph, find the service prefix. For example,\n (service prefix: a4b)
. For more information about service namespaces,\n see AWS\n service namespaces in the AWS General Reference .
",
"smithy.api#required": {}
}
}
@@ -6749,14 +6754,14 @@
"PoliciesGrantingServiceAccess": {
"target": "com.amazonaws.iam#listPolicyGrantingServiceAccessResponseListType",
"traits": {
- "smithy.api#documentation": "A ListPoliciesGrantingServiceAccess
object that contains details about the\n permissions policies attached to the specified identity (user, group, or role).
",
+ "smithy.api#documentation": "A ListPoliciesGrantingServiceAccess
object that contains details about\n the permissions policies attached to the specified identity (user, group, or\n role).
",
"smithy.api#required": {}
}
},
"IsTruncated": {
"target": "com.amazonaws.iam#booleanType",
"traits": {
- "smithy.api#documentation": "A flag that indicates whether there are more items to return. If your results were\n truncated, you can make a subsequent pagination request using the Marker
\n request parameter to retrieve more items. We recommend that you check\n IsTruncated
after every call to ensure that you receive all your\n results.
"
+ "smithy.api#documentation": "A flag that indicates whether there are more items to return. If your results were\n truncated, you can make a subsequent pagination request using the Marker
\n request parameter to retrieve more items. We recommend that you check\n IsTruncated
after every call to ensure that you receive all your\n results.
"
}
},
"Marker": {
@@ -6773,25 +6778,25 @@
"Scope": {
"target": "com.amazonaws.iam#policyScopeType",
"traits": {
- "smithy.api#documentation": "The scope to use for filtering the results.
\n To list only AWS managed policies, set Scope
to AWS
. To list\n only the customer managed policies in your AWS account, set Scope
to\n Local
.
\n This parameter is optional. If it is not included, or if it is set to All
,\n all policies are returned.
"
+ "smithy.api#documentation": "The scope to use for filtering the results.
\n To list only AWS managed policies, set Scope
to AWS
. To\n list only the customer managed policies in your AWS account, set Scope
to\n Local
.
\n This parameter is optional. If it is not included, or if it is set to\n All
, all policies are returned.
"
}
},
"OnlyAttached": {
"target": "com.amazonaws.iam#booleanType",
"traits": {
- "smithy.api#documentation": "A flag to filter the results to only the attached policies.
\n When OnlyAttached
is true
, the returned list contains only the\n policies that are attached to an IAM user, group, or role. When OnlyAttached
\n is false
, or when the parameter is not included, all policies are\n returned.
"
+ "smithy.api#documentation": "A flag to filter the results to only the attached policies.
\n When OnlyAttached
is true
, the returned list contains only\n the policies that are attached to an IAM user, group, or role. When\n OnlyAttached
is false
, or when the parameter is not\n included, all policies are returned.
"
}
},
"PathPrefix": {
"target": "com.amazonaws.iam#policyPathType",
"traits": {
- "smithy.api#documentation": "The path prefix for filtering the results. This parameter is optional. If it is not\n included, it defaults to a slash (/), listing all policies. This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": "The path prefix for filtering the results. This parameter is optional. If it is not\n included, it defaults to a slash (/), listing all policies. This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"PolicyUsageFilter": {
"target": "com.amazonaws.iam#PolicyUsageType",
"traits": {
- "smithy.api#documentation": "The policy usage method to use for filtering the results.
\n To list only permissions policies,\n set PolicyUsageFilter
to PermissionsPolicy
. To list only the\n policies used to set permissions boundaries, set the value\n to PermissionsBoundary
.
\n This parameter is optional. If it is not included, all policies are returned.
"
+ "smithy.api#documentation": "The policy usage method to use for filtering the results.
\n To list only permissions policies,\n set PolicyUsageFilter
to PermissionsPolicy
. To list only\n the policies used to set permissions boundaries, set the value\n to PermissionsBoundary
.
\n This parameter is optional. If it is not included, all policies are returned.
"
}
},
"Marker": {
@@ -6925,7 +6930,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists information about the versions of the specified managed policy, including the\n version that is currently set as the policy's default version.
\n For more information about managed policies, see Managed policies and inline\n policies in the IAM User Guide .
",
+ "smithy.api#documentation": "Lists information about the versions of the specified managed policy, including the\n version that is currently set as the policy's default version.
\n For more information about managed policies, see Managed policies and inline\n policies in the IAM User Guide .
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -6940,7 +6945,7 @@
"PolicyArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy for which you want the\n versions.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy for which you want the\n versions.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
},
@@ -6964,7 +6969,7 @@
"Versions": {
"target": "com.amazonaws.iam#policyDocumentVersionListType",
"traits": {
- "smithy.api#documentation": "A list of policy versions.
\n For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide .
"
+ "smithy.api#documentation": "A list of policy versions.
\n For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide .
"
}
},
"IsTruncated": {
@@ -7001,7 +7006,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists the names of the inline policies that are embedded in the specified IAM\n role.
\n An IAM role can also have managed policies attached to it. To list the managed\n policies that are attached to a role, use ListAttachedRolePolicies . For\n more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
\n You can paginate the results using the MaxItems
and Marker
\n parameters. If there are no inline policies embedded with the specified role, the operation\n returns an empty list.
",
+ "smithy.api#documentation": "Lists the names of the inline policies that are embedded in the specified IAM\n role.
\n An IAM role can also have managed policies attached to it. To list the managed\n policies that are attached to a role, use ListAttachedRolePolicies .\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
\n You can paginate the results using the MaxItems
and Marker
\n parameters. If there are no inline policies embedded with the specified role, the\n operation returns an empty list.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -7016,7 +7021,7 @@
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name of the role to list policies for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the role to list policies for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
@@ -7143,7 +7148,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists the IAM roles that have the specified path prefix. If there are none, the\n operation returns an empty list. For more information about roles, see Working with\n roles .
\n \n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a role, see GetRole .
\n \n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
+ "smithy.api#documentation": "Lists the IAM roles that have the specified path prefix. If there are none, the\n operation returns an empty list. For more information about roles, see Working with\n roles .
\n \n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a role, see GetRole .
\n \n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -7158,7 +7163,7 @@
"PathPrefix": {
"target": "com.amazonaws.iam#pathPrefixType",
"traits": {
- "smithy.api#documentation": " The path prefix for filtering the results. For example, the prefix\n /application_abc/component_xyz/
gets all roles whose path starts with\n /application_abc/component_xyz/
.
\n This parameter is optional. If it is not included, it defaults to a slash (/), listing\n all roles. This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": " The path prefix for filtering the results. For example, the prefix\n /application_abc/component_xyz/
gets all roles whose path starts with\n /application_abc/component_xyz/
.
\n This parameter is optional. If it is not included, it defaults to a slash (/), listing\n all roles. This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"Marker": {
@@ -7287,7 +7292,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists the SAML provider resource objects defined in IAM in the account.\n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a SAML provider, see GetSAMLProvider .
\n \n This operation requires Signature Version 4 .
\n "
+ "smithy.api#documentation": "Lists the SAML provider resource objects defined in IAM in the account.\n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a SAML provider, see GetSAMLProvider .
\n \n This operation requires Signature Version 4 .
\n "
}
},
"com.amazonaws.iam#ListSAMLProvidersRequest": {
@@ -7300,7 +7305,7 @@
"SAMLProviderList": {
"target": "com.amazonaws.iam#SAMLProviderListType",
"traits": {
- "smithy.api#documentation": "The list of SAML provider resource objects defined in IAM for this AWS\n account.
"
+ "smithy.api#documentation": "The list of SAML provider resource objects defined in IAM for this AWS\n account.
"
}
}
},
@@ -7322,7 +7327,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Returns information about the SSH public keys associated with the specified IAM user.\n If none exists, the operation returns an empty list.
\n The SSH public keys returned by this operation are used only for authenticating the\n IAM user to an AWS CodeCommit repository. For more information about using SSH keys to\n authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH\n connections in the AWS CodeCommit User Guide .
\n Although each user is limited to a small number of keys, you can still paginate the\n results using the MaxItems
and Marker
parameters.
",
+ "smithy.api#documentation": "Returns information about the SSH public keys associated with the specified IAM\n user. If none exists, the operation returns an empty list.
\n The SSH public keys returned by this operation are used only for authenticating the\n IAM user to an AWS CodeCommit repository. For more information about using SSH keys to\n authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for\n SSH connections in the AWS CodeCommit User Guide .
\n Although each user is limited to a small number of keys, you can still paginate the\n results using the MaxItems
and Marker
parameters.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -7337,7 +7342,7 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM user to list SSH public keys for. If none is specified, the\n UserName
field is determined implicitly based on the AWS access key used\n to sign the request.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The name of the IAM user to list SSH public keys for. If none is specified, the\n UserName
field is determined implicitly based on the AWS access key\n used to sign the request.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
},
"Marker": {
@@ -7462,7 +7467,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists the server certificates stored in IAM that have the specified path prefix. If\n none exist, the operation returns an empty list.
\n You can paginate the results using the MaxItems
and Marker
\n parameters.
\n For more information about working with server certificates, see Working with\n server certificates in the IAM User Guide . This topic\n also includes a list of AWS services that can use the server certificates that you manage\n with IAM.
\n \n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a servercertificate, see GetServerCertificate .
\n ",
+ "smithy.api#documentation": "Lists the server certificates stored in IAM that have the specified path prefix. If\n none exist, the operation returns an empty list.
\n You can paginate the results using the MaxItems
and Marker
\n parameters.
\n For more information about working with server certificates, see Working\n with server certificates in the IAM User Guide . This\n topic also includes a list of AWS services that can use the server certificates that\n you manage with IAM.
\n \n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a servercertificate, see GetServerCertificate .
\n ",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -7477,7 +7482,7 @@
"PathPrefix": {
"target": "com.amazonaws.iam#pathPrefixType",
"traits": {
- "smithy.api#documentation": " The path prefix for filtering the results. For example:\n /company/servercerts
would get all server certificates for which the path\n starts with /company/servercerts
.
\n This parameter is optional. If it is not included, it defaults to a slash (/), listing\n all server certificates. This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": " The path prefix for filtering the results. For example:\n /company/servercerts
would get all server certificates for which the\n path starts with /company/servercerts
.
\n This parameter is optional. If it is not included, it defaults to a slash (/), listing\n all server certificates. This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"Marker": {
@@ -7538,7 +7543,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Returns information about the service-specific credentials associated with the specified\n IAM user. If none exists, the operation returns an empty list. The service-specific\n credentials returned by this operation are used only for authenticating the IAM user to a\n specific service. For more information about using service-specific credentials to\n authenticate to an AWS service, see Set up service-specific credentials in\n the AWS CodeCommit User Guide.
"
+ "smithy.api#documentation": "Returns information about the service-specific credentials associated with the\n specified IAM user. If none exists, the operation returns an empty list. The\n service-specific credentials returned by this operation are used only for authenticating\n the IAM user to a specific service. For more information about using service-specific\n credentials to authenticate to an AWS service, see Set up service-specific credentials \n in the AWS CodeCommit User Guide.
"
}
},
"com.amazonaws.iam#ListServiceSpecificCredentialsRequest": {
@@ -7547,13 +7552,13 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name of the user whose service-specific credentials you want information about. If\n this value is not specified, then the operation assumes the user whose credentials are used\n to call the operation.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The name of the user whose service-specific credentials you want information about. If\n this value is not specified, then the operation assumes the user whose credentials are\n used to call the operation.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
},
"ServiceName": {
"target": "com.amazonaws.iam#serviceName",
"traits": {
- "smithy.api#documentation": "Filters the returned results to only those for the specified AWS service. If not\n specified, then AWS returns service-specific credentials for all services.
"
+ "smithy.api#documentation": "Filters the returned results to only those for the specified AWS service. If not\n specified, then AWS returns service-specific credentials for all services.
"
}
}
}
@@ -7564,7 +7569,7 @@
"ServiceSpecificCredentials": {
"target": "com.amazonaws.iam#ServiceSpecificCredentialsListType",
"traits": {
- "smithy.api#documentation": "A list of structures that each contain details about a service-specific\n credential.
"
+ "smithy.api#documentation": "A list of structures that each contain details about a service-specific\n credential.
"
}
}
}
@@ -7586,7 +7591,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Returns information about the signing certificates associated with the specified IAM\n user. If none exists, the operation returns an empty list.
\n Although each user is limited to a small number of signing certificates, you can still\n paginate the results using the MaxItems
and Marker
\n parameters.
\n If the UserName
field is not specified, the user name is determined\n implicitly based on the AWS access key ID used to sign the request for this operation. This\n operation works for access keys under the AWS account. Consequently, you can use this\n operation to manage AWS account root user credentials even if the AWS account has no\n associated users.
",
+ "smithy.api#documentation": "Returns information about the signing certificates associated with the specified IAM\n user. If none exists, the operation returns an empty list.
\n Although each user is limited to a small number of signing certificates, you can still\n paginate the results using the MaxItems
and Marker
\n parameters.
\n If the UserName
field is not specified, the user name is determined\n implicitly based on the AWS access key ID used to sign the request for this operation.\n This operation works for access keys under the AWS account. Consequently, you can use\n this operation to manage AWS account root user credentials even if the AWS account\n has no associated users.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -7601,7 +7606,7 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM user whose signing certificates you want to examine.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The name of the IAM user whose signing certificates you want to examine.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
},
"Marker": {
@@ -7662,7 +7667,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists the names of the inline policies embedded in the specified IAM user.
\n An IAM user can also have managed policies attached to it. To list the managed\n policies that are attached to a user, use ListAttachedUserPolicies . For\n more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
\n You can paginate the results using the MaxItems
and Marker
\n parameters. If there are no inline policies embedded with the specified user, the operation\n returns an empty list.
",
+ "smithy.api#documentation": "Lists the names of the inline policies embedded in the specified IAM user.
\n An IAM user can also have managed policies attached to it. To list the managed\n policies that are attached to a user, use ListAttachedUserPolicies .\n For more information about policies, see Managed policies and inline\n policies in the IAM User Guide .
\n You can paginate the results using the MaxItems
and Marker
\n parameters. If there are no inline policies embedded with the specified user, the\n operation returns an empty list.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -7677,7 +7682,7 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user to list policies for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the user to list policies for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
@@ -7804,7 +7809,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists the IAM users that have the specified path prefix. If no path prefix is\n specified, the operation returns all users in the AWS account. If there are none, the\n operation returns an empty list.
\n \n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a user, see GetUser .
\n \n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
+ "smithy.api#documentation": "Lists the IAM users that have the specified path prefix. If no path prefix is\n specified, the operation returns all users in the AWS account. If there are none, the\n operation returns an empty list.
\n \n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a user, see GetUser .
\n \n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -7819,7 +7824,7 @@
"PathPrefix": {
"target": "com.amazonaws.iam#pathPrefixType",
"traits": {
- "smithy.api#documentation": " The path prefix for filtering the results. For example:\n /division_abc/subdivision_xyz/
, which would get all user names whose path\n starts with /division_abc/subdivision_xyz/
.
\n This parameter is optional. If it is not included, it defaults to a slash (/), listing\n all user names. This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": " The path prefix for filtering the results. For example:\n /division_abc/subdivision_xyz/
, which would get all user names whose\n path starts with /division_abc/subdivision_xyz/
.
\n This parameter is optional. If it is not included, it defaults to a slash (/), listing\n all user names. This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"Marker": {
@@ -7872,7 +7877,7 @@
"target": "com.amazonaws.iam#ListVirtualMFADevicesResponse"
},
"traits": {
- "smithy.api#documentation": "Lists the virtual MFA devices defined in the AWS account by assignment status. If you\n do not specify an assignment status, the operation returns a list of all virtual MFA\n devices. Assignment status can be Assigned
, Unassigned
, or\n Any
.
\n \n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a virtual MFA device, see ListVirtualMFADevices .
\n \n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
+ "smithy.api#documentation": "Lists the virtual MFA devices defined in the AWS account by assignment status. If\n you do not specify an assignment status, the operation returns a list of all virtual MFA\n devices. Assignment status can be Assigned
, Unassigned
, or\n Any
.
\n \n IAM resource-listing operations return a subset of the available \n attributes for the resource. For example, this operation does not return tags, even though they are an attribute of the returned object. To view all of the information for a virtual MFA device, see\n ListVirtualMFADevices .
\n \n You can paginate the results using the MaxItems
and Marker
\n parameters.
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -7887,7 +7892,7 @@
"AssignmentStatus": {
"target": "com.amazonaws.iam#assignmentStatusType",
"traits": {
- "smithy.api#documentation": " The status (Unassigned
or Assigned
) of the devices to list.\n If you do not specify an AssignmentStatus
, the operation defaults to\n Any
, which lists both assigned and unassigned virtual MFA devices.,
"
+ "smithy.api#documentation": " The status (Unassigned
or Assigned
) of the devices to list.\n If you do not specify an AssignmentStatus
, the operation defaults to\n Any
, which lists both assigned and unassigned virtual MFA\n devices.,
"
}
},
"Marker": {
@@ -7910,7 +7915,7 @@
"VirtualMFADevices": {
"target": "com.amazonaws.iam#virtualMFADeviceListType",
"traits": {
- "smithy.api#documentation": " The list of virtual MFA devices in the current account that match the\n AssignmentStatus
value that was passed in the request.
",
+ "smithy.api#documentation": " The list of virtual MFA devices in the current account that match the\n AssignmentStatus
value that was passed in the request.
",
"smithy.api#required": {}
}
},
@@ -7923,7 +7928,7 @@
"Marker": {
"target": "com.amazonaws.iam#responseMarkerType",
"traits": {
- "smithy.api#documentation": "When IsTruncated
is true
, this element is present and contains\n the value to use for the Marker
parameter in a subsequent pagination\n request.
"
+ "smithy.api#documentation": "When IsTruncated
is true
, this element is present and\n contains the value to use for the Marker
parameter in a subsequent\n pagination request.
"
}
}
},
@@ -8643,7 +8648,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Adds or updates an inline policy document that is embedded in the specified IAM\n group.
\n A user can also have managed policies attached to it. To attach a managed policy to a\n group, use AttachGroupPolicy . To create a new managed policy, use CreatePolicy . For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide .
\n For information about the maximum number of inline policies that you can embed in a\n group, see IAM\n and STS quotas in the IAM User Guide .
\n \n Because policy documents can be large, you should use POST rather than GET when\n calling PutGroupPolicy
. For general information about using the Query API\n with IAM, see Making query requests in the\n IAM User Guide .
\n "
+ "smithy.api#documentation": "Adds or updates an inline policy document that is embedded in the specified IAM\n group.
\n A user can also have managed policies attached to it. To attach a managed policy to a\n group, use AttachGroupPolicy . To create a new managed policy, use\n CreatePolicy . For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide .
\n For information about the maximum number of inline policies that you can embed in a\n group, see IAM and STS quotas in the IAM User Guide .
\n \n Because policy documents can be large, you should use POST rather than GET when\n calling PutGroupPolicy
. For general information about using the Query\n API with IAM, see Making query requests in the\n IAM User Guide .
\n "
}
},
"com.amazonaws.iam#PutGroupPolicyRequest": {
@@ -8652,21 +8657,21 @@
"GroupName": {
"target": "com.amazonaws.iam#groupNameType",
"traits": {
- "smithy.api#documentation": "The name of the group to associate the policy with.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-.
",
+ "smithy.api#documentation": "The name of the group to associate the policy with.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-.
",
"smithy.api#required": {}
}
},
"PolicyName": {
"target": "com.amazonaws.iam#policyNameType",
"traits": {
- "smithy.api#documentation": "The name of the policy document.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the policy document.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyDocument": {
"target": "com.amazonaws.iam#policyDocumentType",
"traits": {
- "smithy.api#documentation": "The policy document.
\n You must provide policies in JSON format in IAM. However, for AWS CloudFormation\n templates formatted in YAML, you can provide the policy in JSON or YAML format. AWS\n CloudFormation always converts a YAML policy to JSON format before submitting it to\n IAM.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
+ "smithy.api#documentation": "The policy document.
\n You must provide policies in JSON format in IAM. However, for AWS CloudFormation\n templates formatted in YAML, you can provide the policy in JSON or YAML format. AWS\n CloudFormation always converts a YAML policy to JSON format before submitting it to\n IAM.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
"smithy.api#required": {}
}
}
@@ -8695,7 +8700,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Adds or updates the policy that is specified as the IAM role's permissions boundary.\n You can use an AWS managed policy or a customer managed policy to set the boundary for a\n role. Use the boundary to control the maximum permissions that the role can have. Setting a\n permissions boundary is an advanced feature that can affect the permissions for the\n role.
\n You cannot set the boundary for a service-linked role.
\n \n Policies used as permissions boundaries do not provide permissions. You must also\n attach a permissions policy to the role. To learn how the effective permissions for a\n role are evaluated, see IAM JSON policy\n evaluation logic in the IAM User Guide.
\n "
+ "smithy.api#documentation": "Adds or updates the policy that is specified as the IAM role's permissions boundary.\n You can use an AWS managed policy or a customer managed policy to set the boundary for\n a role. Use the boundary to control the maximum permissions that the role can have.\n Setting a permissions boundary is an advanced feature that can affect the permissions\n for the role.
\n You cannot set the boundary for a service-linked role.
\n \n Policies used as permissions boundaries do not provide permissions. You must also\n attach a permissions policy to the role. To learn how the effective permissions for\n a role are evaluated, see IAM JSON policy\n evaluation logic in the IAM User Guide.
\n "
}
},
"com.amazonaws.iam#PutRolePermissionsBoundaryRequest": {
@@ -8704,14 +8709,14 @@
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM role for which you want to set the\n permissions boundary.
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM role for which you want to set the\n permissions boundary.
",
"smithy.api#required": {}
}
},
"PermissionsBoundary": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The ARN of the policy that is used to set the permissions boundary for the role.
",
+ "smithy.api#documentation": "The ARN of the policy that is used to set the permissions boundary for the\n role.
",
"smithy.api#required": {}
}
}
@@ -8740,7 +8745,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Adds or updates an inline policy document that is embedded in the specified IAM\n role.
\n When you embed an inline policy in a role, the inline policy is used as part of the\n role's access (permissions) policy. The role's trust policy is created at the same time as\n the role, using CreateRole . You can update a role's trust policy using\n UpdateAssumeRolePolicy . For more information about IAM roles, see\n Using roles to\n delegate permissions and federate identities .
\n A role can also have a managed policy attached to it. To attach a managed policy to a\n role, use AttachRolePolicy . To create a new managed policy, use CreatePolicy . For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide .
\n For information about the maximum number of inline policies that you can embed with a\n role, see IAM\n and STS quotas in the IAM User Guide .
\n \n Because policy documents can be large, you should use POST rather than GET when\n calling PutRolePolicy
. For general information about using the Query API\n with IAM, see Making query requests in the\n IAM User Guide .
\n "
+ "smithy.api#documentation": "Adds or updates an inline policy document that is embedded in the specified IAM\n role.
\n When you embed an inline policy in a role, the inline policy is used as part of the\n role's access (permissions) policy. The role's trust policy is created at the same time\n as the role, using CreateRole . You can update a role's trust policy\n using UpdateAssumeRolePolicy . For more information about IAM roles,\n see Using roles to\n delegate permissions and federate identities .
\n A role can also have a managed policy attached to it. To attach a managed policy to a\n role, use AttachRolePolicy . To create a new managed policy, use CreatePolicy . For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide .
\n For information about the maximum number of inline policies that you can embed with a\n role, see IAM and STS quotas in the IAM User Guide .
\n \n Because policy documents can be large, you should use POST rather than GET when\n calling PutRolePolicy
. For general information about using the Query\n API with IAM, see Making query requests in the\n IAM User Guide .
\n "
}
},
"com.amazonaws.iam#PutRolePolicyRequest": {
@@ -8749,21 +8754,21 @@
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name of the role to associate the policy with.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the role to associate the policy with.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyName": {
"target": "com.amazonaws.iam#policyNameType",
"traits": {
- "smithy.api#documentation": "The name of the policy document.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the policy document.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyDocument": {
"target": "com.amazonaws.iam#policyDocumentType",
"traits": {
- "smithy.api#documentation": "The policy document.
\n You must provide policies in JSON format in IAM. However, for AWS CloudFormation\n templates formatted in YAML, you can provide the policy in JSON or YAML format. AWS\n CloudFormation always converts a YAML policy to JSON format before submitting it to\n IAM.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
+ "smithy.api#documentation": "The policy document.
\n You must provide policies in JSON format in IAM. However, for AWS CloudFormation\n templates formatted in YAML, you can provide the policy in JSON or YAML format. AWS\n CloudFormation always converts a YAML policy to JSON format before submitting it to\n IAM.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
"smithy.api#required": {}
}
}
@@ -8789,7 +8794,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Adds or updates the policy that is specified as the IAM user's permissions boundary.\n You can use an AWS managed policy or a customer managed policy to set the boundary for a\n user. Use the boundary to control the maximum permissions that the user can have. Setting a\n permissions boundary is an advanced feature that can affect the permissions for the\n user.
\n \n Policies that are used as permissions boundaries do not provide permissions. You must\n also attach a permissions policy to the user. To learn how the effective permissions for\n a user are evaluated, see IAM JSON policy\n evaluation logic in the IAM User Guide.
\n "
+ "smithy.api#documentation": "Adds or updates the policy that is specified as the IAM user's permissions boundary.\n You can use an AWS managed policy or a customer managed policy to set the boundary for\n a user. Use the boundary to control the maximum permissions that the user can have.\n Setting a permissions boundary is an advanced feature that can affect the permissions\n for the user.
\n \n Policies that are used as permissions boundaries do not provide permissions. You\n must also attach a permissions policy to the user. To learn how the effective\n permissions for a user are evaluated, see IAM JSON policy\n evaluation logic in the IAM User Guide.
\n "
}
},
"com.amazonaws.iam#PutUserPermissionsBoundaryRequest": {
@@ -8798,14 +8803,14 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM user for which you want to set the\n permissions boundary.
",
+ "smithy.api#documentation": "The name (friendly name, not ARN) of the IAM user for which you want to set the\n permissions boundary.
",
"smithy.api#required": {}
}
},
"PermissionsBoundary": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The ARN of the policy that is used to set the permissions boundary for the user.
",
+ "smithy.api#documentation": "The ARN of the policy that is used to set the permissions boundary for the\n user.
",
"smithy.api#required": {}
}
}
@@ -8831,7 +8836,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Adds or updates an inline policy document that is embedded in the specified IAM\n user.
\n An IAM user can also have a managed policy attached to it. To attach a managed policy\n to a user, use AttachUserPolicy . To create a new managed policy, use\n CreatePolicy . For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide .
\n For information about the maximum number of inline policies that you can embed in a\n user, see IAM\n and STS quotas in the IAM User Guide .
\n \n Because policy documents can be large, you should use POST rather than GET when\n calling PutUserPolicy
. For general information about using the Query API\n with IAM, see Making query requests in the\n IAM User Guide .
\n "
+ "smithy.api#documentation": "Adds or updates an inline policy document that is embedded in the specified IAM\n user.
\n An IAM user can also have a managed policy attached to it. To attach a managed\n policy to a user, use AttachUserPolicy . To create a new managed\n policy, use CreatePolicy . For information about policies, see Managed\n policies and inline policies in the\n IAM User Guide .
\n For information about the maximum number of inline policies that you can embed in a\n user, see IAM and STS quotas in the IAM User Guide .
\n \n Because policy documents can be large, you should use POST rather than GET when\n calling PutUserPolicy
. For general information about using the Query\n API with IAM, see Making query requests in the\n IAM User Guide .
\n "
}
},
"com.amazonaws.iam#PutUserPolicyRequest": {
@@ -8840,21 +8845,21 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user to associate the policy with.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the user to associate the policy with.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyName": {
"target": "com.amazonaws.iam#policyNameType",
"traits": {
- "smithy.api#documentation": "The name of the policy document.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the policy document.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyDocument": {
"target": "com.amazonaws.iam#policyDocumentType",
"traits": {
- "smithy.api#documentation": "The policy document.
\n You must provide policies in JSON format in IAM. However, for AWS CloudFormation\n templates formatted in YAML, you can provide the policy in JSON or YAML format. AWS\n CloudFormation always converts a YAML policy to JSON format before submitting it to\n IAM.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
+ "smithy.api#documentation": "The policy document.
\n You must provide policies in JSON format in IAM. However, for AWS CloudFormation\n templates formatted in YAML, you can provide the policy in JSON or YAML format. AWS\n CloudFormation always converts a YAML policy to JSON format before submitting it to\n IAM.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
"smithy.api#required": {}
}
}
@@ -8895,7 +8900,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Removes the specified client ID (also known as audience) from the list of client IDs\n registered for the specified IAM OpenID Connect (OIDC) provider resource object.
\n This operation is idempotent; it does not fail or return an error if you try to remove a\n client ID that does not exist.
"
+ "smithy.api#documentation": "Removes the specified client ID (also known as audience) from the list of client IDs\n registered for the specified IAM OpenID Connect (OIDC) provider resource\n object.
\n This operation is idempotent; it does not fail or return an error if you try to remove\n a client ID that does not exist.
"
}
},
"com.amazonaws.iam#RemoveClientIDFromOpenIDConnectProviderRequest": {
@@ -8904,14 +8909,14 @@
"OpenIDConnectProviderArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM OIDC provider resource to remove the client\n ID from. You can get a list of OIDC provider ARNs by using the ListOpenIDConnectProviders operation.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM OIDC provider resource to remove the\n client ID from. You can get a list of OIDC provider ARNs by using the ListOpenIDConnectProviders operation.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
},
"ClientID": {
"target": "com.amazonaws.iam#clientIDType",
"traits": {
- "smithy.api#documentation": "The client ID (also known as audience) to remove from the IAM OIDC provider resource.\n For more information about client IDs, see CreateOpenIDConnectProvider .
",
+ "smithy.api#documentation": "The client ID (also known as audience) to remove from the IAM OIDC provider\n resource. For more information about client IDs, see CreateOpenIDConnectProvider .
",
"smithy.api#required": {}
}
}
@@ -8937,7 +8942,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Removes the specified IAM role from the specified EC2 instance profile.
\n \n Make sure that you do not have any Amazon EC2 instances running with the role you are\n about to remove from the instance profile. Removing a role from an instance profile that\n is associated with a running instance might break any applications running on the\n instance.
\n \n For more information about IAM roles, see Working with roles . For more\n information about instance profiles, see About instance profiles .
"
+ "smithy.api#documentation": "Removes the specified IAM role from the specified EC2 instance profile.
\n \n Make sure that you do not have any Amazon EC2 instances running with the role you\n are about to remove from the instance profile. Removing a role from an instance\n profile that is associated with a running instance might break any applications\n running on the instance.
\n \n For more information about IAM roles, see Working with roles . For more\n information about instance profiles, see About instance\n profiles .
"
}
},
"com.amazonaws.iam#RemoveRoleFromInstanceProfileRequest": {
@@ -8946,14 +8951,14 @@
"InstanceProfileName": {
"target": "com.amazonaws.iam#instanceProfileNameType",
"traits": {
- "smithy.api#documentation": "The name of the instance profile to update.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the instance profile to update.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name of the role to remove.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the role to remove.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -8985,14 +8990,14 @@
"GroupName": {
"target": "com.amazonaws.iam#groupNameType",
"traits": {
- "smithy.api#documentation": "The name of the group to update.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the group to update.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user to remove.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the user to remove.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
}
@@ -9061,7 +9066,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Resets the password for a service-specific credential. The new password is AWS\n generated and cryptographically strong. It cannot be configured by the user. Resetting the\n password immediately invalidates the previous password associated with this user.
"
+ "smithy.api#documentation": "Resets the password for a service-specific credential. The new password is AWS\n generated and cryptographically strong. It cannot be configured by the user. Resetting\n the password immediately invalidates the previous password associated with this\n user.
"
}
},
"com.amazonaws.iam#ResetServiceSpecificCredentialRequest": {
@@ -9070,13 +9075,13 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM user associated with the service-specific credential. If this\n value is not specified, then the operation assumes the user whose credentials are used to\n call the operation.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The name of the IAM user associated with the service-specific credential. If this\n value is not specified, then the operation assumes the user whose credentials are used\n to call the operation.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
},
"ServiceSpecificCredentialId": {
"target": "com.amazonaws.iam#serviceSpecificCredentialId",
"traits": {
- "smithy.api#documentation": "The unique identifier of the service-specific credential.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
+ "smithy.api#documentation": "The unique identifier of the service-specific credential.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
"smithy.api#required": {}
}
}
@@ -9088,7 +9093,7 @@
"ServiceSpecificCredential": {
"target": "com.amazonaws.iam#ServiceSpecificCredential",
"traits": {
- "smithy.api#documentation": "A structure with details about the updated service-specific credential, including the\n new password.
\n \n This is the only time that you can access the\n password. You cannot recover the password later, but you can reset it again.
\n "
+ "smithy.api#documentation": "A structure with details about the updated service-specific credential, including the\n new password.
\n \n This is the only time that you can access the\n password. You cannot recover the password later, but you can reset it again.
\n "
}
}
}
@@ -9189,7 +9194,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Synchronizes the specified MFA device with its IAM resource object on the AWS\n servers.
\n For more information about creating and working with virtual MFA devices, see Using a virtual MFA\n device in the IAM User Guide .
"
+ "smithy.api#documentation": "Synchronizes the specified MFA device with its IAM resource object on the AWS\n servers.
\n For more information about creating and working with virtual MFA devices, see Using a virtual MFA\n device in the IAM User Guide .
"
}
},
"com.amazonaws.iam#ResyncMFADeviceRequest": {
@@ -9198,28 +9203,28 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user whose MFA device you want to resynchronize.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the user whose MFA device you want to resynchronize.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"SerialNumber": {
"target": "com.amazonaws.iam#serialNumberType",
"traits": {
- "smithy.api#documentation": "Serial number that uniquely identifies the MFA device.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "Serial number that uniquely identifies the MFA device.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"AuthenticationCode1": {
"target": "com.amazonaws.iam#authenticationCodeType",
"traits": {
- "smithy.api#documentation": "An authentication code emitted by the device.
\n The format for this parameter is a sequence of six digits.
",
+ "smithy.api#documentation": "An authentication code emitted by the device.
\n The format for this parameter is a sequence of six digits.
",
"smithy.api#required": {}
}
},
"AuthenticationCode2": {
"target": "com.amazonaws.iam#authenticationCodeType",
"traits": {
- "smithy.api#documentation": "A subsequent authentication code emitted by the device.
\n The format for this parameter is a sequence of six digits.
",
+ "smithy.api#documentation": "A subsequent authentication code emitted by the device.
\n The format for this parameter is a sequence of six digits.
",
"smithy.api#required": {}
}
}
@@ -9868,7 +9873,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Sets the specified version of the specified policy as the policy's default (operative)\n version.
\n This operation affects all users, groups, and roles that the policy is attached to. To\n list the users, groups, and roles that the policy is attached to, use ListEntitiesForPolicy .
\n For information about managed policies, see Managed policies and inline\n policies in the IAM User Guide .
"
+ "smithy.api#documentation": "Sets the specified version of the specified policy as the policy's default (operative)\n version.
\n This operation affects all users, groups, and roles that the policy is attached to. To\n list the users, groups, and roles that the policy is attached to, use ListEntitiesForPolicy .
\n For information about managed policies, see Managed policies and inline\n policies in the IAM User Guide .
"
}
},
"com.amazonaws.iam#SetDefaultPolicyVersionRequest": {
@@ -9877,14 +9882,14 @@
"PolicyArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy whose default version you want to\n set.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM policy whose default version you want to\n set.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
},
"VersionId": {
"target": "com.amazonaws.iam#policyVersionIdType",
"traits": {
- "smithy.api#documentation": "The version of the policy to set as the default (operative) version.
\n For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide .
",
+ "smithy.api#documentation": "The version of the policy to set as the default (operative) version.
\n For more information about managed policy versions, see Versioning for managed\n policies in the IAM User Guide .
",
"smithy.api#required": {}
}
}
@@ -9901,7 +9906,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Sets the specified version of the global endpoint token as the token version used for\n the AWS account.
\n By default, AWS Security Token Service (STS) is available as a global service, and all STS requests\n go to a single endpoint at https://sts.amazonaws.com
. AWS recommends using\n Regional STS endpoints to reduce latency, build in redundancy, and increase session token\n availability. For information about Regional endpoints for STS, see AWS AWS Security Token Service\n endpoints and quotas in the AWS General Reference .
\n If you make an STS call to the global endpoint, the resulting session tokens might be\n valid in some Regions but not others. It depends on the version that is set in this\n operation. Version 1 tokens are valid only in AWS Regions that are available by default.\n These tokens do not work in manually enabled Regions, such as Asia Pacific (Hong Kong).\n Version 2 tokens are valid in all Regions. However, version 2 tokens are longer and might\n affect systems where you temporarily store tokens. For information, see Activating and deactivating STS in an AWS region in the\n IAM User Guide .
\n To view the current session token version, see the\n GlobalEndpointTokenVersion
entry in the response of the GetAccountSummary operation.
"
+ "smithy.api#documentation": "Sets the specified version of the global endpoint token as the token version used for\n the AWS account.
\n By default, AWS Security Token Service (STS) is available as a global service, and all STS requests\n go to a single endpoint at https://sts.amazonaws.com
. AWS recommends\n using Regional STS endpoints to reduce latency, build in redundancy, and increase\n session token availability. For information about Regional endpoints for STS, see\n AWS AWS Security Token\n Service endpoints and quotas in the\n AWS General Reference .
\n If you make an STS call to the global endpoint, the resulting session tokens might\n be valid in some Regions but not others. It depends on the version that is set in this\n operation. Version 1 tokens are valid only in AWS Regions that are available by\n default. These tokens do not work in manually enabled Regions, such as Asia Pacific\n (Hong Kong). Version 2 tokens are valid in all Regions. However, version 2 tokens are\n longer and might affect systems where you temporarily store tokens. For information, see\n Activating and\n deactivating STS in an AWS region in the\n IAM User Guide .
\n To view the current session token version, see the\n GlobalEndpointTokenVersion
entry in the response of the GetAccountSummary operation.
"
}
},
"com.amazonaws.iam#SetSecurityTokenServicePreferencesRequest": {
@@ -9910,7 +9915,7 @@
"GlobalEndpointTokenVersion": {
"target": "com.amazonaws.iam#globalEndpointTokenVersion",
"traits": {
- "smithy.api#documentation": "The version of the global endpoint token. Version 1 tokens are valid only in AWS\n Regions that are available by default. These tokens do not work in manually enabled\n Regions, such as Asia Pacific (Hong Kong). Version 2 tokens are valid in all Regions.\n However, version 2 tokens are longer and might affect systems where you temporarily store\n tokens.
\n For information, see Activating and deactivating\n STS in an AWS region in the IAM User Guide .
",
+ "smithy.api#documentation": "The version of the global endpoint token. Version 1 tokens are valid only in AWS\n Regions that are available by default. These tokens do not work in manually enabled\n Regions, such as Asia Pacific (Hong Kong). Version 2 tokens are valid in all Regions.\n However, version 2 tokens are longer and might affect systems where you temporarily\n store tokens.
\n For information, see Activating and\n deactivating STS in an AWS region in the\n IAM User Guide .
",
"smithy.api#required": {}
}
}
@@ -9975,7 +9980,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Simulate how a set of IAM policies and optionally a resource-based policy works with a\n list of API operations and AWS resources to determine the policies' effective\n permissions. The policies are provided as strings.
\n The simulation does not perform the API operations; it only checks the authorization to\n determine if the simulated policies allow or deny the operations. You can simulate\n resources that don't exist in your account.
\n If you want to simulate existing policies that are attached to an IAM user, group, or\n role, use SimulatePrincipalPolicy instead.
\n Context keys are variables that are maintained by AWS and its services and which\n provide details about the context of an API query request. You can use the\n Condition
element of an IAM policy to evaluate context keys. To get the\n list of context keys that the policies require for correct simulation, use GetContextKeysForCustomPolicy .
\n If the output is long, you can use MaxItems
and Marker
\n parameters to paginate the results.
\n For more information about using the policy simulator, see Testing IAM policies with\n the IAM policy simulator in the IAM User Guide .
",
+ "smithy.api#documentation": "Simulate how a set of IAM policies and optionally a resource-based policy works with\n a list of API operations and AWS resources to determine the policies' effective\n permissions. The policies are provided as strings.
\n The simulation does not perform the API operations; it only checks the authorization\n to determine if the simulated policies allow or deny the operations. You can simulate\n resources that don't exist in your account.
\n If you want to simulate existing policies that are attached to an IAM user, group,\n or role, use SimulatePrincipalPolicy instead.
\n Context keys are variables that are maintained by AWS and its services and which\n provide details about the context of an API query request. You can use the\n Condition
element of an IAM policy to evaluate context keys. To get\n the list of context keys that the policies require for correct simulation, use GetContextKeysForCustomPolicy .
\n If the output is long, you can use MaxItems
and Marker
\n parameters to paginate the results.
\n For more information about using the policy simulator, see Testing IAM policies\n with the IAM policy simulator in the\n IAM User Guide .
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -9990,57 +9995,57 @@
"PolicyInputList": {
"target": "com.amazonaws.iam#SimulationPolicyListType",
"traits": {
- "smithy.api#documentation": "A list of policy documents to include in the simulation. Each document is specified as a\n string containing the complete, valid JSON text of an IAM policy. Do not include any\n resource-based policies in this parameter. Any resource-based policy must be submitted with\n the ResourcePolicy
parameter. The policies cannot be \"scope-down\" policies,\n such as you could include in a call to GetFederationToken or one of the\n AssumeRole \n API operations. In other words, do not use policies designed to restrict what a user can do\n while using the temporary credentials.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
+ "smithy.api#documentation": "A list of policy documents to include in the simulation. Each document is specified as\n a string containing the complete, valid JSON text of an IAM policy. Do not include any\n resource-based policies in this parameter. Any resource-based policy must be submitted\n with the ResourcePolicy
parameter. The policies cannot be \"scope-down\"\n policies, such as you could include in a call to GetFederationToken or one of\n the AssumeRole API operations. In other words, do not use policies designed to\n restrict what a user can do while using the temporary credentials.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
"smithy.api#required": {}
}
},
"PermissionsBoundaryPolicyInputList": {
"target": "com.amazonaws.iam#SimulationPolicyListType",
"traits": {
- "smithy.api#documentation": "The IAM permissions boundary policy to simulate. The permissions boundary sets the\n maximum permissions that an IAM entity can have. You can input only one permissions\n boundary when you pass a policy to this operation. For more information about permissions\n boundaries, see Permissions boundaries for IAM\n entities in the IAM User Guide . The policy input is\n specified as a string that contains the complete, valid JSON text of a permissions boundary\n policy.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n "
+ "smithy.api#documentation": "The IAM permissions boundary policy to simulate. The permissions boundary sets the\n maximum permissions that an IAM entity can have. You can input only one permissions\n boundary when you pass a policy to this operation. For more information about\n permissions boundaries, see Permissions boundaries for IAM\n entities in the IAM User Guide . The policy input is\n specified as a string that contains the complete, valid JSON text of a permissions\n boundary policy.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n "
}
},
"ActionNames": {
"target": "com.amazonaws.iam#ActionNameListType",
"traits": {
- "smithy.api#documentation": "A list of names of API operations to evaluate in the simulation. Each operation is\n evaluated against each resource. Each operation must include the service identifier, such\n as iam:CreateUser
. This operation does not support using wildcards (*) in an\n action name.
",
+ "smithy.api#documentation": "A list of names of API operations to evaluate in the simulation. Each operation is\n evaluated against each resource. Each operation must include the service identifier,\n such as iam:CreateUser
. This operation does not support using wildcards (*)\n in an action name.
",
"smithy.api#required": {}
}
},
"ResourceArns": {
"target": "com.amazonaws.iam#ResourceNameListType",
"traits": {
- "smithy.api#documentation": "A list of ARNs of AWS resources to include in the simulation. If this parameter is not\n provided, then the value defaults to *
(all resources). Each API in the\n ActionNames
parameter is evaluated for each resource in this list. The\n simulation determines the access result (allowed or denied) of each combination and reports\n it in the response. You can simulate resources that don't exist in your account.
\n The simulation does not automatically retrieve policies for the specified resources. If\n you want to include a resource policy in the simulation, then you must include the policy\n as a string in the ResourcePolicy
parameter.
\n If you include a ResourcePolicy
, then it must be applicable to all of the\n resources included in the simulation or you receive an invalid input error.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
"
+ "smithy.api#documentation": "A list of ARNs of AWS resources to include in the simulation. If this parameter is\n not provided, then the value defaults to *
(all resources). Each API in the\n ActionNames
parameter is evaluated for each resource in this list. The\n simulation determines the access result (allowed or denied) of each combination and\n reports it in the response. You can simulate resources that don't exist in your\n account.
\n The simulation does not automatically retrieve policies for the specified resources.\n If you want to include a resource policy in the simulation, then you must include the\n policy as a string in the ResourcePolicy
parameter.
\n If you include a ResourcePolicy
, then it must be applicable to all of the\n resources included in the simulation or you receive an invalid input error.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
"
}
},
"ResourcePolicy": {
"target": "com.amazonaws.iam#policyDocumentType",
"traits": {
- "smithy.api#documentation": "A resource-based policy to include in the simulation provided as a string. Each resource\n in the simulation is treated as if it had this policy attached. You can include only one\n resource-based policy in a simulation.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n "
+ "smithy.api#documentation": "A resource-based policy to include in the simulation provided as a string. Each\n resource in the simulation is treated as if it had this policy attached. You can include\n only one resource-based policy in a simulation.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n "
}
},
"ResourceOwner": {
"target": "com.amazonaws.iam#ResourceNameType",
"traits": {
- "smithy.api#documentation": "An ARN representing the AWS account ID that specifies the owner of any simulated\n resource that does not identify its owner in the resource ARN. Examples of resource ARNs\n include an S3 bucket or object. If ResourceOwner
is specified, it is also used\n as the account owner of any ResourcePolicy
included in the simulation. If the\n ResourceOwner
parameter is not specified, then the owner of the resources\n and the resource policy defaults to the account of the identity provided in\n CallerArn
. This parameter is required only if you specify a resource-based\n policy and account that owns the resource is different from the account that owns the\n simulated calling user CallerArn
.
\n The ARN for an account uses the following syntax:\n arn:aws:iam::AWS-account-ID :root
. For example, to\n represent the account with the 112233445566 ID, use the following ARN:\n arn:aws:iam::112233445566-ID:root
.
"
+ "smithy.api#documentation": "An ARN representing the AWS account ID that specifies the owner of any simulated\n resource that does not identify its owner in the resource ARN. Examples of resource ARNs\n include an S3 bucket or object. If ResourceOwner
is specified, it is also\n used as the account owner of any ResourcePolicy
included in the simulation.\n If the ResourceOwner
parameter is not specified, then the owner of the\n resources and the resource policy defaults to the account of the identity provided in\n CallerArn
. This parameter is required only if you specify a\n resource-based policy and account that owns the resource is different from the account\n that owns the simulated calling user CallerArn
.
\n The ARN for an account uses the following syntax:\n arn:aws:iam::AWS-account-ID :root
. For example,\n to represent the account with the 112233445566 ID, use the following ARN:\n arn:aws:iam::112233445566-ID:root
.
"
}
},
"CallerArn": {
"target": "com.amazonaws.iam#ResourceNameType",
"traits": {
- "smithy.api#documentation": "The ARN of the IAM user that you want to use as the simulated caller of the API\n operations. CallerArn
is required if you include a ResourcePolicy
\n so that the policy's Principal
element has a value to use in evaluating the\n policy.
\n You can specify only the ARN of an IAM user. You cannot specify the ARN of an assumed\n role, federated user, or a service principal.
"
+ "smithy.api#documentation": "The ARN of the IAM user that you want to use as the simulated caller of the API\n operations. CallerArn
is required if you include a\n ResourcePolicy
so that the policy's Principal
element has\n a value to use in evaluating the policy.
\n You can specify only the ARN of an IAM user. You cannot specify the ARN of an\n assumed role, federated user, or a service principal.
"
}
},
"ContextEntries": {
"target": "com.amazonaws.iam#ContextEntryListType",
"traits": {
- "smithy.api#documentation": "A list of context keys and corresponding values for the simulation to use. Whenever a\n context key is evaluated in one of the simulated IAM permissions policies, the\n corresponding value is supplied.
"
+ "smithy.api#documentation": "A list of context keys and corresponding values for the simulation to use. Whenever a\n context key is evaluated in one of the simulated IAM permissions policies, the\n corresponding value is supplied.
"
}
},
"ResourceHandlingOption": {
"target": "com.amazonaws.iam#ResourceHandlingOptionType",
"traits": {
- "smithy.api#documentation": "Specifies the type of simulation to run. Different API operations that support\n resource-based policies require different combinations of resources. By specifying the type\n of simulation to run, you enable the policy simulator to enforce the presence of the\n required resources to ensure reliable simulation results. If your simulation does not match\n one of the following scenarios, then you can omit this parameter. The following list shows\n each of the supported scenario values and the resources that you must define to run the\n simulation.
\n Each of the EC2 scenarios requires that you specify instance, image, and security-group\n resources. If your scenario includes an EBS volume, then you must specify that volume as a\n resource. If the EC2 scenario includes VPC, then you must supply the network-interface\n resource. If it includes an IP subnet, then you must specify the subnet resource. For more\n information on the EC2 scenario options, see Supported platforms \n in the Amazon EC2 User Guide .
\n \n \n \n EC2-Classic-InstanceStore \n
\n instance, image, security-group
\n \n \n \n EC2-Classic-EBS \n
\n instance, image, security-group, volume
\n \n \n \n EC2-VPC-InstanceStore \n
\n instance, image, security-group, network-interface
\n \n \n \n EC2-VPC-InstanceStore-Subnet \n
\n instance, image, security-group, network-interface, subnet
\n \n \n \n EC2-VPC-EBS \n
\n instance, image, security-group, network-interface, volume
\n \n \n \n EC2-VPC-EBS-Subnet \n
\n instance, image, security-group, network-interface, subnet, volume
\n \n "
+ "smithy.api#documentation": "Specifies the type of simulation to run. Different API operations that support\n resource-based policies require different combinations of resources. By specifying the\n type of simulation to run, you enable the policy simulator to enforce the presence of\n the required resources to ensure reliable simulation results. If your simulation does\n not match one of the following scenarios, then you can omit this parameter. The\n following list shows each of the supported scenario values and the resources that you\n must define to run the simulation.
\n Each of the EC2 scenarios requires that you specify instance, image, and\n security-group resources. If your scenario includes an EBS volume, then you must specify\n that volume as a resource. If the EC2 scenario includes VPC, then you must supply the\n network-interface resource. If it includes an IP subnet, then you must specify the\n subnet resource. For more information on the EC2 scenario options, see Supported platforms in the Amazon EC2 User\n Guide .
\n \n \n \n EC2-Classic-InstanceStore \n
\n instance, image, security-group
\n \n \n \n EC2-Classic-EBS \n
\n instance, image, security-group, volume
\n \n \n \n EC2-VPC-InstanceStore \n
\n instance, image, security-group, network-interface
\n \n \n \n EC2-VPC-InstanceStore-Subnet \n
\n instance, image, security-group, network-interface, subnet
\n \n \n \n EC2-VPC-EBS \n
\n instance, image, security-group, network-interface, volume
\n \n \n \n EC2-VPC-EBS-Subnet \n
\n instance, image, security-group, network-interface, subnet, volume
\n \n "
}
},
"MaxItems": {
@@ -10103,7 +10108,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Simulate how a set of IAM policies attached to an IAM entity works with a list of\n API operations and AWS resources to determine the policies' effective permissions. The\n entity can be an IAM user, group, or role. If you specify a user, then the simulation\n also includes all of the policies that are attached to groups that the user belongs to. You\n can simulate resources that don't exist in your account.
\n You can optionally include a list of one or more additional policies specified as\n strings to include in the simulation. If you want to simulate only policies specified as\n strings, use SimulateCustomPolicy instead.
\n You can also optionally include one resource-based policy to be evaluated with each of\n the resources included in the simulation.
\n The simulation does not perform the API operations; it only checks the authorization to\n determine if the simulated policies allow or deny the operations.
\n \n Note: This operation discloses information about the permissions\n granted to other users. If you do not want users to see other user's permissions, then\n consider allowing them to use SimulateCustomPolicy instead.
\n Context keys are variables maintained by AWS and its services that provide details\n about the context of an API query request. You can use the Condition
element\n of an IAM policy to evaluate context keys. To get the list of context keys that the\n policies require for correct simulation, use GetContextKeysForPrincipalPolicy .
\n If the output is long, you can use the MaxItems
and Marker
\n parameters to paginate the results.
\n For more information about using the policy simulator, see Testing IAM policies with\n the IAM policy simulator in the IAM User Guide .
",
+ "smithy.api#documentation": "Simulate how a set of IAM policies attached to an IAM entity works with a list of\n API operations and AWS resources to determine the policies' effective permissions. The\n entity can be an IAM user, group, or role. If you specify a user, then the simulation\n also includes all of the policies that are attached to groups that the user belongs to.\n You can simulate resources that don't exist in your account.
\n You can optionally include a list of one or more additional policies specified as\n strings to include in the simulation. If you want to simulate only policies specified as\n strings, use SimulateCustomPolicy instead.
\n You can also optionally include one resource-based policy to be evaluated with each of\n the resources included in the simulation.
\n The simulation does not perform the API operations; it only checks the authorization\n to determine if the simulated policies allow or deny the operations.
\n \n Note: This operation discloses information about the\n permissions granted to other users. If you do not want users to see other user's\n permissions, then consider allowing them to use SimulateCustomPolicy \n instead.
\n Context keys are variables maintained by AWS and its services that provide details\n about the context of an API query request. You can use the Condition
\n element of an IAM policy to evaluate context keys. To get the list of context keys\n that the policies require for correct simulation, use GetContextKeysForPrincipalPolicy .
\n If the output is long, you can use the MaxItems
and Marker
\n parameters to paginate the results.
\n For more information about using the policy simulator, see Testing IAM policies\n with the IAM policy simulator in the\n IAM User Guide .
",
"smithy.api#paginated": {
"inputToken": "Marker",
"outputToken": "Marker",
@@ -10118,63 +10123,63 @@
"PolicySourceArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of a user, group, or role whose policies you want to\n include in the simulation. If you specify a user, group, or role, the simulation includes\n all policies that are associated with that entity. If you specify a user, the simulation\n also includes all policies that are attached to any groups the user belongs to.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of a user, group, or role whose policies you want to\n include in the simulation. If you specify a user, group, or role, the simulation\n includes all policies that are associated with that entity. If you specify a user, the\n simulation also includes all policies that are attached to any groups the user belongs\n to.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
},
"PolicyInputList": {
"target": "com.amazonaws.iam#SimulationPolicyListType",
"traits": {
- "smithy.api#documentation": "An optional list of additional policy documents to include in the simulation. Each\n document is specified as a string containing the complete, valid JSON text of an IAM\n policy.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n "
+ "smithy.api#documentation": "An optional list of additional policy documents to include in the simulation. Each\n document is specified as a string containing the complete, valid JSON text of an IAM\n policy.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n "
}
},
"PermissionsBoundaryPolicyInputList": {
"target": "com.amazonaws.iam#SimulationPolicyListType",
"traits": {
- "smithy.api#documentation": "The IAM permissions boundary policy to simulate. The permissions boundary sets the\n maximum permissions that the entity can have. You can input only one permissions boundary\n when you pass a policy to this operation. An IAM entity can only have one permissions\n boundary in effect at a time. For example, if a permissions boundary is attached to an\n entity and you pass in a different permissions boundary policy using this parameter, then\n the new permissions boundary policy is used for the simulation. For more information about\n permissions boundaries, see Permissions boundaries for IAM\n entities in the IAM User Guide . The policy input is\n specified as a string containing the complete, valid JSON text of a permissions boundary\n policy.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n "
+ "smithy.api#documentation": "The IAM permissions boundary policy to simulate. The permissions boundary sets the\n maximum permissions that the entity can have. You can input only one permissions\n boundary when you pass a policy to this operation. An IAM entity can only have one\n permissions boundary in effect at a time. For example, if a permissions boundary is\n attached to an entity and you pass in a different permissions boundary policy using this\n parameter, then the new permissions boundary policy is used for the simulation. For more\n information about permissions boundaries, see Permissions boundaries for IAM\n entities in the IAM User Guide . The policy input is\n specified as a string containing the complete, valid JSON text of a permissions boundary\n policy.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n "
}
},
"ActionNames": {
"target": "com.amazonaws.iam#ActionNameListType",
"traits": {
- "smithy.api#documentation": "A list of names of API operations to evaluate in the simulation. Each operation is\n evaluated for each resource. Each operation must include the service identifier, such as\n iam:CreateUser
.
",
+ "smithy.api#documentation": "A list of names of API operations to evaluate in the simulation. Each operation is\n evaluated for each resource. Each operation must include the service identifier, such as\n iam:CreateUser
.
",
"smithy.api#required": {}
}
},
"ResourceArns": {
"target": "com.amazonaws.iam#ResourceNameListType",
"traits": {
- "smithy.api#documentation": "A list of ARNs of AWS resources to include in the simulation. If this parameter is not\n provided, then the value defaults to *
(all resources). Each API in the\n ActionNames
parameter is evaluated for each resource in this list. The\n simulation determines the access result (allowed or denied) of each combination and reports\n it in the response. You can simulate resources that don't exist in your account.
\n The simulation does not automatically retrieve policies for the specified resources. If\n you want to include a resource policy in the simulation, then you must include the policy\n as a string in the ResourcePolicy
parameter.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
"
+ "smithy.api#documentation": "A list of ARNs of AWS resources to include in the simulation. If this parameter is\n not provided, then the value defaults to *
(all resources). Each API in the\n ActionNames
parameter is evaluated for each resource in this list. The\n simulation determines the access result (allowed or denied) of each combination and\n reports it in the response. You can simulate resources that don't exist in your\n account.
\n The simulation does not automatically retrieve policies for the specified resources.\n If you want to include a resource policy in the simulation, then you must include the\n policy as a string in the ResourcePolicy
parameter.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
"
}
},
"ResourcePolicy": {
"target": "com.amazonaws.iam#policyDocumentType",
"traits": {
- "smithy.api#documentation": "A resource-based policy to include in the simulation provided as a string. Each resource\n in the simulation is treated as if it had this policy attached. You can include only one\n resource-based policy in a simulation.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n "
+ "smithy.api#documentation": "A resource-based policy to include in the simulation provided as a string. Each\n resource in the simulation is treated as if it had this policy attached. You can include\n only one resource-based policy in a simulation.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n "
}
},
"ResourceOwner": {
"target": "com.amazonaws.iam#ResourceNameType",
"traits": {
- "smithy.api#documentation": "An AWS account ID that specifies the owner of any simulated resource that does not\n identify its owner in the resource ARN. Examples of resource ARNs include an S3 bucket or\n object. If ResourceOwner
is specified, it is also used as the account owner of\n any ResourcePolicy
included in the simulation. If the\n ResourceOwner
parameter is not specified, then the owner of the resources\n and the resource policy defaults to the account of the identity provided in\n CallerArn
. This parameter is required only if you specify a resource-based\n policy and account that owns the resource is different from the account that owns the\n simulated calling user CallerArn
.
"
+ "smithy.api#documentation": "An AWS account ID that specifies the owner of any simulated resource that does not\n identify its owner in the resource ARN. Examples of resource ARNs include an S3 bucket\n or object. If ResourceOwner
is specified, it is also used as the account\n owner of any ResourcePolicy
included in the simulation. If the\n ResourceOwner
parameter is not specified, then the owner of the\n resources and the resource policy defaults to the account of the identity provided in\n CallerArn
. This parameter is required only if you specify a\n resource-based policy and account that owns the resource is different from the account\n that owns the simulated calling user CallerArn
.
"
}
},
"CallerArn": {
"target": "com.amazonaws.iam#ResourceNameType",
"traits": {
- "smithy.api#documentation": "The ARN of the IAM user that you want to specify as the simulated caller of the API\n operations. If you do not specify a CallerArn
, it defaults to the ARN of the\n user that you specify in PolicySourceArn
, if you specified a user. If you\n include both a PolicySourceArn
(for example,\n arn:aws:iam::123456789012:user/David
) and a CallerArn
(for\n example, arn:aws:iam::123456789012:user/Bob
), the result is that you simulate\n calling the API operations as Bob, as if Bob had David's policies.
\n You can specify only the ARN of an IAM user. You cannot specify the ARN of an assumed\n role, federated user, or a service principal.
\n \n CallerArn
is required if you include a ResourcePolicy
and the\n PolicySourceArn
is not the ARN for an IAM user. This is required so that\n the resource-based policy's Principal
element has a value to use in evaluating\n the policy.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
"
+ "smithy.api#documentation": "The ARN of the IAM user that you want to specify as the simulated caller of the API\n operations. If you do not specify a CallerArn
, it defaults to the ARN of\n the user that you specify in PolicySourceArn
, if you specified a user. If\n you include both a PolicySourceArn
(for example,\n arn:aws:iam::123456789012:user/David
) and a CallerArn
(for\n example, arn:aws:iam::123456789012:user/Bob
), the result is that you\n simulate calling the API operations as Bob, as if Bob had David's policies.
\n You can specify only the ARN of an IAM user. You cannot specify the ARN of an\n assumed role, federated user, or a service principal.
\n \n CallerArn
is required if you include a ResourcePolicy
and\n the PolicySourceArn
is not the ARN for an IAM user. This is required so\n that the resource-based policy's Principal
element has a value to use in\n evaluating the policy.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
"
}
},
"ContextEntries": {
"target": "com.amazonaws.iam#ContextEntryListType",
"traits": {
- "smithy.api#documentation": "A list of context keys and corresponding values for the simulation to use. Whenever a\n context key is evaluated in one of the simulated IAM permissions policies, the\n corresponding value is supplied.
"
+ "smithy.api#documentation": "A list of context keys and corresponding values for the simulation to use. Whenever a\n context key is evaluated in one of the simulated IAM permissions policies, the\n corresponding value is supplied.
"
}
},
"ResourceHandlingOption": {
"target": "com.amazonaws.iam#ResourceHandlingOptionType",
"traits": {
- "smithy.api#documentation": "Specifies the type of simulation to run. Different API operations that support\n resource-based policies require different combinations of resources. By specifying the type\n of simulation to run, you enable the policy simulator to enforce the presence of the\n required resources to ensure reliable simulation results. If your simulation does not match\n one of the following scenarios, then you can omit this parameter. The following list shows\n each of the supported scenario values and the resources that you must define to run the\n simulation.
\n Each of the EC2 scenarios requires that you specify instance, image, and security group\n resources. If your scenario includes an EBS volume, then you must specify that volume as a\n resource. If the EC2 scenario includes VPC, then you must supply the network interface\n resource. If it includes an IP subnet, then you must specify the subnet resource. For more\n information on the EC2 scenario options, see Supported platforms \n in the Amazon EC2 User Guide .
\n \n \n \n EC2-Classic-InstanceStore \n
\n instance, image, security group
\n \n \n \n EC2-Classic-EBS \n
\n instance, image, security group, volume
\n \n \n \n EC2-VPC-InstanceStore \n
\n instance, image, security group, network interface
\n \n \n \n EC2-VPC-InstanceStore-Subnet \n
\n instance, image, security group, network interface, subnet
\n \n \n \n EC2-VPC-EBS \n
\n instance, image, security group, network interface, volume
\n \n \n \n EC2-VPC-EBS-Subnet \n
\n instance, image, security group, network interface, subnet, volume
\n \n "
+ "smithy.api#documentation": "Specifies the type of simulation to run. Different API operations that support\n resource-based policies require different combinations of resources. By specifying the\n type of simulation to run, you enable the policy simulator to enforce the presence of\n the required resources to ensure reliable simulation results. If your simulation does\n not match one of the following scenarios, then you can omit this parameter. The\n following list shows each of the supported scenario values and the resources that you\n must define to run the simulation.
\n Each of the EC2 scenarios requires that you specify instance, image, and security\n group resources. If your scenario includes an EBS volume, then you must specify that\n volume as a resource. If the EC2 scenario includes VPC, then you must supply the network\n interface resource. If it includes an IP subnet, then you must specify the subnet\n resource. For more information on the EC2 scenario options, see Supported platforms in the Amazon EC2 User\n Guide .
\n \n \n \n EC2-Classic-InstanceStore \n
\n instance, image, security group
\n \n \n \n EC2-Classic-EBS \n
\n instance, image, security group, volume
\n \n \n \n EC2-VPC-InstanceStore \n
\n instance, image, security group, network interface
\n \n \n \n EC2-VPC-InstanceStore-Subnet \n
\n instance, image, security group, network interface, subnet
\n \n \n \n EC2-VPC-EBS \n
\n instance, image, security group, network interface, volume
\n \n \n \n EC2-VPC-EBS-Subnet \n
\n instance, image, security group, network interface, subnet, volume
\n \n "
}
},
"MaxItems": {
@@ -11025,7 +11030,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Changes the status of the specified access key from Active to Inactive, or vice versa.\n This operation can be used to disable a user's key as part of a key rotation\n workflow.
\n If the UserName
is not specified, the user name is determined implicitly\n based on the AWS access key ID used to sign the request. This operation works for access\n keys under the AWS account. Consequently, you can use this operation to manage AWS\n account root user credentials even if the AWS account has no associated users.
\n For information about rotating keys, see Managing keys and certificates in\n the IAM User Guide .
"
+ "smithy.api#documentation": "Changes the status of the specified access key from Active to Inactive, or vice versa.\n This operation can be used to disable a user's key as part of a key rotation\n workflow.
\n If the UserName
is not specified, the user name is determined implicitly\n based on the AWS access key ID used to sign the request. This operation works for\n access keys under the AWS account. Consequently, you can use this operation to manage\n AWS account root user credentials even if the AWS account has no associated\n users.
\n For information about rotating keys, see Managing keys and certificates \n in the IAM User Guide .
"
}
},
"com.amazonaws.iam#UpdateAccessKeyRequest": {
@@ -11034,20 +11039,20 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user whose key you want to update.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The name of the user whose key you want to update.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
},
"AccessKeyId": {
"target": "com.amazonaws.iam#accessKeyIdType",
"traits": {
- "smithy.api#documentation": "The access key ID of the secret access key you want to update.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
+ "smithy.api#documentation": "The access key ID of the secret access key you want to update.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
"smithy.api#required": {}
}
},
"Status": {
"target": "com.amazonaws.iam#statusType",
"traits": {
- "smithy.api#documentation": " The status you want to assign to the secret access key. Active
means that\n the key can be used for programmatic calls to AWS, while Inactive
means that the key\n cannot be used.
",
+ "smithy.api#documentation": " The status you want to assign to the secret access key. Active
means\n that the key can be used for programmatic calls to AWS, while Inactive
\n means that the key cannot be used.
",
"smithy.api#required": {}
}
}
@@ -11073,7 +11078,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Updates the password policy settings for the AWS account.
\n \n \n \n This operation does not support partial updates. No parameters are required,\n but if you do not specify a parameter, that parameter's value reverts to its\n default value. See the Request Parameters section\n for each parameter's default value. Also note that some parameters do not allow\n the default parameter to be explicitly set. Instead, to invoke the default value,\n do not include that parameter when you invoke the operation.
\n \n \n \n For more information about using a password policy, see Managing an IAM password\n policy in the IAM User Guide .
"
+ "smithy.api#documentation": "Updates the password policy settings for the AWS account.
\n \n \n \n This operation does not support partial updates. No parameters are\n required, but if you do not specify a parameter, that parameter's value\n reverts to its default value. See the Request\n Parameters section for each parameter's default value. Also\n note that some parameters do not allow the default parameter to be\n explicitly set. Instead, to invoke the default value, do not include that\n parameter when you invoke the operation.
\n \n \n \n For more information about using a password policy, see Managing an IAM password\n policy in the IAM User Guide .
"
}
},
"com.amazonaws.iam#UpdateAccountPasswordPolicyRequest": {
@@ -11082,55 +11087,55 @@
"MinimumPasswordLength": {
"target": "com.amazonaws.iam#minimumPasswordLengthType",
"traits": {
- "smithy.api#documentation": "The minimum number of characters allowed in an IAM user password.
\n If you do not specify a value for this parameter, then the operation uses the default\n value of 6
.
"
+ "smithy.api#documentation": "The minimum number of characters allowed in an IAM user password.
\n If you do not specify a value for this parameter, then the operation uses the default\n value of 6
.
"
}
},
"RequireSymbols": {
"target": "com.amazonaws.iam#booleanType",
"traits": {
- "smithy.api#documentation": "Specifies whether IAM user passwords must contain at least one of the following\n non-alphanumeric characters:
\n ! @ # $ % ^ & * ( ) _ + - = [ ] { } | '
\n If you do not specify a value for this parameter, then the operation uses the default\n value of false
. The result is that passwords do not require at least one\n symbol character.
"
+ "smithy.api#documentation": "Specifies whether IAM user passwords must contain at least one of the following\n non-alphanumeric characters:
\n ! @ # $ % ^ & * ( ) _ + - = [ ] { } | '
\n If you do not specify a value for this parameter, then the operation uses the default\n value of false
. The result is that passwords do not require at least one\n symbol character.
"
}
},
"RequireNumbers": {
"target": "com.amazonaws.iam#booleanType",
"traits": {
- "smithy.api#documentation": "Specifies whether IAM user passwords must contain at least one numeric character (0 to\n 9).
\n If you do not specify a value for this parameter, then the operation uses the default\n value of false
. The result is that passwords do not require at least one\n numeric character.
"
+ "smithy.api#documentation": "Specifies whether IAM user passwords must contain at least one numeric character (0\n to 9).
\n If you do not specify a value for this parameter, then the operation uses the default\n value of false
. The result is that passwords do not require at least one\n numeric character.
"
}
},
"RequireUppercaseCharacters": {
"target": "com.amazonaws.iam#booleanType",
"traits": {
- "smithy.api#documentation": "Specifies whether IAM user passwords must contain at least one uppercase character\n from the ISO basic Latin alphabet (A to Z).
\n If you do not specify a value for this parameter, then the operation uses the default\n value of false
. The result is that passwords do not require at least one\n uppercase character.
"
+ "smithy.api#documentation": "Specifies whether IAM user passwords must contain at least one uppercase character\n from the ISO basic Latin alphabet (A to Z).
\n If you do not specify a value for this parameter, then the operation uses the default\n value of false
. The result is that passwords do not require at least one\n uppercase character.
"
}
},
"RequireLowercaseCharacters": {
"target": "com.amazonaws.iam#booleanType",
"traits": {
- "smithy.api#documentation": "Specifies whether IAM user passwords must contain at least one lowercase character\n from the ISO basic Latin alphabet (a to z).
\n If you do not specify a value for this parameter, then the operation uses the default\n value of false
. The result is that passwords do not require at least one\n lowercase character.
"
+ "smithy.api#documentation": "Specifies whether IAM user passwords must contain at least one lowercase character\n from the ISO basic Latin alphabet (a to z).
\n If you do not specify a value for this parameter, then the operation uses the default\n value of false
. The result is that passwords do not require at least one\n lowercase character.
"
}
},
"AllowUsersToChangePassword": {
"target": "com.amazonaws.iam#booleanType",
"traits": {
- "smithy.api#documentation": " Allows all IAM users in your account to use the AWS Management Console to change their own\n passwords. For more information, see Letting IAM users change their own\n passwords in the IAM User Guide .
\n If you do not specify a value for this parameter, then the operation uses the default\n value of false
. The result is that IAM users in the account do not\n automatically have permissions to change their own password.
"
+ "smithy.api#documentation": " Allows all IAM users in your account to use the AWS Management Console to change their own\n passwords. For more information, see Letting IAM users change their own\n passwords in the IAM User Guide .
\n If you do not specify a value for this parameter, then the operation uses the default\n value of false
. The result is that IAM users in the account do not\n automatically have permissions to change their own password.
"
}
},
"MaxPasswordAge": {
"target": "com.amazonaws.iam#maxPasswordAgeType",
"traits": {
- "smithy.api#documentation": "The number of days that an IAM user password is valid.
\n If you do not specify a value for this parameter, then the operation uses the default\n value of 0
. The result is that IAM user passwords never expire.
"
+ "smithy.api#documentation": "The number of days that an IAM user password is valid.
\n If you do not specify a value for this parameter, then the operation uses the default\n value of 0
. The result is that IAM user passwords never expire.
"
}
},
"PasswordReusePrevention": {
"target": "com.amazonaws.iam#passwordReusePreventionType",
"traits": {
- "smithy.api#documentation": "Specifies the number of previous passwords that IAM users are prevented from\n reusing.
\n If you do not specify a value for this parameter, then the operation uses the default\n value of 0
. The result is that IAM users are not prevented from reusing\n previous passwords.
"
+ "smithy.api#documentation": "Specifies the number of previous passwords that IAM users are prevented from\n reusing.
\n If you do not specify a value for this parameter, then the operation uses the default\n value of 0
. The result is that IAM users are not prevented from reusing\n previous passwords.
"
}
},
"HardExpiry": {
"target": "com.amazonaws.iam#booleanObjectType",
"traits": {
- "smithy.api#documentation": "Prevents IAM users from setting a new password after their password has expired. The\n IAM user cannot be accessed until an administrator resets the password.
\n If you do not specify a value for this parameter, then the operation uses the default\n value of false
. The result is that IAM users can change their passwords\n after they expire and continue to sign in as the user.
"
+ "smithy.api#documentation": "Prevents IAM users from setting a new password after their password has expired. The\n IAM user cannot be accessed until an administrator resets the password.
\n If you do not specify a value for this parameter, then the operation uses the default\n value of false
. The result is that IAM users can change their passwords\n after they expire and continue to sign in as the user.
"
}
}
}
@@ -11158,7 +11163,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Updates the policy that grants an IAM entity permission to assume a role. This is\n typically referred to as the \"role trust policy\". For more information about roles, see\n Using roles to\n delegate permissions and federate identities .
"
+ "smithy.api#documentation": "Updates the policy that grants an IAM entity permission to assume a role. This is\n typically referred to as the \"role trust policy\". For more information about roles, see\n Using roles to\n delegate permissions and federate identities .
"
}
},
"com.amazonaws.iam#UpdateAssumeRolePolicyRequest": {
@@ -11167,14 +11172,14 @@
"RoleName": {
"target": "com.amazonaws.iam#roleNameType",
"traits": {
- "smithy.api#documentation": "The name of the role to update with the new policy.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the role to update with the new policy.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"PolicyDocument": {
"target": "com.amazonaws.iam#policyDocumentType",
"traits": {
- "smithy.api#documentation": "The policy that grants an entity permission to assume the role.
\n You must provide policies in JSON format in IAM. However, for AWS CloudFormation\n templates formatted in YAML, you can provide the policy in JSON or YAML format. AWS\n CloudFormation always converts a YAML policy to JSON format before submitting it to\n IAM.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
+ "smithy.api#documentation": "The policy that grants an entity permission to assume the role.
\n You must provide policies in JSON format in IAM. However, for AWS CloudFormation\n templates formatted in YAML, you can provide the policy in JSON or YAML format. AWS\n CloudFormation always converts a YAML policy to JSON format before submitting it to\n IAM.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
"smithy.api#required": {}
}
}
@@ -11200,7 +11205,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Updates the name and/or the path of the specified IAM group.
\n \n You should understand the implications of changing a group's path or name. For more\n information, see Renaming users and\n groups in the IAM User Guide .
\n \n \n The person making the request (the principal), must have permission to change the\n role group with the old name and the new name. For example, to change the group named\n Managers
to MGRs
, the principal must have a policy that\n allows them to update both groups. If the principal has permission to update the\n Managers
group, but not the MGRs
group, then the update\n fails. For more information about permissions, see Access management .
\n "
+ "smithy.api#documentation": "Updates the name and/or the path of the specified IAM group.
\n \n You should understand the implications of changing a group's path or name. For\n more information, see Renaming users and\n groups in the IAM User Guide .
\n \n \n The person making the request (the principal), must have permission to change the\n role group with the old name and the new name. For example, to change the group\n named Managers
to MGRs
, the principal must have a policy\n that allows them to update both groups. If the principal has permission to update\n the Managers
group, but not the MGRs
group, then the\n update fails. For more information about permissions, see Access management .\n
\n "
}
},
"com.amazonaws.iam#UpdateGroupRequest": {
@@ -11209,20 +11214,20 @@
"GroupName": {
"target": "com.amazonaws.iam#groupNameType",
"traits": {
- "smithy.api#documentation": "Name of the IAM group to update. If you're changing the name of the group, this is the\n original name.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "Name of the IAM group to update. If you're changing the name of the group, this is\n the original name.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"NewPath": {
"target": "com.amazonaws.iam#pathType",
"traits": {
- "smithy.api#documentation": "New path for the IAM group. Only include this if changing the group's path.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": "New path for the IAM group. Only include this if changing the group's path.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"NewGroupName": {
"target": "com.amazonaws.iam#groupNameType",
"traits": {
- "smithy.api#documentation": "New name for the IAM group. Only include this if changing the group's name.
\n IAM user, group, role, and policy names must be unique within the account. Names are\n not distinguished by case. For example, you cannot create resources named both \"MyResource\"\n and \"myresource\".
"
+ "smithy.api#documentation": "New name for the IAM group. Only include this if changing the group's name.
\n IAM user, group, role, and policy names must be unique within the account. Names are\n not distinguished by case. For example, you cannot create resources named both\n \"MyResource\" and \"myresource\".
"
}
}
}
@@ -11250,7 +11255,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Changes the password for the specified IAM user. You can use the AWS CLI, the AWS\n API, or the Users page in the IAM console to change the\n password for any IAM user. Use ChangePassword to change your own\n password in the My Security Credentials page in the\n AWS Management Console.
\n For more information about modifying passwords, see Managing passwords in the\n IAM User Guide .
"
+ "smithy.api#documentation": "Changes the password for the specified IAM user. You can use the AWS CLI, the\n AWS API, or the Users page in the IAM console to\n change the password for any IAM user. Use ChangePassword to change\n your own password in the My Security Credentials page\n in the AWS Management Console.
\n For more information about modifying passwords, see Managing passwords in the\n IAM User Guide .
"
}
},
"com.amazonaws.iam#UpdateLoginProfileRequest": {
@@ -11259,20 +11264,20 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name of the user whose password you want to update.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the user whose password you want to update.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"Password": {
"target": "com.amazonaws.iam#passwordType",
"traits": {
- "smithy.api#documentation": "The new password for the specified IAM user.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n \n However,\n the format can be further restricted by the account administrator by setting a password\n policy on the AWS account. For more information, see UpdateAccountPasswordPolicy .
"
+ "smithy.api#documentation": "The new password for the specified IAM user.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n \n However, the format can be further restricted by the account administrator by setting\n a password policy on the AWS account. For more information, see UpdateAccountPasswordPolicy .
"
}
},
"PasswordResetRequired": {
"target": "com.amazonaws.iam#booleanObjectType",
"traits": {
- "smithy.api#documentation": "Allows this new password to be used only once by requiring the specified IAM user to\n set a new password on next sign-in.
"
+ "smithy.api#documentation": "Allows this new password to be used only once by requiring the specified IAM user to\n set a new password on next sign-in.
"
}
}
}
@@ -11294,7 +11299,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Replaces the existing list of server certificate thumbprints associated with an OpenID\n Connect (OIDC) provider resource object with a new list of thumbprints.
\n The list that you pass with this operation completely replaces the existing list of\n thumbprints. (The lists are not merged.)
\n Typically, you need to update a thumbprint only when the identity provider's certificate\n changes, which occurs rarely. However, if the provider's certificate\n does change, any attempt to assume an IAM role that specifies the\n OIDC provider as a principal fails until the certificate thumbprint is updated.
\n \n Trust for the OIDC provider is derived from the provider's certificate and is\n validated by the thumbprint. Therefore, it is best to limit access to the\n UpdateOpenIDConnectProviderThumbprint
operation to highly privileged\n users.
\n "
+ "smithy.api#documentation": "Replaces the existing list of server certificate thumbprints associated with an OpenID\n Connect (OIDC) provider resource object with a new list of thumbprints.
\n The list that you pass with this operation completely replaces the existing list of\n thumbprints. (The lists are not merged.)
\n Typically, you need to update a thumbprint only when the identity provider's\n certificate changes, which occurs rarely. However, if the provider's certificate\n does change, any attempt to assume an IAM role that specifies\n the OIDC provider as a principal fails until the certificate thumbprint is\n updated.
\n \n Trust for the OIDC provider is derived from the provider's certificate and is\n validated by the thumbprint. Therefore, it is best to limit access to the\n UpdateOpenIDConnectProviderThumbprint
operation to highly\n privileged users.
\n "
}
},
"com.amazonaws.iam#UpdateOpenIDConnectProviderThumbprintRequest": {
@@ -11303,14 +11308,14 @@
"OpenIDConnectProviderArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM OIDC provider resource object for which you\n want to update the thumbprint. You can get a list of OIDC provider ARNs by using the ListOpenIDConnectProviders operation.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the IAM OIDC provider resource object for which\n you want to update the thumbprint. You can get a list of OIDC provider ARNs by using the\n ListOpenIDConnectProviders operation.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
},
"ThumbprintList": {
"target": "com.amazonaws.iam#thumbprintListType",
"traits": {
- "smithy.api#documentation": "A list of certificate thumbprints that are associated with the specified IAM OpenID\n Connect provider. For more information, see CreateOpenIDConnectProvider .\n
",
+ "smithy.api#documentation": "A list of certificate thumbprints that are associated with the specified IAM OpenID\n Connect provider. For more information, see CreateOpenIDConnectProvider .
",
"smithy.api#required": {}
}
}
@@ -11359,7 +11364,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Use UpdateRole instead.
\n Modifies only the description of a role. This operation performs the same function as\n the Description
parameter in the UpdateRole
operation.
"
+ "smithy.api#documentation": "Use UpdateRole instead.
\n Modifies only the description of a role. This operation performs the same function as\n the Description
parameter in the UpdateRole
operation.
"
}
},
"com.amazonaws.iam#UpdateRoleDescriptionRequest": {
@@ -11411,7 +11416,7 @@
"MaxSessionDuration": {
"target": "com.amazonaws.iam#roleMaxSessionDurationType",
"traits": {
- "smithy.api#documentation": "The maximum session duration (in seconds) that you want to set for the specified role.\n If you do not specify a value for this setting, the default maximum of one hour is applied.\n This setting can have a value from 1 hour to 12 hours.
\n Anyone who assumes the role from the AWS CLI or API can use the\n DurationSeconds
API parameter or the duration-seconds
CLI\n parameter to request a longer session. The MaxSessionDuration
setting\n determines the maximum duration that can be requested using the\n DurationSeconds
parameter. If users don't specify a value for the\n DurationSeconds
parameter, their security credentials are valid for one\n hour by default. This applies when you use the AssumeRole*
API operations or\n the assume-role*
CLI operations but does not apply when you use those\n operations to create a console URL. For more information, see Using IAM roles in the\n IAM User Guide .
"
+ "smithy.api#documentation": "The maximum session duration (in seconds) that you want to set for the specified role.\n If you do not specify a value for this setting, the default maximum of one hour is\n applied. This setting can have a value from 1 hour to 12 hours.
\n Anyone who assumes the role from the AWS CLI or API can use the\n DurationSeconds
API parameter or the duration-seconds
CLI\n parameter to request a longer session. The MaxSessionDuration
setting\n determines the maximum duration that can be requested using the\n DurationSeconds
parameter. If users don't specify a value for the\n DurationSeconds
parameter, their security credentials are valid for one\n hour by default. This applies when you use the AssumeRole*
API operations\n or the assume-role*
CLI operations but does not apply when you use those\n operations to create a console URL. For more information, see Using IAM\n roles in the IAM User Guide .
"
}
}
}
@@ -11443,7 +11448,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Updates the metadata document for an existing SAML provider resource object.
\n \n This operation requires Signature Version 4 .
\n "
+ "smithy.api#documentation": "Updates the metadata document for an existing SAML provider resource object.
\n \n This operation requires Signature Version 4 .
\n "
}
},
"com.amazonaws.iam#UpdateSAMLProviderRequest": {
@@ -11452,14 +11457,14 @@
"SAMLMetadataDocument": {
"target": "com.amazonaws.iam#SAMLMetadataDocumentType",
"traits": {
- "smithy.api#documentation": "An XML document generated by an identity provider (IdP) that supports SAML 2.0. The\n document includes the issuer's name, expiration information, and keys that can be used to\n validate the SAML authentication response (assertions) that are received from the IdP. You\n must generate the metadata document using the identity management software that is used as\n your organization's IdP.
",
+ "smithy.api#documentation": "An XML document generated by an identity provider (IdP) that supports SAML 2.0. The\n document includes the issuer's name, expiration information, and keys that can be used\n to validate the SAML authentication response (assertions) that are received from the\n IdP. You must generate the metadata document using the identity management software that\n is used as your organization's IdP.
",
"smithy.api#required": {}
}
},
"SAMLProviderArn": {
"target": "com.amazonaws.iam#arnType",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the SAML provider to update.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the SAML provider to update.
\n For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference .
",
"smithy.api#required": {}
}
}
@@ -11490,7 +11495,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Sets the status of an IAM user's SSH public key to active or inactive. SSH public keys\n that are inactive cannot be used for authentication. This operation can be used to disable\n a user's SSH public key as part of a key rotation work flow.
\n The SSH public key affected by this operation is used only for authenticating the\n associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to\n authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH\n connections in the AWS CodeCommit User Guide .
"
+ "smithy.api#documentation": "Sets the status of an IAM user's SSH public key to active or inactive. SSH public\n keys that are inactive cannot be used for authentication. This operation can be used to\n disable a user's SSH public key as part of a key rotation work flow.
\n The SSH public key affected by this operation is used only for authenticating the\n associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys\n to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for\n SSH connections in the AWS CodeCommit User Guide .
"
}
},
"com.amazonaws.iam#UpdateSSHPublicKeyRequest": {
@@ -11499,21 +11504,21 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM user associated with the SSH public key.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the IAM user associated with the SSH public key.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"SSHPublicKeyId": {
"target": "com.amazonaws.iam#publicKeyIdType",
"traits": {
- "smithy.api#documentation": "The unique identifier for the SSH public key.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
+ "smithy.api#documentation": "The unique identifier for the SSH public key.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
"smithy.api#required": {}
}
},
"Status": {
"target": "com.amazonaws.iam#statusType",
"traits": {
- "smithy.api#documentation": "The status to assign to the SSH public key. Active
means that the key can\n be used for authentication with an AWS CodeCommit repository. Inactive
means that the\n key cannot be used.
",
+ "smithy.api#documentation": "The status to assign to the SSH public key. Active
means that the key can\n be used for authentication with an AWS CodeCommit repository. Inactive
means that\n the key cannot be used.
",
"smithy.api#required": {}
}
}
@@ -11539,7 +11544,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Updates the name and/or the path of the specified server certificate stored in\n IAM.
\n For more information about working with server certificates, see Working with\n server certificates in the IAM User Guide . This topic\n also includes a list of AWS services that can use the server certificates that you manage\n with IAM.
\n \n You should understand the implications of changing a server certificate's path or\n name. For more information, see Renaming a server certificate in the\n IAM User Guide .
\n \n \n The person making the request (the principal), must have permission to change the\n server certificate with the old name and the new name. For example, to change the\n certificate named ProductionCert
to ProdCert
, the principal\n must have a policy that allows them to update both certificates. If the principal has\n permission to update the ProductionCert
group, but not the\n ProdCert
certificate, then the update fails. For more information about\n permissions, see Access\n management in the IAM User Guide .
\n "
+ "smithy.api#documentation": "Updates the name and/or the path of the specified server certificate stored in\n IAM.
\n For more information about working with server certificates, see Working\n with server certificates in the IAM User Guide . This\n topic also includes a list of AWS services that can use the server certificates that\n you manage with IAM.
\n \n You should understand the implications of changing a server certificate's path or\n name. For more information, see Renaming a server certificate in the\n IAM User Guide .
\n \n \n The person making the request (the principal), must have permission to change the\n server certificate with the old name and the new name. For example, to change the\n certificate named ProductionCert
to ProdCert
, the\n principal must have a policy that allows them to update both certificates. If the\n principal has permission to update the ProductionCert
group, but not\n the ProdCert
certificate, then the update fails. For more information\n about permissions, see Access management in the IAM User Guide .
\n "
}
},
"com.amazonaws.iam#UpdateServerCertificateRequest": {
@@ -11548,20 +11553,20 @@
"ServerCertificateName": {
"target": "com.amazonaws.iam#serverCertificateNameType",
"traits": {
- "smithy.api#documentation": "The name of the server certificate that you want to update.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the server certificate that you want to update.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"NewPath": {
"target": "com.amazonaws.iam#pathType",
"traits": {
- "smithy.api#documentation": "The new path for the server certificate. Include this only if you are updating the\n server certificate's path.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": "The new path for the server certificate. Include this only if you are updating the\n server certificate's path.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"NewServerCertificateName": {
"target": "com.amazonaws.iam#serverCertificateNameType",
"traits": {
- "smithy.api#documentation": "The new name for the server certificate. Include this only if you are updating the\n server certificate's name. The name of the certificate cannot contain any spaces.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The new name for the server certificate. Include this only if you are updating the\n server certificate's name. The name of the certificate cannot contain any spaces.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
}
}
@@ -11577,7 +11582,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Sets the status of a service-specific credential to Active
or\n Inactive
. Service-specific credentials that are inactive cannot be used for\n authentication to the service. This operation can be used to disable a user's\n service-specific credential as part of a credential rotation work flow.
"
+ "smithy.api#documentation": "Sets the status of a service-specific credential to Active
or\n Inactive
. Service-specific credentials that are inactive cannot be used\n for authentication to the service. This operation can be used to disable a user's\n service-specific credential as part of a credential rotation work flow.
"
}
},
"com.amazonaws.iam#UpdateServiceSpecificCredentialRequest": {
@@ -11586,13 +11591,13 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM user associated with the service-specific credential. If you do\n not specify this value, then the operation assumes the user whose credentials are used to\n call the operation.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The name of the IAM user associated with the service-specific credential. If you do\n not specify this value, then the operation assumes the user whose credentials are used\n to call the operation.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
},
"ServiceSpecificCredentialId": {
"target": "com.amazonaws.iam#serviceSpecificCredentialId",
"traits": {
- "smithy.api#documentation": "The unique identifier of the service-specific credential.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
+ "smithy.api#documentation": "The unique identifier of the service-specific credential.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
"smithy.api#required": {}
}
},
@@ -11622,7 +11627,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Changes the status of the specified user signing certificate from active to disabled, or\n vice versa. This operation can be used to disable an IAM user's signing certificate as\n part of a certificate rotation work flow.
\n If the UserName
field is not specified, the user name is determined\n implicitly based on the AWS access key ID used to sign the request. This operation works\n for access keys under the AWS account. Consequently, you can use this operation to manage\n AWS account root user credentials even if the AWS account has no associated\n users.
"
+ "smithy.api#documentation": "Changes the status of the specified user signing certificate from active to disabled,\n or vice versa. This operation can be used to disable an IAM user's signing certificate\n as part of a certificate rotation work flow.
\n If the UserName
field is not specified, the user name is determined\n implicitly based on the AWS access key ID used to sign the request. This operation\n works for access keys under the AWS account. Consequently, you can use this operation\n to manage AWS account root user credentials even if the AWS account has no\n associated users.
"
}
},
"com.amazonaws.iam#UpdateSigningCertificateRequest": {
@@ -11631,20 +11636,20 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM user the signing certificate belongs to.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The name of the IAM user the signing certificate belongs to.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
},
"CertificateId": {
"target": "com.amazonaws.iam#certificateIdType",
"traits": {
- "smithy.api#documentation": "The ID of the signing certificate you want to update.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
+ "smithy.api#documentation": "The ID of the signing certificate you want to update.
\n This parameter allows (through its regex pattern ) a string of characters that can \n consist of any upper or lowercased letter or digit.
",
"smithy.api#required": {}
}
},
"Status": {
"target": "com.amazonaws.iam#statusType",
"traits": {
- "smithy.api#documentation": " The status you want to assign to the certificate. Active
means that the\n certificate can be used for programmatic calls to AWS Inactive
means that the\n certificate cannot be used.
",
+ "smithy.api#documentation": " The status you want to assign to the certificate. Active
means that the\n certificate can be used for programmatic calls to AWS Inactive
means that\n the certificate cannot be used.
",
"smithy.api#required": {}
}
}
@@ -11676,7 +11681,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Updates the name and/or the path of the specified IAM user.
\n \n You should understand the implications of changing an IAM user's path or name. For\n more information, see Renaming an IAM\n user and Renaming an IAM group in\n the IAM User Guide .
\n \n \n To change a user name, the requester must have appropriate permissions on both the\n source object and the target object. For example, to change Bob to Robert, the entity\n making the request must have permission on Bob and Robert, or must have permission on\n all (*). For more information about permissions, see Permissions and policies .\n
\n "
+ "smithy.api#documentation": "Updates the name and/or the path of the specified IAM user.
\n \n You should understand the implications of changing an IAM user's path or name.\n For more information, see Renaming an IAM\n user and Renaming an IAM\n group in the IAM User Guide .
\n \n \n To change a user name, the requester must have appropriate permissions on both\n the source object and the target object. For example, to change Bob to Robert, the\n entity making the request must have permission on Bob and Robert, or must have\n permission on all (*). For more information about permissions, see Permissions and policies .
\n "
}
},
"com.amazonaws.iam#UpdateUserRequest": {
@@ -11685,20 +11690,20 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "Name of the user to update. If you're changing the name of the user, this is the\n original user name.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "Name of the user to update. If you're changing the name of the user, this is the\n original user name.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"NewPath": {
"target": "com.amazonaws.iam#pathType",
"traits": {
- "smithy.api#documentation": "New path for the IAM user. Include this parameter only if you're changing the user's\n path.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
+ "smithy.api#documentation": "New path for the IAM user. Include this parameter only if you're changing the user's\n path.
\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
"
}
},
"NewUserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "New name for the user. Include this parameter only if you're changing the user's\n name.
\n IAM user, group, role, and policy names must be unique within the account. Names are\n not distinguished by case. For example, you cannot create resources named both \"MyResource\"\n and \"myresource\".
"
+ "smithy.api#documentation": "New name for the user. Include this parameter only if you're changing the user's\n name.
\n IAM user, group, role, and policy names must be unique within the account. Names are\n not distinguished by case. For example, you cannot create resources named both\n \"MyResource\" and \"myresource\".
"
}
}
}
@@ -11729,7 +11734,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Uploads an SSH public key and associates it with the specified IAM user.
\n The SSH public key uploaded by this operation can be used only for authenticating the\n associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to\n authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for SSH\n connections in the AWS CodeCommit User Guide .
"
+ "smithy.api#documentation": "Uploads an SSH public key and associates it with the specified IAM user.
\n The SSH public key uploaded by this operation can be used only for authenticating the\n associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys\n to authenticate to an AWS CodeCommit repository, see Set up AWS CodeCommit for\n SSH connections in the AWS CodeCommit User Guide .
"
}
},
"com.amazonaws.iam#UploadSSHPublicKeyRequest": {
@@ -11738,14 +11743,14 @@
"UserName": {
"target": "com.amazonaws.iam#userNameType",
"traits": {
- "smithy.api#documentation": "The name of the IAM user to associate the SSH public key with.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name of the IAM user to associate the SSH public key with.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"SSHPublicKeyBody": {
"target": "com.amazonaws.iam#publicKeyMaterialType",
"traits": {
- "smithy.api#documentation": "The SSH public key. The public key must be encoded in ssh-rsa format or PEM format. The\n minimum bit-length of the public key is 2048 bits. For example, you can generate a 2048-bit\n key, and the resulting PEM file is 1679 bytes long.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
+ "smithy.api#documentation": "The SSH public key. The public key must be encoded in ssh-rsa format or PEM format.\n The minimum bit-length of the public key is 2048 bits. For example, you can generate a\n 2048-bit key, and the resulting PEM file is 1679 bytes long.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
"smithy.api#required": {}
}
}
@@ -11797,7 +11802,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Uploads a server certificate entity for the AWS account. The server certificate entity\n includes a public key certificate, a private key, and an optional certificate chain, which\n should all be PEM-encoded.
\n We recommend that you use AWS Certificate\n Manager to provision, manage, and deploy your server certificates. With ACM you\n can request a certificate, deploy it to AWS resources, and let ACM handle certificate\n renewals for you. Certificates provided by ACM are free. For more information about using\n ACM, see the AWS Certificate\n Manager User Guide .
\n For more information about working with server certificates, see Working with\n server certificates in the IAM User Guide . This topic\n includes a list of AWS services that can use the server certificates that you manage with\n IAM.
\n For information about the number of server certificates you can upload, see IAM and STS\n quotas in the IAM User Guide .
\n \n Because the body of the public key certificate, private key, and the certificate\n chain can be large, you should use POST rather than GET when calling\n UploadServerCertificate
. For information about setting up signatures and\n authorization through the API, see Signing AWS API requests \n in the AWS General Reference . For general information about using the\n Query API with IAM, see Calling the API by making HTTP query\n requests in the IAM User Guide .
\n "
+ "smithy.api#documentation": "Uploads a server certificate entity for the AWS account. The server certificate\n entity includes a public key certificate, a private key, and an optional certificate\n chain, which should all be PEM-encoded.
\n We recommend that you use AWS Certificate\n Manager to provision, manage, and deploy your server certificates. With ACM\n you can request a certificate, deploy it to AWS resources, and let ACM handle\n certificate renewals for you. Certificates provided by ACM are free. For more\n information about using ACM, see the AWS Certificate Manager User Guide .
\n For more information about working with server certificates, see Working\n with server certificates in the IAM User Guide . This\n topic includes a list of AWS services that can use the server certificates that you\n manage with IAM.
\n For information about the number of server certificates you can upload, see IAM and STS\n quotas in the IAM User Guide .
\n \n Because the body of the public key certificate, private key, and the certificate\n chain can be large, you should use POST rather than GET when calling\n UploadServerCertificate
. For information about setting up\n signatures and authorization through the API, see Signing AWS API\n requests in the AWS General Reference . For general\n information about using the Query API with IAM, see Calling the API by making HTTP query\n requests in the IAM User Guide .
\n "
}
},
"com.amazonaws.iam#UploadServerCertificateRequest": {
@@ -11806,34 +11811,34 @@
"Path": {
"target": "com.amazonaws.iam#pathType",
"traits": {
- "smithy.api#documentation": "The path for the server certificate. For more information about paths, see IAM\n identifiers in the IAM User Guide .
\n This parameter is optional. If it is not included, it defaults to a slash (/).\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
\n \n If you are uploading a server certificate specifically for use with Amazon\n CloudFront distributions, you must specify a path using the path
parameter.\n The path must begin with /cloudfront
and must include a trailing slash (for\n example, /cloudfront/test/
).
\n "
+ "smithy.api#documentation": "The path for the server certificate. For more information about paths, see IAM\n identifiers in the IAM User Guide .
\n This parameter is optional. If it is not included, it defaults to a slash (/).\n This parameter allows (through its regex pattern ) a string of characters consisting \n of either a forward slash (/) by itself or a string that must begin and end with forward slashes.\n In addition, it can contain any ASCII character from the ! (\\u0021
) through the DEL character (\\u007F
), including \n most punctuation characters, digits, and upper and lowercased letters.
\n \n If you are uploading a server certificate specifically for use with Amazon\n CloudFront distributions, you must specify a path using the path
\n parameter. The path must begin with /cloudfront
and must include a\n trailing slash (for example, /cloudfront/test/
).
\n "
}
},
"ServerCertificateName": {
"target": "com.amazonaws.iam#serverCertificateNameType",
"traits": {
- "smithy.api#documentation": "The name for the server certificate. Do not include the path in this value. The name of\n the certificate cannot contain any spaces.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
+ "smithy.api#documentation": "The name for the server certificate. Do not include the path in this value. The name\n of the certificate cannot contain any spaces.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
",
"smithy.api#required": {}
}
},
"CertificateBody": {
"target": "com.amazonaws.iam#certificateBodyType",
"traits": {
- "smithy.api#documentation": "The contents of the public key certificate in PEM-encoded format.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
+ "smithy.api#documentation": "The contents of the public key certificate in PEM-encoded format.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
"smithy.api#required": {}
}
},
"PrivateKey": {
"target": "com.amazonaws.iam#privateKeyType",
"traits": {
- "smithy.api#documentation": "The contents of the private key in PEM-encoded format.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
+ "smithy.api#documentation": "The contents of the private key in PEM-encoded format.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
"smithy.api#required": {}
}
},
"CertificateChain": {
"target": "com.amazonaws.iam#certificateChainType",
"traits": {
- "smithy.api#documentation": "The contents of the certificate chain. This is typically a concatenation of the\n PEM-encoded public key certificates of the chain.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n "
+ "smithy.api#documentation": "The contents of the certificate chain. This is typically a concatenation of the\n PEM-encoded public key certificates of the chain.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n "
}
},
"Tags": {
@@ -11850,7 +11855,7 @@
"ServerCertificateMetadata": {
"target": "com.amazonaws.iam#ServerCertificateMetadata",
"traits": {
- "smithy.api#documentation": "The meta information of the uploaded server certificate without its certificate body,\n certificate chain, and private key.
"
+ "smithy.api#documentation": "The meta information of the uploaded server certificate without its certificate body,\n certificate chain, and private key.
"
}
},
"Tags": {
@@ -11896,7 +11901,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Uploads an X.509 signing certificate and associates it with the specified IAM user.\n Some AWS services require you to use certificates to validate requests that are signed\n with a corresponding private key. When you upload the certificate, its default status is\n Active
.
\n For information about when you would use an X.509 signing certificate, see Managing\n server certificates in IAM in the\n IAM User Guide .
\n If the UserName
is not specified, the IAM user name is determined\n implicitly based on the AWS access key ID used to sign the request. This operation works\n for access keys under the AWS account. Consequently, you can use this operation to manage\n AWS account root user credentials even if the AWS account has no associated\n users.
\n \n Because the body of an X.509 certificate can be large, you should use POST rather\n than GET when calling UploadSigningCertificate
. For information about\n setting up signatures and authorization through the API, see Signing AWS\n API requests in the AWS General Reference . For general\n information about using the Query API with IAM, see Making query requests in the\n IAM User Guide .
\n "
+ "smithy.api#documentation": "Uploads an X.509 signing certificate and associates it with the specified IAM user.\n Some AWS services require you to use certificates to validate requests that are signed\n with a corresponding private key. When you upload the certificate, its default status is\n Active
.
\n For information about when you would use an X.509 signing certificate, see Managing\n server certificates in IAM in the\n IAM User Guide .
\n If the UserName
is not specified, the IAM user name is determined\n implicitly based on the AWS access key ID used to sign the request. This operation\n works for access keys under the AWS account. Consequently, you can use this operation\n to manage AWS account root user credentials even if the AWS account has no\n associated users.
\n \n Because the body of an X.509 certificate can be large, you should use POST rather\n than GET when calling UploadSigningCertificate
. For information about\n setting up signatures and authorization through the API, see Signing\n AWS API requests in the AWS General Reference . For\n general information about using the Query API with IAM, see Making query\n requests in the IAM User Guide .
\n "
}
},
"com.amazonaws.iam#UploadSigningCertificateRequest": {
@@ -11905,13 +11910,13 @@
"UserName": {
"target": "com.amazonaws.iam#existingUserNameType",
"traits": {
- "smithy.api#documentation": "The name of the user the signing certificate is for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
+ "smithy.api#documentation": "The name of the user the signing certificate is for.
\n This parameter allows (through its regex pattern ) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-
"
}
},
"CertificateBody": {
"target": "com.amazonaws.iam#certificateBodyType",
"traits": {
- "smithy.api#documentation": "The contents of the signing certificate.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
+ "smithy.api#documentation": "The contents of the signing certificate.
\n The regex pattern \n used to validate this parameter is a string of characters consisting of the following:
\n \n \n Any printable ASCII \n character ranging from the space character (\\u0020
) through the end of the ASCII character range
\n \n \n The printable characters in the Basic Latin and Latin-1 Supplement character set \n (through \\u00FF
)
\n \n \n The special characters tab (\\u0009
), line feed (\\u000A
), and \n carriage return (\\u000D
)
\n \n ",
"smithy.api#required": {}
}
}
diff --git a/codegen/sdk-codegen/aws-models/iot.2015-05-28.json b/codegen/sdk-codegen/aws-models/iot.2015-05-28.json
index f26df58da37..2b3a49ab7ba 100644
--- a/codegen/sdk-codegen/aws-models/iot.2015-05-28.json
+++ b/codegen/sdk-codegen/aws-models/iot.2015-05-28.json
@@ -19459,6 +19459,13 @@
"smithy.api#documentation": "The name of the thing type used to search for things.
",
"smithy.api#httpQuery": "thingTypeName"
}
+ },
+ "usePrefixAttributeValue": {
+ "target": "com.amazonaws.iot#usePrefixAttributeValue",
+ "traits": {
+ "smithy.api#documentation": "When true
, the action returns the thing resources with attribute values\n that start with the attributeValue
provided.
\n When false
, or not present, the action returns only the thing\n\t\t\tresources with attribute values that match the entire attributeValue
\n\t\t\tprovided.
",
+ "smithy.api#httpQuery": "usePrefixAttributeValue"
+ }
}
},
"traits": {
@@ -28427,6 +28434,9 @@
},
"com.amazonaws.iot#stringValue": {
"type": "string"
+ },
+ "com.amazonaws.iot#usePrefixAttributeValue": {
+ "type": "boolean"
}
}
}
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 677c23046c0..fae1b41184b 100644
--- a/codegen/sdk-codegen/aws-models/iotwireless.2020-11-22.json
+++ b/codegen/sdk-codegen/aws-models/iotwireless.2020-11-22.json
@@ -192,7 +192,7 @@
"Tags": {
"target": "com.amazonaws.iotwireless#TagList",
"traits": {
- "smithy.api#documentation": "The tags attached to the specified resource. Tags are metadata that can be used to manage a resource
"
+ "smithy.api#documentation": "The tags to attach to the specified resource. Tags are metadata that you can use to manage a resource.
"
}
}
}
@@ -407,6 +407,48 @@
"com.amazonaws.iotwireless#AutoCreateTasks": {
"type": "boolean"
},
+ "com.amazonaws.iotwireless#BatteryLevel": {
+ "type": "string",
+ "traits": {
+ "smithy.api#documentation": "Sidewalk device battery level.
",
+ "smithy.api#enum": [
+ {
+ "value": "normal",
+ "name": "NORMAL"
+ },
+ {
+ "value": "low",
+ "name": "LOW"
+ },
+ {
+ "value": "critical",
+ "name": "CRITICAL"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.iotwireless#CertificateList": {
+ "type": "structure",
+ "members": {
+ "SigningAlg": {
+ "target": "com.amazonaws.iotwireless#SigningAlg",
+ "traits": {
+ "smithy.api#documentation": "The certificate chain algorithm provided by sidewalk.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Value": {
+ "target": "com.amazonaws.iotwireless#CertificateValue",
+ "traits": {
+ "smithy.api#documentation": "The value of the chosen sidewalk certificate.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "List of sidewalk certificates.
"
+ }
+ },
"com.amazonaws.iotwireless#CertificatePEM": {
"type": "string",
"traits": {
@@ -417,6 +459,16 @@
"smithy.api#pattern": "[^-A-Za-z0-9+/=]|=[^=]|={3,}${1,4096}"
}
},
+ "com.amazonaws.iotwireless#CertificateValue": {
+ "type": "string",
+ "traits": {
+ "smithy.api#documentation": "Certificate value.
",
+ "smithy.api#length": {
+ "min": 0,
+ "max": 2048
+ }
+ }
+ },
"com.amazonaws.iotwireless#ChannelMask": {
"type": "string",
"traits": {
@@ -475,6 +527,21 @@
"smithy.api#httpError": 409
}
},
+ "com.amazonaws.iotwireless#ConnectionStatus": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "Connected",
+ "name": "CONNECTED"
+ },
+ {
+ "value": "Disconnected",
+ "name": "DISCONNECTED"
+ }
+ ]
+ }
+ },
"com.amazonaws.iotwireless#Crc": {
"type": "long",
"traits": {
@@ -562,7 +629,7 @@
"Tags": {
"target": "com.amazonaws.iotwireless#TagList",
"traits": {
- "smithy.api#documentation": "The tags to attach to the new destination. Tags are metadata that can be used to manage a resource.
"
+ "smithy.api#documentation": "The tags to attach to the new destination. Tags are metadata that you can use to manage a resource.
"
}
},
"ClientRequestToken": {
@@ -643,7 +710,7 @@
"Tags": {
"target": "com.amazonaws.iotwireless#TagList",
"traits": {
- "smithy.api#documentation": "The tags to attach to the new device profile Tags are metadata that can be used to manage a resource.
"
+ "smithy.api#documentation": "The tags to attach to the new device profile. Tags are metadata that you can use to manage a resource.
"
}
},
"ClientRequestToken": {
@@ -724,7 +791,7 @@
"Tags": {
"target": "com.amazonaws.iotwireless#TagList",
"traits": {
- "smithy.api#documentation": "The tags to attach to the new service profile. Tags are metadata that can be used to manage a resource.
"
+ "smithy.api#documentation": "The tags to attach to the new service profile. Tags are metadata that you can use to manage a resource.
"
}
},
"ClientRequestToken": {
@@ -831,6 +898,12 @@
"traits": {
"smithy.api#documentation": "The device configuration information to use to create the wireless device.
"
}
+ },
+ "Tags": {
+ "target": "com.amazonaws.iotwireless#TagList",
+ "traits": {
+ "smithy.api#documentation": "The tags to attach to the new wireless device. Tags are metadata that you can use to manage a resource.
"
+ }
}
}
},
@@ -910,7 +983,7 @@
"Tags": {
"target": "com.amazonaws.iotwireless#TagList",
"traits": {
- "smithy.api#documentation": "The tags to attach to the new wireless gateway. Tags are metadata that can be used to manage a resource.
"
+ "smithy.api#documentation": "The tags to attach to the new wireless gateway. Tags are metadata that you can use to manage a resource.
"
}
},
"ClientRequestToken": {
@@ -1045,7 +1118,7 @@
"Tags": {
"target": "com.amazonaws.iotwireless#TagList",
"traits": {
- "smithy.api#documentation": "The tags attached to the specified resource. Tags are metadata that can be used to manage a resource
"
+ "smithy.api#documentation": "The tags to attach to the specified resource. Tags are metadata that you can use to manage a resource.
"
}
}
}
@@ -1564,6 +1637,15 @@
}
}
},
+ "com.amazonaws.iotwireless#DeviceCertificateList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.iotwireless#CertificateList"
+ },
+ "traits": {
+ "smithy.api#documentation": "List of device certificate chain.
"
+ }
+ },
"com.amazonaws.iotwireless#DeviceProfile": {
"type": "structure",
"members": {
@@ -1617,6 +1699,30 @@
}
}
},
+ "com.amazonaws.iotwireless#DeviceState": {
+ "type": "string",
+ "traits": {
+ "smithy.api#documentation": "Device state defines the device status of sidewalk device.
",
+ "smithy.api#enum": [
+ {
+ "value": "Provisioned",
+ "name": "PROVISIONED"
+ },
+ {
+ "value": "RegisteredNotSeen",
+ "name": "REGISTEREDNOTSEEN"
+ },
+ {
+ "value": "RegisteredReachable",
+ "name": "REGISTEREDREACHABLE"
+ },
+ {
+ "value": "RegisteredUnreachable",
+ "name": "REGISTEREDUNREACHABLE"
+ }
+ ]
+ }
+ },
"com.amazonaws.iotwireless#DisassociateAwsAccountFromPartnerAccount": {
"type": "operation",
"input": {
@@ -1894,6 +2000,34 @@
}
}
},
+ "com.amazonaws.iotwireless#Event": {
+ "type": "string",
+ "traits": {
+ "smithy.api#documentation": "Sidewalk device status notification.
",
+ "smithy.api#enum": [
+ {
+ "value": "discovered",
+ "name": "DISCOVERED"
+ },
+ {
+ "value": "lost",
+ "name": "LOST"
+ },
+ {
+ "value": "ack",
+ "name": "ACK"
+ },
+ {
+ "value": "nack",
+ "name": "NACK"
+ },
+ {
+ "value": "passthrough",
+ "name": "PASSTHROUGH"
+ }
+ ]
+ }
+ },
"com.amazonaws.iotwireless#Expression": {
"type": "string",
"traits": {
@@ -2449,6 +2583,12 @@
"traits": {
"smithy.api#documentation": "Information about the wireless device.
"
}
+ },
+ "Sidewalk": {
+ "target": "com.amazonaws.iotwireless#SidewalkDevice",
+ "traits": {
+ "smithy.api#documentation": "Sidewalk device object.
"
+ }
}
}
},
@@ -2519,6 +2659,12 @@
"traits": {
"smithy.api#documentation": "Information about the wireless device's operations.
"
}
+ },
+ "Sidewalk": {
+ "target": "com.amazonaws.iotwireless#SidewalkDeviceMetadata",
+ "traits": {
+ "smithy.api#documentation": "MetaData for Sidewalk device.
"
+ }
}
}
},
@@ -2807,6 +2953,12 @@
"traits": {
"smithy.api#documentation": "The date and time when the most recent uplink was received.
"
}
+ },
+ "ConnectionStatus": {
+ "target": "com.amazonaws.iotwireless#ConnectionStatus",
+ "traits": {
+ "smithy.api#documentation": "The connection status of the wireless gateway.
"
+ }
}
}
},
@@ -3343,7 +3495,7 @@
"ResourceArn": {
"target": "com.amazonaws.iotwireless#AmazonResourceName",
"traits": {
- "smithy.api#documentation": "The ARN of the resource for which to list tags.
",
+ "smithy.api#documentation": "The ARN of the resource for which you want to list tags.
",
"smithy.api#httpQuery": "resourceArn",
"smithy.api#required": {}
}
@@ -3356,7 +3508,7 @@
"Tags": {
"target": "com.amazonaws.iotwireless#TagList",
"traits": {
- "smithy.api#documentation": "The tags attached to the specified resource. Tags are metadata that can be used to manage a resource
"
+ "smithy.api#documentation": "The tags to attach to the specified resource. Tags are metadata that you can use to manage a resource.
"
}
}
}
@@ -4738,6 +4890,74 @@
"target": "com.amazonaws.iotwireless#SidewalkAccountInfoWithFingerprint"
}
},
+ "com.amazonaws.iotwireless#SidewalkDevice": {
+ "type": "structure",
+ "members": {
+ "SidewalkId": {
+ "target": "com.amazonaws.iotwireless#SidewalkId",
+ "traits": {
+ "smithy.api#documentation": "The sidewalk device identification.
"
+ }
+ },
+ "SidewalkManufacturingSn": {
+ "target": "com.amazonaws.iotwireless#SidewalkManufacturingSn",
+ "traits": {
+ "smithy.api#documentation": "The Sidewalk manufacturing series number.
"
+ }
+ },
+ "DeviceCertificates": {
+ "target": "com.amazonaws.iotwireless#DeviceCertificateList",
+ "traits": {
+ "smithy.api#documentation": "The sidewalk device certificates for Ed25519 and P256r1.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Sidewalk device object.
"
+ }
+ },
+ "com.amazonaws.iotwireless#SidewalkDeviceMetadata": {
+ "type": "structure",
+ "members": {
+ "Rssi": {
+ "target": "com.amazonaws.iotwireless#Integer",
+ "traits": {
+ "smithy.api#documentation": "The RSSI value.
"
+ }
+ },
+ "BatteryLevel": {
+ "target": "com.amazonaws.iotwireless#BatteryLevel",
+ "traits": {
+ "smithy.api#documentation": "Sidewalk device battery level.
"
+ }
+ },
+ "Event": {
+ "target": "com.amazonaws.iotwireless#Event",
+ "traits": {
+ "smithy.api#documentation": "Sidewalk device status notification.
"
+ }
+ },
+ "DeviceState": {
+ "target": "com.amazonaws.iotwireless#DeviceState",
+ "traits": {
+ "smithy.api#documentation": "Device state defines the device status of sidewalk device.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "MetaData for Sidewalk device.
"
+ }
+ },
+ "com.amazonaws.iotwireless#SidewalkId": {
+ "type": "string",
+ "traits": {
+ "smithy.api#documentation": "The sidewalk device identification.
",
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ }
+ }
+ },
"com.amazonaws.iotwireless#SidewalkListDevice": {
"type": "structure",
"members": {
@@ -4746,12 +4966,39 @@
"traits": {
"smithy.api#documentation": "The Sidewalk Amazon ID.
"
}
+ },
+ "SidewalkId": {
+ "target": "com.amazonaws.iotwireless#SidewalkId",
+ "traits": {
+ "smithy.api#documentation": "The sidewalk device identification.
"
+ }
+ },
+ "SidewalkManufacturingSn": {
+ "target": "com.amazonaws.iotwireless#SidewalkManufacturingSn",
+ "traits": {
+ "smithy.api#documentation": "The Sidewalk manufacturing series number.
"
+ }
+ },
+ "DeviceCertificates": {
+ "target": "com.amazonaws.iotwireless#DeviceCertificateList",
+ "traits": {
+ "smithy.api#documentation": "The sidewalk device certificates for Ed25519 and P256r1.
"
+ }
}
},
"traits": {
"smithy.api#documentation": "Sidewalk object used by list functions.
"
}
},
+ "com.amazonaws.iotwireless#SidewalkManufacturingSn": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 64
+ }
+ }
+ },
"com.amazonaws.iotwireless#SidewalkSendDataToDevice": {
"type": "structure",
"members": {
@@ -4780,6 +5027,22 @@
"smithy.api#documentation": "Sidewalk update.
"
}
},
+ "com.amazonaws.iotwireless#SigningAlg": {
+ "type": "string",
+ "traits": {
+ "smithy.api#documentation": "The certificate chain algorithm provided by sidewalk.
",
+ "smithy.api#enum": [
+ {
+ "value": "Ed25519",
+ "name": "Ed25519"
+ },
+ {
+ "value": "P256r1",
+ "name": "P256r1"
+ }
+ ]
+ }
+ },
"com.amazonaws.iotwireless#Station": {
"type": "string",
"traits": {
@@ -4910,7 +5173,7 @@
"Tags": {
"target": "com.amazonaws.iotwireless#TagList",
"traits": {
- "smithy.api#documentation": "Adds to or modifies the tags of the given resource. Tags are metadata that can be used to manage a resource.
",
+ "smithy.api#documentation": "Adds to or modifies the tags of the given resource. Tags are metadata that you can use to manage a resource.
",
"smithy.api#required": {}
}
}
diff --git a/codegen/sdk-codegen/aws-models/location.2020-11-19.json b/codegen/sdk-codegen/aws-models/location.2020-11-19.json
new file mode 100644
index 00000000000..0f9fb72929b
--- /dev/null
+++ b/codegen/sdk-codegen/aws-models/location.2020-11-19.json
@@ -0,0 +1,4408 @@
+{
+ "smithy": "1.0",
+ "shapes": {
+ "com.amazonaws.location#AccessDeniedException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#jsonName": "message",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The request was denied due to insufficient access or permission. Check with an\n administrator to verify your permissions.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 403
+ }
+ },
+ "com.amazonaws.location#Arn": {
+ "type": "string",
+ "traits": {
+ "aws.api#arnReference": {},
+ "smithy.api#length": {
+ "max": 1600
+ },
+ "smithy.api#pattern": "^arn(:[a-z0-9]+([.-][a-z0-9]+)*){2}(:([a-z0-9]+([.-][a-z0-9]+)*)?){2}:([^/].*)?$"
+ }
+ },
+ "com.amazonaws.location#ArnList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#Arn"
+ }
+ },
+ "com.amazonaws.location#AssociateTrackerConsumer": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#AssociateTrackerConsumerRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#AssociateTrackerConsumerResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#ConflictException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Creates an association between a geofence collection and a tracker resource. This\n allows the tracker resource to communicate location data to the linked geofence\n collection.
\n \n Currently not supported — Cross-account configurations, such as creating associations between a tracker resource in one account and a geofence collection in another account.
\n ",
+ "smithy.api#endpoint": {
+ "hostPrefix": "tracking."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/tracking/v0/trackers/{TrackerName}/consumers",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.location#AssociateTrackerConsumerRequest": {
+ "type": "structure",
+ "members": {
+ "TrackerName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the tracker resource to be associated with a geofence collection.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "ConsumerArn": {
+ "target": "com.amazonaws.location#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) for the geofence collection to be associated to tracker\n resource. Used when you need to specify a resource across all AWS.
\n ",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#AssociateTrackerConsumerResponse": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.location#BatchDeleteGeofence": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#BatchDeleteGeofenceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#BatchDeleteGeofenceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Deletes a batch of geofences from a geofence collection.
\n \n This action deletes the resource permanently. You can't undo this action.
\n ",
+ "smithy.api#endpoint": {
+ "hostPrefix": "geofencing."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/geofencing/v0/collections/{CollectionName}/delete-geofences",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.location#BatchDeleteGeofenceError": {
+ "type": "structure",
+ "members": {
+ "GeofenceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The geofence associated with the error message.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Error": {
+ "target": "com.amazonaws.location#BatchItemError",
+ "traits": {
+ "smithy.api#documentation": "Contains details associated to the batch error.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains error details for each geofence that failed to delete from the geofence\n collection.
"
+ }
+ },
+ "com.amazonaws.location#BatchDeleteGeofenceErrorList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#BatchDeleteGeofenceError"
+ }
+ },
+ "com.amazonaws.location#BatchDeleteGeofenceRequest": {
+ "type": "structure",
+ "members": {
+ "CollectionName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The geofence collection storing the geofences to be deleted.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "GeofenceIds": {
+ "target": "com.amazonaws.location#IdList",
+ "traits": {
+ "smithy.api#documentation": "The batch of geofences to be deleted.
",
+ "smithy.api#length": {
+ "min": 1,
+ "max": 10
+ },
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#BatchDeleteGeofenceResponse": {
+ "type": "structure",
+ "members": {
+ "Errors": {
+ "target": "com.amazonaws.location#BatchDeleteGeofenceErrorList",
+ "traits": {
+ "smithy.api#documentation": "Contains error details for each geofence that failed to delete.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#BatchEvaluateGeofences": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#BatchEvaluateGeofencesRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#BatchEvaluateGeofencesResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#auth": [],
+ "smithy.api#documentation": "Evaluates device positions against the geofence geometries from a given geofence\n collection. The evaluation determines if the device has entered or exited a geofenced\n area, which publishes ENTER or EXIT geofence events to Amazon EventBridge.
\n \n The last geofence that a device was observed within, if any, is tracked for 30\n days after the most recent device position update
\n ",
+ "smithy.api#endpoint": {
+ "hostPrefix": "geofencing."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/geofencing/v0/collections/{CollectionName}/positions",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.location#BatchEvaluateGeofencesError": {
+ "type": "structure",
+ "members": {
+ "DeviceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The device associated with the position evaluation error.
",
+ "smithy.api#required": {}
+ }
+ },
+ "SampleTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "Specifies a timestamp for when the error occurred in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
\n
",
+ "smithy.api#required": {}
+ }
+ },
+ "Error": {
+ "target": "com.amazonaws.location#BatchItemError",
+ "traits": {
+ "smithy.api#documentation": "Contains details associated to the batch error.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains error details for each device that failed to evaluate its position against\n the geofences in a given geofence collection.
"
+ }
+ },
+ "com.amazonaws.location#BatchEvaluateGeofencesErrorList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#BatchEvaluateGeofencesError"
+ }
+ },
+ "com.amazonaws.location#BatchEvaluateGeofencesRequest": {
+ "type": "structure",
+ "members": {
+ "CollectionName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The geofence collection used in evaluating the position of devices against its\n geofences.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "DevicePositionUpdates": {
+ "target": "com.amazonaws.location#DevicePositionUpdateList",
+ "traits": {
+ "smithy.api#documentation": "Contains device details for each device to be evaluated against the given geofence\n collection.
",
+ "smithy.api#length": {
+ "min": 1,
+ "max": 10
+ },
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#BatchEvaluateGeofencesResponse": {
+ "type": "structure",
+ "members": {
+ "Errors": {
+ "target": "com.amazonaws.location#BatchEvaluateGeofencesErrorList",
+ "traits": {
+ "smithy.api#documentation": "Contains error details for each device that failed to evaluate its position against\n the given geofence collection.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#BatchGetDevicePosition": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#BatchGetDevicePositionRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#BatchGetDevicePositionResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "A batch request to retrieve all device positions.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "tracking."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/tracking/v0/trackers/{TrackerName}/get-positions",
+ "code": 200
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#BatchGetDevicePositionError": {
+ "type": "structure",
+ "members": {
+ "DeviceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The ID of the device that didn't return a position.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Error": {
+ "target": "com.amazonaws.location#BatchItemError",
+ "traits": {
+ "smithy.api#documentation": "Contains details related to the error code.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains error details for each device that didn't return a position.
"
+ }
+ },
+ "com.amazonaws.location#BatchGetDevicePositionErrorList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#BatchGetDevicePositionError"
+ }
+ },
+ "com.amazonaws.location#BatchGetDevicePositionRequest": {
+ "type": "structure",
+ "members": {
+ "TrackerName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The tracker resource retrieving the device position.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#length": {
+ "min": 1
+ },
+ "smithy.api#required": {}
+ }
+ },
+ "DeviceIds": {
+ "target": "com.amazonaws.location#IdList",
+ "traits": {
+ "smithy.api#documentation": "Devices whose position you want to retrieve.
\n ",
+ "smithy.api#length": {
+ "min": 1,
+ "max": 10
+ },
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#BatchGetDevicePositionResponse": {
+ "type": "structure",
+ "members": {
+ "Errors": {
+ "target": "com.amazonaws.location#BatchGetDevicePositionErrorList",
+ "traits": {
+ "smithy.api#documentation": "Contains error details for each device that failed to send its position to the tracker\n resource.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DevicePositions": {
+ "target": "com.amazonaws.location#DevicePositionList",
+ "traits": {
+ "smithy.api#documentation": "Contains device position details such as the device ID, position, and timestamps for\n when the position was received and sampled.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#BatchItemError": {
+ "type": "structure",
+ "members": {
+ "Code": {
+ "target": "com.amazonaws.location#BatchItemErrorCode",
+ "traits": {
+ "smithy.api#documentation": "The error code associated with the batch request error.
"
+ }
+ },
+ "Message": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "A message with the reason for the batch request error.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains the batch request error details associated with the request.
"
+ }
+ },
+ "com.amazonaws.location#BatchItemErrorCode": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "AccessDeniedError",
+ "documentation": "Access to the resource was denied."
+ },
+ {
+ "value": "ConflictError",
+ "documentation": "The target resource already exists."
+ },
+ {
+ "value": "InternalServerError",
+ "documentation": "Internal server error."
+ },
+ {
+ "value": "ResourceNotFoundError",
+ "documentation": "The target resource does not exist."
+ },
+ {
+ "value": "ThrottlingError",
+ "documentation": "Too many requests."
+ },
+ {
+ "value": "ValidationError",
+ "documentation": "Input fails to satisfy the constraints specified by the service."
+ }
+ ]
+ }
+ },
+ "com.amazonaws.location#BatchPutGeofence": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#BatchPutGeofenceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#BatchPutGeofenceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "A batch request for storing geofence geometries into a given geofence\n collection.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "geofencing."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/geofencing/v0/collections/{CollectionName}/put-geofences",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.location#BatchPutGeofenceError": {
+ "type": "structure",
+ "members": {
+ "GeofenceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The geofence associated with the error message.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Error": {
+ "target": "com.amazonaws.location#BatchItemError",
+ "traits": {
+ "smithy.api#documentation": "Contains details associated to the batch error.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains error details for each geofence that failed to be stored in a given geofence\n collection.
"
+ }
+ },
+ "com.amazonaws.location#BatchPutGeofenceErrorList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#BatchPutGeofenceError"
+ }
+ },
+ "com.amazonaws.location#BatchPutGeofenceRequest": {
+ "type": "structure",
+ "members": {
+ "CollectionName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The geofence collection storing the geofences.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "Entries": {
+ "target": "com.amazonaws.location#BatchPutGeofenceRequestEntryList",
+ "traits": {
+ "smithy.api#documentation": "The batch of geofences to be stored in a geofence collection.
",
+ "smithy.api#length": {
+ "min": 1,
+ "max": 10
+ },
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#BatchPutGeofenceRequestEntry": {
+ "type": "structure",
+ "members": {
+ "GeofenceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The identifier for the geofence to be stored in a given geofence collection.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Geometry": {
+ "target": "com.amazonaws.location#GeofenceGeometry",
+ "traits": {
+ "smithy.api#documentation": "Contains the polygon details to specify the position of the geofence.
\n \n Each geofence polygon can have a maximum of 1,000 vertices.
\n ",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains geofence geometry details.
"
+ }
+ },
+ "com.amazonaws.location#BatchPutGeofenceRequestEntryList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#BatchPutGeofenceRequestEntry"
+ }
+ },
+ "com.amazonaws.location#BatchPutGeofenceResponse": {
+ "type": "structure",
+ "members": {
+ "Successes": {
+ "target": "com.amazonaws.location#BatchPutGeofenceSuccessList",
+ "traits": {
+ "smithy.api#documentation": "Contains each geofence that was successfully stored in a geofence collection.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Errors": {
+ "target": "com.amazonaws.location#BatchPutGeofenceErrorList",
+ "traits": {
+ "smithy.api#documentation": "Contains additional error details for each geofence that failed to be stored in a\n geofence collection.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#BatchPutGeofenceSuccess": {
+ "type": "structure",
+ "members": {
+ "GeofenceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The geofence successfully stored in a geofence collection.
",
+ "smithy.api#required": {}
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the geofence was stored in a geofence collection in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
\n
",
+ "smithy.api#required": {}
+ }
+ },
+ "UpdateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the geofence was last updated in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
\n
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains a summary of each geofence that was successfully stored in a given geofence\n collection.
"
+ }
+ },
+ "com.amazonaws.location#BatchPutGeofenceSuccessList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#BatchPutGeofenceSuccess"
+ }
+ },
+ "com.amazonaws.location#BatchUpdateDevicePosition": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#BatchUpdateDevicePositionRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#BatchUpdateDevicePositionResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Uploads position update data for one or more devices to a tracker resource. Amazon Location\n uses the data when reporting the last known device position and position history.
\n \n Only one position update is stored per sample time. Location data is sampled at a\n fixed rate of one position per 30-second interval, and retained for one year before\n it is deleted.
\n ",
+ "smithy.api#endpoint": {
+ "hostPrefix": "tracking."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/tracking/v0/trackers/{TrackerName}/positions",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.location#BatchUpdateDevicePositionError": {
+ "type": "structure",
+ "members": {
+ "DeviceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The device associated with the failed location update.
",
+ "smithy.api#required": {}
+ }
+ },
+ "SampleTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp at which the device position was determined. Uses ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Error": {
+ "target": "com.amazonaws.location#BatchItemError",
+ "traits": {
+ "smithy.api#documentation": "Contains details related to the error code such as the error code and error\n message.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains error details for each device that failed to update its position.
"
+ }
+ },
+ "com.amazonaws.location#BatchUpdateDevicePositionErrorList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#BatchUpdateDevicePositionError"
+ }
+ },
+ "com.amazonaws.location#BatchUpdateDevicePositionRequest": {
+ "type": "structure",
+ "members": {
+ "TrackerName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the tracker resource to update.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "Updates": {
+ "target": "com.amazonaws.location#DevicePositionUpdateList",
+ "traits": {
+ "smithy.api#documentation": "Contains the position update details for each device.
",
+ "smithy.api#length": {
+ "min": 1,
+ "max": 10
+ },
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#BatchUpdateDevicePositionResponse": {
+ "type": "structure",
+ "members": {
+ "Errors": {
+ "target": "com.amazonaws.location#BatchUpdateDevicePositionErrorList",
+ "traits": {
+ "smithy.api#documentation": "Contains error details for each device that failed to update its position.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#BoundingBox": {
+ "type": "list",
+ "member": {
+ "target": "smithy.api#Double"
+ },
+ "traits": {
+ "smithy.api#externalDocumentation": {
+ "Documentation": "https://tools.ietf.org/html/rfc7946#section-5"
+ },
+ "smithy.api#length": {
+ "min": 4,
+ "max": 6
+ },
+ "smithy.api#sensitive": {}
+ }
+ },
+ "com.amazonaws.location#ConflictException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#jsonName": "message",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The request was unsuccessful due to a conflict.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 409
+ }
+ },
+ "com.amazonaws.location#CountryCode": {
+ "type": "string",
+ "traits": {
+ "smithy.api#pattern": "^[A-Z]{3}$"
+ }
+ },
+ "com.amazonaws.location#CountryCodeList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#CountryCode"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 100
+ }
+ }
+ },
+ "com.amazonaws.location#CreateGeofenceCollection": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#CreateGeofenceCollectionRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#CreateGeofenceCollectionResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#ConflictException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Creates a geofence collection, which manages and stores geofences.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "geofencing."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/geofencing/v0/collections",
+ "code": 200
+ },
+ "smithy.api#idempotent": {}
+ }
+ },
+ "com.amazonaws.location#CreateGeofenceCollectionRequest": {
+ "type": "structure",
+ "members": {
+ "CollectionName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "A custom name for the geofence collection.
\n Requirements:
\n \n \n Contain only alphanumeric characters (A–Z, a–z, 0-9), hyphens (-), periods (.), and\n underscores (_).
\n \n \n Must be a unique geofence collection name.
\n \n \n No spaces allowed. For example, ExampleGeofenceCollection
.
\n \n ",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlan": {
+ "target": "com.amazonaws.location#PricingPlan",
+ "traits": {
+ "smithy.api#documentation": "Specifies the pricing plan for your geofence collection.
\n For additional details and restrictions on each pricing plan option, see the Amazon Location Service pricing\n page .
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlanDataSource": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "Specifies the plan data source. Required if the Mobile Asset Tracking (MAT) or the\n Mobile Asset Management (MAM) pricing plan is selected.
\n Billing is determined by the resource usage, the associated pricing plan, and the data\n source that was specified. For more information about each pricing plan option and\n restrictions, see the Amazon\n Location Service pricing page .
\n Valid Values: Esri
| Here
\n
"
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.location#ResourceDescription",
+ "traits": {
+ "smithy.api#documentation": "An optional description for the geofence collection.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#CreateGeofenceCollectionResponse": {
+ "type": "structure",
+ "members": {
+ "CollectionName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name for the geofence collection.
",
+ "smithy.api#required": {}
+ }
+ },
+ "CollectionArn": {
+ "target": "com.amazonaws.location#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) for the geofence collection resource. Used when you\n need to specify a resource across all AWS.
",
+ "smithy.api#required": {}
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the geofence collection was created in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
\n
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#CreateMap": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#CreateMapRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#CreateMapResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#ConflictException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Creates a map resource in your AWS account, which provides map tiles of different\n styles sourced from global location data providers.
\n \n By using Maps, you agree that AWS may transmit your API queries to your selected\n third party provider for processing, which may be outside the AWS region you are\n currently using. For more information, see the AWS Service Terms for Amazon\n Location Service.
\n ",
+ "smithy.api#endpoint": {
+ "hostPrefix": "maps."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/maps/v0/maps",
+ "code": 200
+ },
+ "smithy.api#idempotent": {}
+ }
+ },
+ "com.amazonaws.location#CreateMapRequest": {
+ "type": "structure",
+ "members": {
+ "MapName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name for the map resource.
\n Requirements:
\n \n \n Must contain only alphanumeric characters (A–Z, a–z, 0–9), hyphens (-), periods (.), and underscores (_).
\n \n \n Must be a unique map resource name.
\n \n \n No spaces allowed. For example, ExampleMap
.
\n \n ",
+ "smithy.api#required": {}
+ }
+ },
+ "Configuration": {
+ "target": "com.amazonaws.location#MapConfiguration",
+ "traits": {
+ "smithy.api#documentation": "Specifies the map style selected from an available data provider.
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlan": {
+ "target": "com.amazonaws.location#PricingPlan",
+ "traits": {
+ "smithy.api#documentation": "Specifies the pricing plan for your map resource.
\n For additional details and restrictions on each pricing plan option, see the Amazon Location Service pricing\n page .
",
+ "smithy.api#required": {}
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.location#ResourceDescription",
+ "traits": {
+ "smithy.api#documentation": "An optional description for the map resource.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#CreateMapResponse": {
+ "type": "structure",
+ "members": {
+ "MapName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the map resource.
",
+ "smithy.api#required": {}
+ }
+ },
+ "MapArn": {
+ "target": "com.amazonaws.location#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) for the map resource. Used when you need to specify a\n resource across all AWS.
\n ",
+ "smithy.api#required": {}
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the map resource was created in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#CreatePlaceIndex": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#CreatePlaceIndexRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#CreatePlaceIndexResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#ConflictException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Creates a Place index resource in your AWS account, which supports Places functions with\n geospatial data sourced from your chosen data provider.
\n \n By using Places, you agree that AWS may transmit your API queries to your selected\n third party provider for processing, which may be outside the AWS region you are\n currently using.
\n Because of licensing limitations, you may not use HERE to store results for locations\n in Japan. For more information, see the AWS Service Terms for Amazon\n Location Service.
\n ",
+ "smithy.api#endpoint": {
+ "hostPrefix": "places."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/places/v0/indexes",
+ "code": 200
+ },
+ "smithy.api#idempotent": {}
+ }
+ },
+ "com.amazonaws.location#CreatePlaceIndexRequest": {
+ "type": "structure",
+ "members": {
+ "IndexName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the Place index resource.
\n Requirements:
\n \n \n Contain only alphanumeric characters (A-Z, a-z, 0-9) , hyphens (-), periods (.), and underscores (_).
\n \n \n Must be a unique Place index resource name.
\n \n \n No spaces allowed. For example, ExamplePlaceIndex
.
\n \n ",
+ "smithy.api#required": {}
+ }
+ },
+ "DataSource": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "Specifies the data provider of geospatial data.
\n \n This field is case-sensitive. Enter the valid values as shown. For example, entering\n HERE
will return an error.
\n \n Valid values include:
\n \n \n \n Esri
\n
\n \n \n \n Here
\n
\n \n \n For additional details on data providers, see the Amazon Location Service data providers page .
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlan": {
+ "target": "com.amazonaws.location#PricingPlan",
+ "traits": {
+ "smithy.api#documentation": "Specifies the pricing plan for your Place index resource.
\n For additional details and restrictions on each pricing plan option, see the Amazon Location Service pricing\n page .
",
+ "smithy.api#required": {}
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.location#ResourceDescription",
+ "traits": {
+ "smithy.api#documentation": "The optional description for the Place index resource.
"
+ }
+ },
+ "DataSourceConfiguration": {
+ "target": "com.amazonaws.location#DataSourceConfiguration",
+ "traits": {
+ "smithy.api#documentation": "Specifies the data storage option for requesting Places.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#CreatePlaceIndexResponse": {
+ "type": "structure",
+ "members": {
+ "IndexName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name for the Place index resource.
",
+ "smithy.api#required": {}
+ }
+ },
+ "IndexArn": {
+ "target": "com.amazonaws.location#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) for the Place index resource. Used when you need to\n specify a resource across all AWS.
",
+ "smithy.api#required": {}
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the Place index resource was created in ISO 8601 format:\n YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#CreateTracker": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#CreateTrackerRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#CreateTrackerResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#ConflictException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Creates a tracker resource in your AWS account, which lets you retrieve current and\n historical location of devices.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "tracking."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/tracking/v0/trackers",
+ "code": 200
+ },
+ "smithy.api#idempotent": {}
+ }
+ },
+ "com.amazonaws.location#CreateTrackerRequest": {
+ "type": "structure",
+ "members": {
+ "TrackerName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name for the tracker resource.
\n Requirements:
\n \n \n Contain only alphanumeric characters (A-Z, a-z, 0-9) , hyphens (-), periods (.), and underscores (_).
\n \n \n Must be a unique tracker resource name.
\n \n \n No spaces allowed. For example, ExampleTracker
.
\n \n ",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlan": {
+ "target": "com.amazonaws.location#PricingPlan",
+ "traits": {
+ "smithy.api#documentation": "Specifies the pricing plan for your tracker resource.
\n For additional details and restrictions on each pricing plan option, see the Amazon Location Service pricing\n page .
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlanDataSource": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "Specifies the plan data source. Required if the Mobile Asset Tracking (MAT) or the\n Mobile Asset Management (MAM) pricing plan is selected.
\n Billing is determined by the resource usage, the associated pricing plan, and data\n source that was specified. For more information about each pricing plan option and\n restrictions, see the Amazon\n Location Service pricing page .
\n Valid Values: Esri
| Here
\n
"
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.location#ResourceDescription",
+ "traits": {
+ "smithy.api#documentation": "An optional description for the tracker resource.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#CreateTrackerResponse": {
+ "type": "structure",
+ "members": {
+ "TrackerName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the tracker resource.
",
+ "smithy.api#required": {}
+ }
+ },
+ "TrackerArn": {
+ "target": "com.amazonaws.location#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) for the tracker resource. Used when you need to specify\n a resource across all AWS.
",
+ "smithy.api#required": {}
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the tracker resource was created in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#DataSourceConfiguration": {
+ "type": "structure",
+ "members": {
+ "IntendedUse": {
+ "target": "com.amazonaws.location#IntendedUse",
+ "traits": {
+ "smithy.api#documentation": "Specifies how the results of an operation will be stored by the caller.
\n Valid values include:
\n \n Default value: SingleUse
\n
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Specifies the data storage option chosen for requesting Places.
\n \n By using Places, you agree that AWS may transmit your API queries to your selected\n third party provider for processing, which may be outside the AWS region you are\n currently using.
\n Also, when using HERE as your data provider, you may not (a) use HERE Places for\n Asset Management, or (b) select the Storage
option for the\n IntendedUse
parameter when requesting Places in Japan. For more\n information, see the AWS Service\n Terms for Amazon Location Service.
\n "
+ }
+ },
+ "com.amazonaws.location#DeleteGeofenceCollection": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#DeleteGeofenceCollectionRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#DeleteGeofenceCollectionResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Deletes a geofence collection from your AWS account.
\n \n This action deletes the resource permanently. You can't undo this action. If the\n geofence collection is the target of a tracker resource, the devices will no longer\n be monitored.
\n ",
+ "smithy.api#endpoint": {
+ "hostPrefix": "geofencing."
+ },
+ "smithy.api#http": {
+ "method": "DELETE",
+ "uri": "/geofencing/v0/collections/{CollectionName}",
+ "code": 200
+ },
+ "smithy.api#idempotent": {}
+ }
+ },
+ "com.amazonaws.location#DeleteGeofenceCollectionRequest": {
+ "type": "structure",
+ "members": {
+ "CollectionName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the geofence collection to be deleted.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#DeleteGeofenceCollectionResponse": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.location#DeleteMap": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#DeleteMapRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#DeleteMapResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Deletes a map resource from your AWS account.
\n \n This action deletes the resource permanently. You cannot undo this action. If the map is being\n used in an application, the map may not render.
\n ",
+ "smithy.api#endpoint": {
+ "hostPrefix": "maps."
+ },
+ "smithy.api#http": {
+ "method": "DELETE",
+ "uri": "/maps/v0/maps/{MapName}",
+ "code": 200
+ },
+ "smithy.api#idempotent": {}
+ }
+ },
+ "com.amazonaws.location#DeleteMapRequest": {
+ "type": "structure",
+ "members": {
+ "MapName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the map resource to be deleted.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#DeleteMapResponse": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.location#DeletePlaceIndex": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#DeletePlaceIndexRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#DeletePlaceIndexResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Deletes a Place index resource from your AWS account.
\n \n This action deletes the resource permanently. You cannot undo this action.
\n ",
+ "smithy.api#endpoint": {
+ "hostPrefix": "places."
+ },
+ "smithy.api#http": {
+ "method": "DELETE",
+ "uri": "/places/v0/indexes/{IndexName}",
+ "code": 200
+ },
+ "smithy.api#idempotent": {}
+ }
+ },
+ "com.amazonaws.location#DeletePlaceIndexRequest": {
+ "type": "structure",
+ "members": {
+ "IndexName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the Place index resource to be deleted.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#DeletePlaceIndexResponse": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.location#DeleteTracker": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#DeleteTrackerRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#DeleteTrackerResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Deletes a tracker resource from your AWS account.
\n \n This action deletes the resource permanently. You can't undo this action. If the tracker resource is in use, you may encounter an error. Make sure that the target resource is not a dependency for your applications.
\n ",
+ "smithy.api#endpoint": {
+ "hostPrefix": "tracking."
+ },
+ "smithy.api#http": {
+ "method": "DELETE",
+ "uri": "/tracking/v0/trackers/{TrackerName}",
+ "code": 200
+ },
+ "smithy.api#idempotent": {}
+ }
+ },
+ "com.amazonaws.location#DeleteTrackerRequest": {
+ "type": "structure",
+ "members": {
+ "TrackerName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the tracker resource to be deleted.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#DeleteTrackerResponse": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.location#DescribeGeofenceCollection": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#DescribeGeofenceCollectionRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#DescribeGeofenceCollectionResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Retrieves the geofence collection details.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "geofencing."
+ },
+ "smithy.api#http": {
+ "method": "GET",
+ "uri": "/geofencing/v0/collections/{CollectionName}",
+ "code": 200
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#DescribeGeofenceCollectionRequest": {
+ "type": "structure",
+ "members": {
+ "CollectionName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the geofence collection.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#DescribeGeofenceCollectionResponse": {
+ "type": "structure",
+ "members": {
+ "CollectionName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the geofence collection.
",
+ "smithy.api#required": {}
+ }
+ },
+ "CollectionArn": {
+ "target": "com.amazonaws.location#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) for the geofence collection resource. Used when you\n need to specify a resource across all AWS.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.location#ResourceDescription",
+ "traits": {
+ "smithy.api#documentation": "The optional description for the geofence collection.
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlan": {
+ "target": "com.amazonaws.location#PricingPlan",
+ "traits": {
+ "smithy.api#documentation": "The pricing plan selected for the specified geofence collection.
\n For additional details and restrictions on each pricing plan option, see the Amazon Location Service pricing\n page .
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlanDataSource": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The data source selected for the geofence collection and associated pricing\n plan.
"
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the geofence resource was created in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
\n
",
+ "smithy.api#required": {}
+ }
+ },
+ "UpdateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the geofence collection was last updated in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
\n
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#DescribeMap": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#DescribeMapRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#DescribeMapResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Retrieves the map resource details.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "maps."
+ },
+ "smithy.api#http": {
+ "method": "GET",
+ "uri": "/maps/v0/maps/{MapName}",
+ "code": 200
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#DescribeMapRequest": {
+ "type": "structure",
+ "members": {
+ "MapName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the map resource.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#DescribeMapResponse": {
+ "type": "structure",
+ "members": {
+ "MapName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The map style selected from an available provider.
",
+ "smithy.api#required": {}
+ }
+ },
+ "MapArn": {
+ "target": "com.amazonaws.location#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) for the map resource. Used when you need to specify a\n resource across all AWS.
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlan": {
+ "target": "com.amazonaws.location#PricingPlan",
+ "traits": {
+ "smithy.api#documentation": "The pricing plan selected for the specified map resource.
\n\n For additional details and restrictions on each pricing plan option, see the Amazon Location Service pricing\n page .
",
+ "smithy.api#required": {}
+ }
+ },
+ "DataSource": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "Specifies the data provider for the associated map tiles.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Configuration": {
+ "target": "com.amazonaws.location#MapConfiguration",
+ "traits": {
+ "smithy.api#documentation": "Specifies the map tile style selected from a partner data provider.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.location#ResourceDescription",
+ "traits": {
+ "smithy.api#documentation": "The optional description for the map resource.
",
+ "smithy.api#required": {}
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the map resource was created in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "UpdateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the map resource was last update in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#DescribePlaceIndex": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#DescribePlaceIndexRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#DescribePlaceIndexResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Retrieves the Place index resource details.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "places."
+ },
+ "smithy.api#http": {
+ "method": "GET",
+ "uri": "/places/v0/indexes/{IndexName}",
+ "code": 200
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#DescribePlaceIndexRequest": {
+ "type": "structure",
+ "members": {
+ "IndexName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the Place index resource.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#DescribePlaceIndexResponse": {
+ "type": "structure",
+ "members": {
+ "IndexName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the Place index resource being described.
",
+ "smithy.api#required": {}
+ }
+ },
+ "IndexArn": {
+ "target": "com.amazonaws.location#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) for the Place index resource. Used when you need to\n specify a resource across all AWS.
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlan": {
+ "target": "com.amazonaws.location#PricingPlan",
+ "traits": {
+ "smithy.api#documentation": "The pricing plan selected for the specified Place index resource.
\n For additional details and restrictions on each pricing plan option, see the Amazon Location Service pricing\n page .
",
+ "smithy.api#required": {}
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.location#ResourceDescription",
+ "traits": {
+ "smithy.api#documentation": "The optional description for the Place index resource.
",
+ "smithy.api#required": {}
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the Place index resource was created in ISO 8601 format:\n YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "UpdateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the Place index resource was last updated in ISO 8601 format:\n YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DataSource": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The data provider of geospatial data. Indicates one of the available providers:
\n \n \n \n Esri
\n
\n \n \n \n Here
\n
\n \n \n For additional details on data providers, see the Amazon Location Service data providers\n page .
",
+ "smithy.api#required": {}
+ }
+ },
+ "DataSourceConfiguration": {
+ "target": "com.amazonaws.location#DataSourceConfiguration",
+ "traits": {
+ "smithy.api#documentation": "The specified data storage option for requesting Places.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#DescribeTracker": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#DescribeTrackerRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#DescribeTrackerResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Retrieves the tracker resource details.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "tracking."
+ },
+ "smithy.api#http": {
+ "method": "GET",
+ "uri": "/tracking/v0/trackers/{TrackerName}",
+ "code": 200
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#DescribeTrackerRequest": {
+ "type": "structure",
+ "members": {
+ "TrackerName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the tracker resource.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#DescribeTrackerResponse": {
+ "type": "structure",
+ "members": {
+ "TrackerName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the tracker resource.
",
+ "smithy.api#required": {}
+ }
+ },
+ "TrackerArn": {
+ "target": "com.amazonaws.location#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) for the tracker resource. Used when you need to specify\n a resource across all AWS.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.location#ResourceDescription",
+ "traits": {
+ "smithy.api#documentation": "The optional description for the tracker resource.
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlan": {
+ "target": "com.amazonaws.location#PricingPlan",
+ "traits": {
+ "smithy.api#documentation": "The pricing plan selected for the specified tracker resource.
\n For additional details and restrictions on each pricing plan option, see the Amazon Location Service pricing\n page .
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlanDataSource": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The data source selected for the tracker resource and associated pricing plan.
"
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the tracker resource was created in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "UpdateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the tracker resource was last updated in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#DevicePosition": {
+ "type": "structure",
+ "members": {
+ "DeviceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The device whose position you retrieved.
"
+ }
+ },
+ "SampleTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp at which the device's position was determined. Uses ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "ReceivedTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the tracker resource received the device position in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Position": {
+ "target": "com.amazonaws.location#Position",
+ "traits": {
+ "smithy.api#documentation": "The last known device position.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains the device position details.
"
+ }
+ },
+ "com.amazonaws.location#DevicePositionList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#DevicePosition"
+ }
+ },
+ "com.amazonaws.location#DevicePositionUpdate": {
+ "type": "structure",
+ "members": {
+ "DeviceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The device associated to the position update.
",
+ "smithy.api#required": {}
+ }
+ },
+ "SampleTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp at which the device's position was determined. Uses ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
\n
",
+ "smithy.api#required": {}
+ }
+ },
+ "Position": {
+ "target": "com.amazonaws.location#Position",
+ "traits": {
+ "smithy.api#documentation": "The latest device position defined in WGS 84 format:\n [X or longitude, Y or latitude]
.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains the position update details for a device.
"
+ }
+ },
+ "com.amazonaws.location#DevicePositionUpdateList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#DevicePositionUpdate"
+ }
+ },
+ "com.amazonaws.location#DisassociateTrackerConsumer": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#DisassociateTrackerConsumerRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#DisassociateTrackerConsumerResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Removes the association between a tracker resource and a geofence collection.
\n \n Once you unlink a tracker resource from a geofence collection, the tracker\n positions will no longer be automatically evaluated against geofences.
\n ",
+ "smithy.api#endpoint": {
+ "hostPrefix": "tracking."
+ },
+ "smithy.api#http": {
+ "method": "DELETE",
+ "uri": "/tracking/v0/trackers/{TrackerName}/consumers/{ConsumerArn}",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.location#DisassociateTrackerConsumerRequest": {
+ "type": "structure",
+ "members": {
+ "TrackerName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the tracker resource to be dissociated from the consumer.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "ConsumerArn": {
+ "target": "com.amazonaws.location#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) for the geofence collection to be disassociated from\n the tracker resource. Used when you need to specify a resource across all AWS.
\n ",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#DisassociateTrackerConsumerResponse": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.location#GeofenceCollectionResource": {
+ "type": "resource",
+ "identifiers": {
+ "CollectionName": {
+ "target": "com.amazonaws.location#ResourceName"
+ }
+ },
+ "put": {
+ "target": "com.amazonaws.location#CreateGeofenceCollection"
+ },
+ "read": {
+ "target": "com.amazonaws.location#DescribeGeofenceCollection"
+ },
+ "delete": {
+ "target": "com.amazonaws.location#DeleteGeofenceCollection"
+ },
+ "list": {
+ "target": "com.amazonaws.location#ListGeofenceCollections"
+ },
+ "operations": [
+ {
+ "target": "com.amazonaws.location#BatchDeleteGeofence"
+ },
+ {
+ "target": "com.amazonaws.location#BatchEvaluateGeofences"
+ },
+ {
+ "target": "com.amazonaws.location#BatchPutGeofence"
+ },
+ {
+ "target": "com.amazonaws.location#GetGeofence"
+ },
+ {
+ "target": "com.amazonaws.location#ListGeofences"
+ },
+ {
+ "target": "com.amazonaws.location#PutGeofence"
+ }
+ ],
+ "traits": {
+ "aws.api#arn": {
+ "template": "geofence-collection/{CollectionName}",
+ "absolute": false,
+ "noAccount": false,
+ "noRegion": false
+ },
+ "aws.iam#disableConditionKeyInference": {}
+ }
+ },
+ "com.amazonaws.location#GeofenceGeometry": {
+ "type": "structure",
+ "members": {
+ "Polygon": {
+ "target": "com.amazonaws.location#LinearRings",
+ "traits": {
+ "smithy.api#documentation": "An array of 1 or more linear rings. A linear ring is an array of 4 or more vertices,\n where the first and last vertex are the same to form a closed boundary. Each vertex is a\n 2-dimensional point of the form: [longitude, latitude]
.
\n The first linear ring is an outer ring, describing the polygon's boundary. Subsequent\n linear rings may be inner or outer rings to describe holes and islands. Outer rings must\n list their vertices in counter-clockwise order around the ring's center, where the left\n side is the polygon's exterior. Inner rings must list their vertices in clockwise order,\n where the left side is the polygon's interior.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains the geofence geometry details.
\n \n Amazon Location does not currently support polygons with holes, multipolygons, polygons\n that are wound clockwise, or that cross the antimeridian.
\n "
+ }
+ },
+ "com.amazonaws.location#GetDevicePosition": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#GetDevicePositionRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#GetDevicePositionResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Retrieves a device's most recent position according to its sample time.
\n \n Device positions are deleted after one year.
\n ",
+ "smithy.api#endpoint": {
+ "hostPrefix": "tracking."
+ },
+ "smithy.api#http": {
+ "method": "GET",
+ "uri": "/tracking/v0/trackers/{TrackerName}/devices/{DeviceId}/positions/latest",
+ "code": 200
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#GetDevicePositionHistory": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#GetDevicePositionHistoryRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#GetDevicePositionHistoryResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Retrieves the device position history from a tracker resource within a specified range\n of time.
\n \n Device positions are deleted after 1 year.
\n ",
+ "smithy.api#endpoint": {
+ "hostPrefix": "tracking."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/tracking/v0/trackers/{TrackerName}/devices/{DeviceId}/list-positions",
+ "code": 200
+ },
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "items": "DevicePositions"
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#GetDevicePositionHistoryRequest": {
+ "type": "structure",
+ "members": {
+ "TrackerName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The tracker resource receiving the request for the device position history.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "DeviceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The device whose position history you want to retrieve.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.location#Token",
+ "traits": {
+ "smithy.api#documentation": "The pagination token specifying which page of results to return in the response. If no\n token is provided, the default page is the first page.
\n Default value: null
\n
"
+ }
+ },
+ "StartTimeInclusive": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "Specify the start time for the position history in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
. By default, the value will be 24 hours\n prior to the time that the request is made.
\n Requirement:
\n "
+ }
+ },
+ "EndTimeExclusive": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "Specify the end time for the position history in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
. By default, the value will be the time\n that the request is made.
\n Requirement:
\n "
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#GetDevicePositionHistoryResponse": {
+ "type": "structure",
+ "members": {
+ "DevicePositions": {
+ "target": "com.amazonaws.location#DevicePositionList",
+ "traits": {
+ "smithy.api#documentation": "Contains the position history details for the requested device.
",
+ "smithy.api#required": {}
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.location#Token",
+ "traits": {
+ "smithy.api#documentation": "A pagination token indicating there are additional pages available. You can use the\n token in a following request to fetch the next set of results.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#GetDevicePositionRequest": {
+ "type": "structure",
+ "members": {
+ "TrackerName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The tracker resource receiving the position update.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "DeviceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The device whose position you want to retrieve.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#GetDevicePositionResponse": {
+ "type": "structure",
+ "members": {
+ "DeviceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The device whose position you retrieved.
"
+ }
+ },
+ "SampleTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp at which the device's position was determined. Uses ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "ReceivedTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the tracker resource received the device position in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Position": {
+ "target": "com.amazonaws.location#Position",
+ "traits": {
+ "smithy.api#documentation": "The last known device position.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#GetGeofence": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#GetGeofenceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#GetGeofenceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Retrieves the geofence details from a geofence collection.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "geofencing."
+ },
+ "smithy.api#http": {
+ "method": "GET",
+ "uri": "/geofencing/v0/collections/{CollectionName}/geofences/{GeofenceId}",
+ "code": 200
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#GetGeofenceRequest": {
+ "type": "structure",
+ "members": {
+ "CollectionName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The geofence collection storing the target geofence.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "GeofenceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The geofence you're retrieving details for.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#GetGeofenceResponse": {
+ "type": "structure",
+ "members": {
+ "GeofenceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The geofence identifier.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Geometry": {
+ "target": "com.amazonaws.location#GeofenceGeometry",
+ "traits": {
+ "smithy.api#documentation": "Contains the geofence geometry details describing a polygon.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Status": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "Identifies the state of the geofence. A geofence will hold one of the following\n states:
\n \n \n \n ACTIVE
— The geofence has been indexed by the system.
\n \n \n \n PENDING
— The geofence is being processed by the system.
\n \n \n \n FAILED
— The geofence failed to be indexed by the system.
\n \n \n \n DELETED
— The geofence has been deleted from the system\n index.
\n \n \n \n DELETING
— The geofence is being deleted from the system\n index.
\n \n ",
+ "smithy.api#required": {}
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the geofence collection was created in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
\n
",
+ "smithy.api#required": {}
+ }
+ },
+ "UpdateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the geofence collection was last updated in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
\n
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#GetMapGlyphs": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#GetMapGlyphsRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#GetMapGlyphsResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Retrieves glyphs used to display labels on a map.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "maps."
+ },
+ "smithy.api#http": {
+ "method": "GET",
+ "uri": "/maps/v0/maps/{MapName}/glyphs/{FontStack}/{FontUnicodeRange}",
+ "code": 200
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#GetMapGlyphsRequest": {
+ "type": "structure",
+ "members": {
+ "MapName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The map resource associated with the glyph file.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "FontStack": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "A comma-separated list of fonts to load glyphs from in order of preference.. For\n example, Noto Sans, Arial Unicode
.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "FontUnicodeRange": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "A Unicode range of characters to download glyphs for. Each response will contain 256\n characters. For example, 0-255 includes all characters from range U+0000
to\n 00FF
. Must be aligned to multiples of 256.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#pattern": "^[0-9]+-[0-9]+\\.pbf$",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#GetMapGlyphsResponse": {
+ "type": "structure",
+ "members": {
+ "Blob": {
+ "target": "smithy.api#Blob",
+ "traits": {
+ "smithy.api#documentation": "The blob's content type.
",
+ "smithy.api#httpPayload": {}
+ }
+ },
+ "ContentType": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The map glyph content type. For example, application/octet-stream
.
",
+ "smithy.api#httpHeader": "Content-Type"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#externalDocumentation": {
+ "Documentation": "https://github.com/mapbox/node-fontnik"
+ }
+ }
+ },
+ "com.amazonaws.location#GetMapSprites": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#GetMapSpritesRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#GetMapSpritesResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Retrieves the sprite sheet corresponding to a map resource. The sprite sheet is a PNG\n image paired with a JSON document describing the offsets of individual icons that will\n be displayed on a rendered map.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "maps."
+ },
+ "smithy.api#http": {
+ "method": "GET",
+ "uri": "/maps/v0/maps/{MapName}/sprites/{FileName}",
+ "code": 200
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#GetMapSpritesRequest": {
+ "type": "structure",
+ "members": {
+ "MapName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The map resource associated with the sprite file.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "FileName": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The name of the sprite file. Use the following file names for the sprite sheet:
\n \n For the JSON document contain image offsets. Use the following file names:
\n ",
+ "smithy.api#httpLabel": {},
+ "smithy.api#pattern": "^sprites(@2x)?\\.(png|json)$",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#GetMapSpritesResponse": {
+ "type": "structure",
+ "members": {
+ "Blob": {
+ "target": "smithy.api#Blob",
+ "traits": {
+ "smithy.api#documentation": "Contains the body of the sprite sheet or JSON offset file.
",
+ "smithy.api#httpPayload": {}
+ }
+ },
+ "ContentType": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The content type of the sprite sheet and offsets. For example, the sprite sheet\n content type is image/png
, and the sprite offset JSON document is\n application/json
.
",
+ "smithy.api#httpHeader": "Content-Type"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#GetMapStyleDescriptor": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#GetMapStyleDescriptorRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#GetMapStyleDescriptorResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Retrieves the map style descriptor from a map resource.
\n The style descriptor contains specifications on how features render on a map. For\n example, what data to display, what order to display the data in, and the style for the\n data. Style descriptors follow the Mapbox Style Specification.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "maps."
+ },
+ "smithy.api#http": {
+ "method": "GET",
+ "uri": "/maps/v0/maps/{MapName}/style-descriptor",
+ "code": 200
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#GetMapStyleDescriptorRequest": {
+ "type": "structure",
+ "members": {
+ "MapName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The map resource to retrieve the style descriptor from.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#GetMapStyleDescriptorResponse": {
+ "type": "structure",
+ "members": {
+ "Blob": {
+ "target": "smithy.api#Blob",
+ "traits": {
+ "smithy.api#documentation": "Contains the body of the style descriptor.
",
+ "smithy.api#externalDocumentation": {
+ "Specification": "https://docs.mapbox.com/mapbox-gl-js/style-spec/"
+ },
+ "smithy.api#httpPayload": {}
+ }
+ },
+ "ContentType": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The style descriptor's content type. For example,\n application/json
.
",
+ "smithy.api#httpHeader": "Content-Type"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#GetMapTile": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#GetMapTileRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#GetMapTileResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Retrieves a vector data tile from the map resource. Map tiles are used by clients to\n render a map. They are addressed using a grid arrangement with an X coordinate, Y\n coordinate, and Z (zoom) level.
\n The origin (0, 0) is the top left of the map. Increasing the zoom level by 1 doubles\n both the X and Y dimensions, so a tile containing data for the entire world at (0/0/0)\n will be split into 4 tiles at zoom 1 (1/0/0, 1/0/1, 1/1/0, 1/1/1).
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "maps."
+ },
+ "smithy.api#http": {
+ "method": "GET",
+ "uri": "/maps/v0/maps/{MapName}/tiles/{Z}/{X}/{Y}",
+ "code": 200
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#GetMapTileRequest": {
+ "type": "structure",
+ "members": {
+ "MapName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The map resource to retrieve the map tiles from.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "Z": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The zoom value for the map tile.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#pattern": "\\d+",
+ "smithy.api#required": {}
+ }
+ },
+ "X": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The X axis value for the map tile.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#pattern": "\\d+",
+ "smithy.api#required": {}
+ }
+ },
+ "Y": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The Y axis value for the map tile.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#pattern": "\\d+",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#GetMapTileResponse": {
+ "type": "structure",
+ "members": {
+ "Blob": {
+ "target": "smithy.api#Blob",
+ "traits": {
+ "smithy.api#documentation": "Contains Mapbox Vector Tile (MVT) data.
",
+ "smithy.api#httpPayload": {}
+ }
+ },
+ "ContentType": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The map tile's content type. For example,\n application/vnd.mapbox-vector-tile
.
",
+ "smithy.api#httpHeader": "Content-Type"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#Id": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 100
+ },
+ "smithy.api#pattern": "^[-._\\p{L}\\p{N}]+$"
+ }
+ },
+ "com.amazonaws.location#IdList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#Id"
+ }
+ },
+ "com.amazonaws.location#IntendedUse": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "SingleUse",
+ "documentation": "Indicates that results of the operation are for single use, e.g., displaying results on a map or presenting options to users."
+ },
+ {
+ "value": "Storage",
+ "documentation": "Indicates that results of the operation may be stored locally."
+ }
+ ]
+ }
+ },
+ "com.amazonaws.location#InternalServerException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#jsonName": "message",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The request has failed to process because of an unknown server error, exception, or failure.
",
+ "smithy.api#error": "server",
+ "smithy.api#httpError": 500,
+ "smithy.api#retryable": {}
+ }
+ },
+ "com.amazonaws.location#LinearRing": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#Position"
+ },
+ "traits": {
+ "smithy.api#externalDocumentation": {
+ "Documentation": "https://tools.ietf.org/html/rfc7946#section-3.1.6"
+ },
+ "smithy.api#length": {
+ "min": 4
+ }
+ }
+ },
+ "com.amazonaws.location#LinearRings": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#LinearRing"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1
+ }
+ }
+ },
+ "com.amazonaws.location#ListGeofenceCollections": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#ListGeofenceCollectionsRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#ListGeofenceCollectionsResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Lists geofence collections in your AWS account.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "geofencing."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/geofencing/v0/list-collections",
+ "code": 200
+ },
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "items": "Entries",
+ "pageSize": "MaxResults"
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#ListGeofenceCollectionsRequest": {
+ "type": "structure",
+ "members": {
+ "MaxResults": {
+ "target": "smithy.api#Integer",
+ "traits": {
+ "smithy.api#documentation": "An optional limit for the number of resources returned in a single call.
\n Default value: 100
\n
",
+ "smithy.api#range": {
+ "min": 1,
+ "max": 100
+ }
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.location#Token",
+ "traits": {
+ "smithy.api#documentation": "The pagination token specifying which page of results to return in the response. If no\n token is provided, the default page is the first page.
\n Default value: null
\n
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#ListGeofenceCollectionsResponse": {
+ "type": "structure",
+ "members": {
+ "Entries": {
+ "target": "com.amazonaws.location#ListGeofenceCollectionsResponseEntryList",
+ "traits": {
+ "smithy.api#documentation": "Lists the geofence collections that exist in your AWS account.
",
+ "smithy.api#required": {}
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.location#Token",
+ "traits": {
+ "smithy.api#documentation": "A pagination token indicating there are additional pages available. You can use the\n token in a following request to fetch the next set of results.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#ListGeofenceCollectionsResponseEntry": {
+ "type": "structure",
+ "members": {
+ "CollectionName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the geofence collection.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.location#ResourceDescription",
+ "traits": {
+ "smithy.api#documentation": "The description for the geofence collection
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlan": {
+ "target": "com.amazonaws.location#PricingPlan",
+ "traits": {
+ "smithy.api#documentation": "The pricing plan for the specified geofence collection.
\n For additional details and restrictions on each pricing plan option, see the Amazon Location Service pricing\n page .
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlanDataSource": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The data source selected for the geofence collection and associated pricing\n plan.
"
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the geofence collection was created in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
\n
",
+ "smithy.api#required": {}
+ }
+ },
+ "UpdateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "Specifies a timestamp for when the resource was last updated in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
\n
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains the geofence collection details.
"
+ }
+ },
+ "com.amazonaws.location#ListGeofenceCollectionsResponseEntryList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#ListGeofenceCollectionsResponseEntry"
+ }
+ },
+ "com.amazonaws.location#ListGeofenceResponseEntry": {
+ "type": "structure",
+ "members": {
+ "GeofenceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The geofence identifier.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Geometry": {
+ "target": "com.amazonaws.location#GeofenceGeometry",
+ "traits": {
+ "smithy.api#documentation": "Contains the geofence geometry details describing a polygon.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Status": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "Identifies the state of the geofence. A geofence will hold one of the following\n states:
\n \n \n \n ACTIVE
— The geofence has been indexed by the system.
\n \n \n \n PENDING
— The geofence is being processed by the system.
\n \n \n \n FAILED
— The geofence failed to be indexed by the system.
\n \n \n \n DELETED
— The geofence has been deleted from the system\n index.
\n \n \n \n DELETING
— The geofence is being deleted from the system\n index.
\n \n ",
+ "smithy.api#required": {}
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the geofence was stored in a geofence collection in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
\n
",
+ "smithy.api#required": {}
+ }
+ },
+ "UpdateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the geofence was last updated in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
\n
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains a list of geofences stored in a given geofence collection.
"
+ }
+ },
+ "com.amazonaws.location#ListGeofenceResponseEntryList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#ListGeofenceResponseEntry"
+ }
+ },
+ "com.amazonaws.location#ListGeofences": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#ListGeofencesRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#ListGeofencesResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Lists geofences stored in a given geofence collection.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "geofencing."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/geofencing/v0/collections/{CollectionName}/list-geofences",
+ "code": 200
+ },
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "items": "Entries"
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#ListGeofencesRequest": {
+ "type": "structure",
+ "members": {
+ "CollectionName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the geofence collection storing the list of geofences.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.location#Token",
+ "traits": {
+ "smithy.api#documentation": "The pagination token specifying which page of results to return in the response. If no\n token is provided, the default page is the first page.
\n Default value: null
\n
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#ListGeofencesResponse": {
+ "type": "structure",
+ "members": {
+ "Entries": {
+ "target": "com.amazonaws.location#ListGeofenceResponseEntryList",
+ "traits": {
+ "smithy.api#documentation": "Contains a list of geofences stored in the geofence collection.
",
+ "smithy.api#required": {}
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.location#Token",
+ "traits": {
+ "smithy.api#documentation": "A pagination token indicating there are additional pages available. You can use the\n token in a following request to fetch the next set of results.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#ListMaps": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#ListMapsRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#ListMapsResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Lists map resources in your AWS account.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "maps."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/maps/v0/list-maps",
+ "code": 200
+ },
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "items": "Entries",
+ "pageSize": "MaxResults"
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#ListMapsRequest": {
+ "type": "structure",
+ "members": {
+ "MaxResults": {
+ "target": "smithy.api#Integer",
+ "traits": {
+ "smithy.api#documentation": "An optional limit for the number of resources returned in a single call.
\n Default value: 100
\n
",
+ "smithy.api#range": {
+ "min": 1,
+ "max": 100
+ }
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.location#Token",
+ "traits": {
+ "smithy.api#documentation": "The pagination token specifying which page of results to return in the response. If no\n token is provided, the default page is the first page.
\n Default value: null
\n
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#ListMapsResponse": {
+ "type": "structure",
+ "members": {
+ "Entries": {
+ "target": "com.amazonaws.location#ListMapsResponseEntryList",
+ "traits": {
+ "smithy.api#documentation": "Contains a list of maps in your AWS account
",
+ "smithy.api#required": {}
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.location#Token",
+ "traits": {
+ "smithy.api#documentation": "A pagination token indicating there are additional pages available. You can use the token in a following request to fetch the next set of results.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#ListMapsResponseEntry": {
+ "type": "structure",
+ "members": {
+ "MapName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the associated map resource.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.location#ResourceDescription",
+ "traits": {
+ "smithy.api#documentation": "The description for the map resource.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DataSource": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "Specifies the data provider for the associated map tiles.
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlan": {
+ "target": "com.amazonaws.location#PricingPlan",
+ "traits": {
+ "smithy.api#documentation": "The pricing plan for the specified map resource.
\n For additional details and restrictions on each pricing plan option, see the Amazon Location Service pricing\n page .
",
+ "smithy.api#required": {}
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the map resource was created in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "UpdateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the map resource was last updated in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains details of an existing map resource in your AWS account.
"
+ }
+ },
+ "com.amazonaws.location#ListMapsResponseEntryList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#ListMapsResponseEntry"
+ }
+ },
+ "com.amazonaws.location#ListPlaceIndexes": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#ListPlaceIndexesRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#ListPlaceIndexesResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Lists Place index resources in your AWS account.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "places."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/places/v0/list-indexes",
+ "code": 200
+ },
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "items": "Entries",
+ "pageSize": "MaxResults"
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#ListPlaceIndexesRequest": {
+ "type": "structure",
+ "members": {
+ "MaxResults": {
+ "target": "smithy.api#Integer",
+ "traits": {
+ "smithy.api#documentation": "An optional limit for the maximum number of results returned in a single call.
\n Default value: 100
\n
",
+ "smithy.api#range": {
+ "min": 1,
+ "max": 100
+ }
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.location#Token",
+ "traits": {
+ "smithy.api#documentation": "The pagination token specifying which page of results to return in the response. If no\n token is provided, the default page is the first page.
\n Default value: null
\n
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#ListPlaceIndexesResponse": {
+ "type": "structure",
+ "members": {
+ "Entries": {
+ "target": "com.amazonaws.location#ListPlaceIndexesResponseEntryList",
+ "traits": {
+ "smithy.api#documentation": "Lists the Place index resources that exist in your AWS account
",
+ "smithy.api#required": {}
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.location#Token",
+ "traits": {
+ "smithy.api#documentation": "A pagination token indicating there are additional pages available. You can use the\n token in a following request to fetch the next set of results.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#ListPlaceIndexesResponseEntry": {
+ "type": "structure",
+ "members": {
+ "IndexName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the Place index resource.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.location#ResourceDescription",
+ "traits": {
+ "smithy.api#documentation": "The optional description for the Place index resource.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DataSource": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The data provider of geospatial data. Indicates one of the available providers:
\n \n \n Esri
\n \n \n HERE
\n \n \n For additional details on data providers, see the Amazon Location Service data providers page .
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlan": {
+ "target": "com.amazonaws.location#PricingPlan",
+ "traits": {
+ "smithy.api#documentation": "The pricing plan for the specified Place index resource.
\n For additional details and restrictions on each pricing plan option, see the Amazon Location Service pricing\n page .
",
+ "smithy.api#required": {}
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the Place index resource was created in ISO 8601 format:\n YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "UpdateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the Place index resource was last updated in ISO 8601 format:\n YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "A Place index resource listed in your AWS account.
"
+ }
+ },
+ "com.amazonaws.location#ListPlaceIndexesResponseEntryList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#ListPlaceIndexesResponseEntry"
+ }
+ },
+ "com.amazonaws.location#ListTrackerConsumers": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#ListTrackerConsumersRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#ListTrackerConsumersResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Lists geofence collections currently associated to the given tracker resource.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "tracking."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/tracking/v0/trackers/{TrackerName}/list-consumers",
+ "code": 200
+ },
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "items": "ConsumerArns",
+ "pageSize": "MaxResults"
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#ListTrackerConsumersRequest": {
+ "type": "structure",
+ "members": {
+ "TrackerName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The tracker resource whose associated geofence collections you want to list.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "MaxResults": {
+ "target": "smithy.api#Integer",
+ "traits": {
+ "smithy.api#documentation": "An optional limit for the number of resources returned in a single call.
\n Default value: 100
\n
",
+ "smithy.api#range": {
+ "min": 1,
+ "max": 100
+ }
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.location#Token",
+ "traits": {
+ "smithy.api#documentation": "The pagination token specifying which page of results to return in the response. If no\n token is provided, the default page is the first page.
\n Default value: null
\n
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#ListTrackerConsumersResponse": {
+ "type": "structure",
+ "members": {
+ "ConsumerArns": {
+ "target": "com.amazonaws.location#ArnList",
+ "traits": {
+ "smithy.api#documentation": "Contains the list of geofence collection ARNs associated to the tracker resource.
",
+ "smithy.api#required": {}
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.location#Token",
+ "traits": {
+ "smithy.api#documentation": "A pagination token indicating there are additional pages available. You can use the\n token in a following request to fetch the next set of results.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#ListTrackers": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#ListTrackersRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#ListTrackersResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Lists tracker resources in your AWS account.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "tracking."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/tracking/v0/list-trackers",
+ "code": 200
+ },
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "items": "Entries",
+ "pageSize": "MaxResults"
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#ListTrackersRequest": {
+ "type": "structure",
+ "members": {
+ "MaxResults": {
+ "target": "smithy.api#Integer",
+ "traits": {
+ "smithy.api#documentation": "An optional limit for the number of resources returned in a single call.
\n Default value: 100
\n
",
+ "smithy.api#range": {
+ "min": 1,
+ "max": 100
+ }
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.location#Token",
+ "traits": {
+ "smithy.api#documentation": "The pagination token specifying which page of results to return in the response. If no\n token is provided, the default page is the first page.
\n Default value: null
\n
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#ListTrackersResponse": {
+ "type": "structure",
+ "members": {
+ "Entries": {
+ "target": "com.amazonaws.location#ListTrackersResponseEntryList",
+ "traits": {
+ "smithy.api#documentation": "Contains tracker resources in your AWS account. Details include tracker name,\n description and timestamps for when the tracker was created and last updated.
",
+ "smithy.api#required": {}
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.location#Token",
+ "traits": {
+ "smithy.api#documentation": "A pagination token indicating there are additional pages available. You can use the\n token in a following request to fetch the next set of results.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#ListTrackersResponseEntry": {
+ "type": "structure",
+ "members": {
+ "TrackerName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the tracker resource.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.location#ResourceDescription",
+ "traits": {
+ "smithy.api#documentation": "The description for the tracker resource.
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlan": {
+ "target": "com.amazonaws.location#PricingPlan",
+ "traits": {
+ "smithy.api#documentation": "The pricing plan for the specified tracker resource.
\n For additional details and restrictions on each pricing plan option, see the Amazon Location Service pricing\n page .
",
+ "smithy.api#required": {}
+ }
+ },
+ "PricingPlanDataSource": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The data source selected for the tracker resource and associated pricing plan.
"
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the tracker resource was created in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "UpdateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp at which the device's position was determined. Uses ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains the tracker resource details.
"
+ }
+ },
+ "com.amazonaws.location#ListTrackersResponseEntryList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#ListTrackersResponseEntry"
+ }
+ },
+ "com.amazonaws.location#LocationService": {
+ "type": "service",
+ "version": "2020-11-19",
+ "resources": [
+ {
+ "target": "com.amazonaws.location#GeofenceCollectionResource"
+ },
+ {
+ "target": "com.amazonaws.location#MapResource"
+ },
+ {
+ "target": "com.amazonaws.location#PlaceIndexResource"
+ },
+ {
+ "target": "com.amazonaws.location#TrackerResource"
+ }
+ ],
+ "traits": {
+ "aws.api#service": {
+ "sdkId": "Location",
+ "arnNamespace": "geo",
+ "cloudFormationName": "LocationService",
+ "cloudTrailEventSource": "geo.amazonaws.com",
+ "endpointPrefix": "geo"
+ },
+ "aws.auth#sigv4": {
+ "name": "geo"
+ },
+ "aws.protocols#restJson1": {},
+ "smithy.api#documentation": "Suite of geospatial services including Maps, Places, Tracking, and Geofencing",
+ "smithy.api#title": "Amazon Location Service"
+ }
+ },
+ "com.amazonaws.location#MapConfiguration": {
+ "type": "structure",
+ "members": {
+ "Style": {
+ "target": "com.amazonaws.location#MapStyle",
+ "traits": {
+ "smithy.api#documentation": "Specifies the map style selected from an available data provider.
\n Valid styles: VectorEsriStreets
, VectorEsriTopographic
,\n VectorEsriNavigation
, VectorEsriDarkGrayCanvas
,\n VectorEsriLightGrayCanvas
, VectorHereBerlin
.
\n \n When using HERE as your data provider, and selecting the Style\n VectorHereBerlin
, you may not use HERE Maps for Asset Management.\n See the AWS Service Terms for Amazon Location Service.
\n ",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Specifies the map tile style selected from an available provider.
"
+ }
+ },
+ "com.amazonaws.location#MapResource": {
+ "type": "resource",
+ "identifiers": {
+ "MapName": {
+ "target": "com.amazonaws.location#ResourceName"
+ }
+ },
+ "put": {
+ "target": "com.amazonaws.location#CreateMap"
+ },
+ "read": {
+ "target": "com.amazonaws.location#DescribeMap"
+ },
+ "delete": {
+ "target": "com.amazonaws.location#DeleteMap"
+ },
+ "list": {
+ "target": "com.amazonaws.location#ListMaps"
+ },
+ "operations": [
+ {
+ "target": "com.amazonaws.location#GetMapGlyphs"
+ },
+ {
+ "target": "com.amazonaws.location#GetMapSprites"
+ },
+ {
+ "target": "com.amazonaws.location#GetMapStyleDescriptor"
+ },
+ {
+ "target": "com.amazonaws.location#GetMapTile"
+ }
+ ],
+ "traits": {
+ "aws.api#arn": {
+ "template": "map/{MapName}",
+ "absolute": false,
+ "noAccount": false,
+ "noRegion": false
+ },
+ "aws.iam#disableConditionKeyInference": {}
+ }
+ },
+ "com.amazonaws.location#MapStyle": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 100
+ },
+ "smithy.api#pattern": "^[-._\\p{L}\\p{N}]+$"
+ }
+ },
+ "com.amazonaws.location#Place": {
+ "type": "structure",
+ "members": {
+ "Label": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The full name and address of the point of interest such as a city,\n region, or country. For example, 123 Any Street, Any Town, USA
.
"
+ }
+ },
+ "Geometry": {
+ "target": "com.amazonaws.location#PlaceGeometry",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ },
+ "AddressNumber": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The numerical portion of an address, such as a building number.
"
+ }
+ },
+ "Street": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The name for a street or a road to identify a location. For example, Main\n Street
.
"
+ }
+ },
+ "Neighborhood": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The name of a community district. For example, Downtown
.
"
+ }
+ },
+ "Municipality": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "A name for a local area, such as a city or town name. For example,\n Toronto
.
"
+ }
+ },
+ "SubRegion": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "A country, or an area that's part of a larger region . For example, Metro\n Vancouver
.
"
+ }
+ },
+ "Region": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "A name for an area or geographical division, such as a province or state name. For\n example, British Columbia
.
"
+ }
+ },
+ "Country": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "A country/region specified using ISO 3166 3-digit\n country/region code. For example, CAN
.
"
+ }
+ },
+ "PostalCode": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "A group of numbers and letters in a country-specific format, which accompanies the\n address for the purpose of identifying a location.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains details about addresses or points of interest that match the search\n criteria.
"
+ }
+ },
+ "com.amazonaws.location#PlaceGeometry": {
+ "type": "structure",
+ "members": {
+ "Point": {
+ "target": "com.amazonaws.location#Position",
+ "traits": {
+ "smithy.api#documentation": "A single point geometry specifies a location for a Place using WGS 84 \n coordinates:
\n "
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Places uses a point geometry to specify a location or a Place.
"
+ }
+ },
+ "com.amazonaws.location#PlaceIndexResource": {
+ "type": "resource",
+ "identifiers": {
+ "IndexName": {
+ "target": "com.amazonaws.location#ResourceName"
+ }
+ },
+ "put": {
+ "target": "com.amazonaws.location#CreatePlaceIndex"
+ },
+ "read": {
+ "target": "com.amazonaws.location#DescribePlaceIndex"
+ },
+ "delete": {
+ "target": "com.amazonaws.location#DeletePlaceIndex"
+ },
+ "list": {
+ "target": "com.amazonaws.location#ListPlaceIndexes"
+ },
+ "operations": [
+ {
+ "target": "com.amazonaws.location#SearchPlaceIndexForPosition"
+ },
+ {
+ "target": "com.amazonaws.location#SearchPlaceIndexForText"
+ }
+ ],
+ "traits": {
+ "aws.api#arn": {
+ "template": "place-index/{IndexName}",
+ "absolute": false,
+ "noAccount": false,
+ "noRegion": false
+ },
+ "aws.iam#disableConditionKeyInference": {}
+ }
+ },
+ "com.amazonaws.location#PlaceIndexSearchResultLimit": {
+ "type": "integer",
+ "traits": {
+ "smithy.api#range": {
+ "min": 1,
+ "max": 50
+ }
+ }
+ },
+ "com.amazonaws.location#Position": {
+ "type": "list",
+ "member": {
+ "target": "smithy.api#Double"
+ },
+ "traits": {
+ "smithy.api#externalDocumentation": {
+ "Documentation": "https://tools.ietf.org/html/rfc7946#section-3.1.1"
+ },
+ "smithy.api#length": {
+ "min": 2,
+ "max": 2
+ },
+ "smithy.api#sensitive": {}
+ }
+ },
+ "com.amazonaws.location#PricingPlan": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "RequestBasedUsage",
+ "documentation": "This pricing plan should be used for request based billing."
+ },
+ {
+ "value": "MobileAssetTracking",
+ "documentation": "This pricing plan must be picked for mobile asset tracking use cases."
+ },
+ {
+ "value": "MobileAssetManagement",
+ "documentation": "This pricing plan must be picked for mobile asset management use cases"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.location#PutGeofence": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#PutGeofenceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#PutGeofenceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#ConflictException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Stores a geofence geometry in a given geofence collection, or updates the geometry of\n an existing geofence if a geofence ID is included in the request.
",
+ "smithy.api#endpoint": {
+ "hostPrefix": "geofencing."
+ },
+ "smithy.api#http": {
+ "method": "PUT",
+ "uri": "/geofencing/v0/collections/{CollectionName}/geofences/{GeofenceId}",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.location#PutGeofenceRequest": {
+ "type": "structure",
+ "members": {
+ "CollectionName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The geofence collection to store the geofence in.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "GeofenceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "An identifier for the geofence. For example, ExampleGeofence-1
.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "Geometry": {
+ "target": "com.amazonaws.location#GeofenceGeometry",
+ "traits": {
+ "smithy.api#documentation": "Contains the polygon details to specify the position of the geofence.
\n \n Each geofence polygon can have a maximum of 1,000 vertices.
\n ",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#PutGeofenceResponse": {
+ "type": "structure",
+ "members": {
+ "GeofenceId": {
+ "target": "com.amazonaws.location#Id",
+ "traits": {
+ "smithy.api#documentation": "The geofence identifier entered in the request.
",
+ "smithy.api#required": {}
+ }
+ },
+ "CreateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the geofence was created in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
\n
",
+ "smithy.api#required": {}
+ }
+ },
+ "UpdateTime": {
+ "target": "com.amazonaws.location#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The timestamp for when the geofence was last updated in ISO 8601 \n format: YYYY-MM-DDThh:mm:ss.sssZ
\n
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#ResourceDescription": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 1000
+ }
+ }
+ },
+ "com.amazonaws.location#ResourceName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 100
+ },
+ "smithy.api#pattern": "^[-._\\w]+$"
+ }
+ },
+ "com.amazonaws.location#ResourceNotFoundException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#jsonName": "message",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The resource that you've entered was not found in your AWS account.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 404
+ }
+ },
+ "com.amazonaws.location#SearchForPositionResult": {
+ "type": "structure",
+ "members": {
+ "Place": {
+ "target": "com.amazonaws.location#Place",
+ "traits": {
+ "smithy.api#documentation": "Contains details about the relevant point of interest.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Specifies a single point of interest, or Place as a result of a search query obtained\n from a dataset configured in the Place index Resource.
"
+ }
+ },
+ "com.amazonaws.location#SearchForPositionResultList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#SearchForPositionResult"
+ }
+ },
+ "com.amazonaws.location#SearchForTextResult": {
+ "type": "structure",
+ "members": {
+ "Place": {
+ "target": "com.amazonaws.location#Place",
+ "traits": {
+ "smithy.api#documentation": "Contains details about the relevant point of interest.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains relevant Places returned by calling\n SearchPlaceIndexForText
.
"
+ }
+ },
+ "com.amazonaws.location#SearchForTextResultList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#SearchForTextResult"
+ }
+ },
+ "com.amazonaws.location#SearchPlaceIndexForPosition": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#SearchPlaceIndexForPositionRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#SearchPlaceIndexForPositionResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Reverse geocodes a given coordinate and returns a legible address. Allows you to search\n for Places or points of interest near a given position.
\n \n By using Places, you agree that AWS may transmit your API queries to your selected\n third party provider for processing, which may be outside the AWS region you are\n currently using.
\n Because of licensing limitations, you may not use HERE to store results for locations\n in Japan. For more information, see the AWS Service Terms for Amazon\n Location Service.
\n ",
+ "smithy.api#endpoint": {
+ "hostPrefix": "places."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/places/v0/indexes/{IndexName}/search/position",
+ "code": 200
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#SearchPlaceIndexForPositionRequest": {
+ "type": "structure",
+ "members": {
+ "IndexName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the Place index resource you want to use for the search.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "Position": {
+ "target": "com.amazonaws.location#Position",
+ "traits": {
+ "smithy.api#documentation": "Specifies a coordinate for the query defined by a longitude, and latitude.
\n \n \n The first position is the X coordinate, or longitude.
\n \n \n The second position is the Y coordinate, or latitude.
\n \n \n For example, position=xLongitude&position=yLatitude
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "MaxResults": {
+ "target": "com.amazonaws.location#PlaceIndexSearchResultLimit",
+ "traits": {
+ "smithy.api#documentation": "An optional paramer. The maximum number of results returned per request.
\n Default value: 50
\n
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#SearchPlaceIndexForPositionResponse": {
+ "type": "structure",
+ "members": {
+ "Summary": {
+ "target": "com.amazonaws.location#SearchPlaceIndexForPositionSummary",
+ "traits": {
+ "smithy.api#documentation": "Contains a summary of the request.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Results": {
+ "target": "com.amazonaws.location#SearchForPositionResultList",
+ "traits": {
+ "smithy.api#documentation": "Returns a list of Places closest to the specified position. Each result contains\n additional information about the Places returned.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#SearchPlaceIndexForPositionSummary": {
+ "type": "structure",
+ "members": {
+ "Position": {
+ "target": "com.amazonaws.location#Position",
+ "traits": {
+ "smithy.api#documentation": "The position given in the reverse geocoding request.
",
+ "smithy.api#required": {}
+ }
+ },
+ "MaxResults": {
+ "target": "com.amazonaws.location#PlaceIndexSearchResultLimit",
+ "traits": {
+ "smithy.api#documentation": "An optional parameter. The maximum number of results returned per request.
\n Default value: 50
\n
"
+ }
+ },
+ "DataSource": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The data provider of geospatial data. Indicates one of the available providers:
\n \n \n Esri
\n \n \n HERE
\n \n \n For additional details on data providers, see the Amazon Location Service data providers page .
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "A summary of the reverse geocoding request sent using SearchPlaceIndexForPosition
.
"
+ }
+ },
+ "com.amazonaws.location#SearchPlaceIndexForText": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.location#SearchPlaceIndexForTextRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.location#SearchPlaceIndexForTextResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.location#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.location#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.location#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.location#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.location#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Geocodes free-form text, such as an address, name, city, or region to allow you to\n search for Places or points of interest.
\n Includes the option to apply additional parameters to narrow your list of\n results.
\n \n You can search for places near a given position using BiasPosition
, or\n filter results within a bounding box using FilterBBox
. Providing both\n parameters simultaneously returns an error.
\n \n \n By using Places, you agree that AWS may transmit your API queries to your selected\n third party provider for processing, which may be outside the AWS region you are\n currently using.
\n Also, when using HERE as your data provider, you may not (a) use HERE Places for\n Asset Management, or (b) select the Storage
option for the\n IntendedUse
parameter when requesting Places in Japan. For more\n information, see the AWS Service\n Terms for Amazon Location Service.
\n ",
+ "smithy.api#endpoint": {
+ "hostPrefix": "places."
+ },
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/places/v0/indexes/{IndexName}/search/text",
+ "code": 200
+ },
+ "smithy.api#readonly": {}
+ }
+ },
+ "com.amazonaws.location#SearchPlaceIndexForTextRequest": {
+ "type": "structure",
+ "members": {
+ "IndexName": {
+ "target": "com.amazonaws.location#ResourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the Place index resource you want to use for the search.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "Text": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The address, name,\n city, or region to be used in the search. In free-form text format. For example, 123 Any\n Street
.
",
+ "smithy.api#length": {
+ "min": 1,
+ "max": 200
+ },
+ "smithy.api#required": {},
+ "smithy.api#sensitive": {}
+ }
+ },
+ "BiasPosition": {
+ "target": "com.amazonaws.location#Position",
+ "traits": {
+ "smithy.api#documentation": "Searches for results closest to the given position. An optional parameter defined by\n longitude, and latitude.
\n \n \n The first bias
position is the X coordinate, or longitude.
\n \n \n The second bias
position is the Y coordinate, or latitude.
\n \n \n For example, bias=xLongitude&bias=yLatitude
.
"
+ }
+ },
+ "FilterBBox": {
+ "target": "com.amazonaws.location#BoundingBox",
+ "traits": {
+ "smithy.api#documentation": "Filters the results by returning only Places within the provided bounding box. An\n optional parameter.
\n The first 2 bbox
parameters describe the lower southwest corner:
\n \n For example, bbox=xLongitudeSW&bbox=yLatitudeSW
.
\n The next bbox
parameters describe the upper northeast corner:
\n \n \n The third bbox
position is the X coordinate, or longitude of the\n upper northeast corner.
\n \n \n The fourth bbox
position is the Y coordinate, or longitude of the\n upper northeast corner.
\n \n \n For example, bbox=xLongitudeNE&bbox=yLatitudeNE
\n
"
+ }
+ },
+ "FilterCountries": {
+ "target": "com.amazonaws.location#CountryCodeList",
+ "traits": {
+ "smithy.api#documentation": "Limits the search to the given a list of countries/regions. An optional\n parameter.
\n "
+ }
+ },
+ "MaxResults": {
+ "target": "com.amazonaws.location#PlaceIndexSearchResultLimit",
+ "traits": {
+ "smithy.api#documentation": "An optional parameter. The maximum number of results returned per request.
\n The default: 50
\n
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#SearchPlaceIndexForTextResponse": {
+ "type": "structure",
+ "members": {
+ "Summary": {
+ "target": "com.amazonaws.location#SearchPlaceIndexForTextSummary",
+ "traits": {
+ "smithy.api#documentation": "Contains a summary of the request. Contains the BiasPosition
,\n DataSource
, FilterBBox
, FilterCountries
,\n MaxResults
, ResultBBox
, and Text
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Results": {
+ "target": "com.amazonaws.location#SearchForTextResultList",
+ "traits": {
+ "smithy.api#documentation": "A list of Places closest to the specified position. Each result contains additional\n information about the specific point of interest.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.location#SearchPlaceIndexForTextSummary": {
+ "type": "structure",
+ "members": {
+ "Text": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The address, name, city or region to be used in the geocoding request. In free-form text\n format. For example, Vancouver
.
",
+ "smithy.api#required": {},
+ "smithy.api#sensitive": {}
+ }
+ },
+ "BiasPosition": {
+ "target": "com.amazonaws.location#Position",
+ "traits": {
+ "smithy.api#documentation": "Contains the coordinates for the bias position entered in the geocoding request.
"
+ }
+ },
+ "FilterBBox": {
+ "target": "com.amazonaws.location#BoundingBox",
+ "traits": {
+ "smithy.api#documentation": "Contains the coordinates for the optional bounding box coordinated entered in the\n geocoding request.
"
+ }
+ },
+ "FilterCountries": {
+ "target": "com.amazonaws.location#CountryCodeList",
+ "traits": {
+ "smithy.api#documentation": "Contains the country filter entered in the geocoding request.
"
+ }
+ },
+ "MaxResults": {
+ "target": "com.amazonaws.location#PlaceIndexSearchResultLimit",
+ "traits": {
+ "smithy.api#documentation": "Contains the maximum number of results indicated for the request.
"
+ }
+ },
+ "ResultBBox": {
+ "target": "com.amazonaws.location#BoundingBox",
+ "traits": {
+ "smithy.api#documentation": "A bounding box that contains the search results within the specified area indicated by\n FilterBBox
. A subset of bounding box specified using\n FilterBBox
.
"
+ }
+ },
+ "DataSource": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The data provider of geospatial data. Indicates one of the available providers:
\n \n \n Esri
\n \n \n HERE
\n \n \n For additional details on data providers, see the Amazon Location Service data providers page .
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "A summary of the geocoding request sent using SearchPlaceIndexForText
.
"
+ }
+ },
+ "com.amazonaws.location#ThrottlingException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#jsonName": "message",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The request was denied due to request throttling.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 429,
+ "smithy.api#retryable": {}
+ }
+ },
+ "com.amazonaws.location#Timestamp": {
+ "type": "timestamp",
+ "traits": {
+ "smithy.api#timestampFormat": "date-time"
+ }
+ },
+ "com.amazonaws.location#Token": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 2000
+ }
+ }
+ },
+ "com.amazonaws.location#TrackerResource": {
+ "type": "resource",
+ "identifiers": {
+ "TrackerName": {
+ "target": "com.amazonaws.location#ResourceName"
+ }
+ },
+ "put": {
+ "target": "com.amazonaws.location#CreateTracker"
+ },
+ "read": {
+ "target": "com.amazonaws.location#DescribeTracker"
+ },
+ "delete": {
+ "target": "com.amazonaws.location#DeleteTracker"
+ },
+ "list": {
+ "target": "com.amazonaws.location#ListTrackers"
+ },
+ "operations": [
+ {
+ "target": "com.amazonaws.location#AssociateTrackerConsumer"
+ },
+ {
+ "target": "com.amazonaws.location#BatchGetDevicePosition"
+ },
+ {
+ "target": "com.amazonaws.location#BatchUpdateDevicePosition"
+ },
+ {
+ "target": "com.amazonaws.location#DisassociateTrackerConsumer"
+ },
+ {
+ "target": "com.amazonaws.location#GetDevicePosition"
+ },
+ {
+ "target": "com.amazonaws.location#GetDevicePositionHistory"
+ },
+ {
+ "target": "com.amazonaws.location#ListTrackerConsumers"
+ }
+ ],
+ "traits": {
+ "aws.api#arn": {
+ "template": "tracker/{TrackerName}",
+ "absolute": false,
+ "noAccount": false,
+ "noRegion": false
+ },
+ "aws.iam#disableConditionKeyInference": {}
+ }
+ },
+ "com.amazonaws.location#ValidationException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#jsonName": "message",
+ "smithy.api#required": {}
+ }
+ },
+ "Reason": {
+ "target": "com.amazonaws.location#ValidationExceptionReason",
+ "traits": {
+ "smithy.api#documentation": "A message with the reason for the validation exception error.
",
+ "smithy.api#jsonName": "reason",
+ "smithy.api#required": {}
+ }
+ },
+ "FieldList": {
+ "target": "com.amazonaws.location#ValidationExceptionFieldList",
+ "traits": {
+ "smithy.api#documentation": "The field where the invalid entry was detected.
",
+ "smithy.api#jsonName": "fieldList",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The input failed to meet the constraints specified by the AWS service.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 400
+ }
+ },
+ "com.amazonaws.location#ValidationExceptionField": {
+ "type": "structure",
+ "members": {
+ "Name": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "The field name where the invalid entry was detected.
",
+ "smithy.api#jsonName": "name",
+ "smithy.api#required": {}
+ }
+ },
+ "Message": {
+ "target": "smithy.api#String",
+ "traits": {
+ "smithy.api#documentation": "A message with the reason for the validation exception error.
",
+ "smithy.api#jsonName": "message",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The input failed to meet the constraints specified by the AWS service in a specified\n field.
"
+ }
+ },
+ "com.amazonaws.location#ValidationExceptionFieldList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.location#ValidationExceptionField"
+ }
+ },
+ "com.amazonaws.location#ValidationExceptionReason": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "UnknownOperation",
+ "documentation": "No such operation is supported."
+ },
+ {
+ "value": "Missing",
+ "documentation": "The required input is missing."
+ },
+ {
+ "value": "CannotParse",
+ "documentation": " The input cannot be parsed. For example a required JSON document, ARN identifier,\n date value, or numeric field cannot be parsed.\n"
+ },
+ {
+ "value": "FieldValidationFailed",
+ "documentation": " The input is present and parsable, but it is otherwise invalid. For example, a\n required numeric argument is outside the allowed range.\n"
+ },
+ {
+ "value": "Other",
+ "documentation": "The input is invalid but no more specific reason is applicable."
+ }
+ ]
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/codegen/sdk-codegen/aws-models/lookoutmetrics.2017-07-25.json b/codegen/sdk-codegen/aws-models/lookoutmetrics.2017-07-25.json
new file mode 100644
index 00000000000..a19c4b022d7
--- /dev/null
+++ b/codegen/sdk-codegen/aws-models/lookoutmetrics.2017-07-25.json
@@ -0,0 +1,4196 @@
+{
+ "smithy": "1.0",
+ "metadata": {
+ "suppressions": [
+ {
+ "id": "HttpMethodSemantics",
+ "namespace": "*"
+ },
+ {
+ "id": "HttpResponseCodeSemantics",
+ "namespace": "*"
+ },
+ {
+ "id": "PaginatedTrait",
+ "namespace": "*"
+ },
+ {
+ "id": "HttpHeaderTrait",
+ "namespace": "*"
+ },
+ {
+ "id": "HttpUriConflict",
+ "namespace": "*"
+ },
+ {
+ "id": "Service",
+ "namespace": "*"
+ }
+ ]
+ },
+ "shapes": {
+ "com.amazonaws.lookoutmetrics#AccessDeniedException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "com.amazonaws.lookoutmetrics#Message",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "You do not have sufficient permissions to perform this action.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 403
+ }
+ },
+ "com.amazonaws.lookoutmetrics#Action": {
+ "type": "structure",
+ "members": {
+ "SNSConfiguration": {
+ "target": "com.amazonaws.lookoutmetrics#SNSConfiguration",
+ "traits": {
+ "smithy.api#documentation": "A configuration for an Amazon SNS channel.
"
+ }
+ },
+ "LambdaConfiguration": {
+ "target": "com.amazonaws.lookoutmetrics#LambdaConfiguration",
+ "traits": {
+ "smithy.api#documentation": "A configuration for an AWS Lambda channel.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "A configuration that specifies the action to perform when anomalies are detected.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ActivateAnomalyDetector": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#ActivateAnomalyDetectorRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#ActivateAnomalyDetectorResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ConflictException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Activates an anomaly detector.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/ActivateAnomalyDetector",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ActivateAnomalyDetectorRequest": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the anomaly detector.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ActivateAnomalyDetectorResponse": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.lookoutmetrics#AggregationFunction": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "AVG",
+ "name": "AVG"
+ },
+ {
+ "value": "SUM",
+ "name": "SUM"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.lookoutmetrics#Alert": {
+ "type": "structure",
+ "members": {
+ "Action": {
+ "target": "com.amazonaws.lookoutmetrics#Action",
+ "traits": {
+ "smithy.api#documentation": "Action that will be triggered when there is an alert.
"
+ }
+ },
+ "AlertDescription": {
+ "target": "com.amazonaws.lookoutmetrics#AlertDescription",
+ "traits": {
+ "smithy.api#documentation": "A description of the alert.
"
+ }
+ },
+ "AlertArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the alert.
"
+ }
+ },
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the detector to which the alert is attached.
"
+ }
+ },
+ "AlertName": {
+ "target": "com.amazonaws.lookoutmetrics#AlertName",
+ "traits": {
+ "smithy.api#documentation": "The name of the alert.
"
+ }
+ },
+ "AlertSensitivityThreshold": {
+ "target": "com.amazonaws.lookoutmetrics#SensitivityThreshold",
+ "traits": {
+ "smithy.api#documentation": "The minimum severity for an anomaly to trigger the alert.
"
+ }
+ },
+ "AlertType": {
+ "target": "com.amazonaws.lookoutmetrics#AlertType",
+ "traits": {
+ "smithy.api#documentation": "The type of the alert.
"
+ }
+ },
+ "AlertStatus": {
+ "target": "com.amazonaws.lookoutmetrics#AlertStatus",
+ "traits": {
+ "smithy.api#documentation": "The status of the alert.
"
+ }
+ },
+ "LastModificationTime": {
+ "target": "com.amazonaws.lookoutmetrics#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The time at which the alert was last modified.
"
+ }
+ },
+ "CreationTime": {
+ "target": "com.amazonaws.lookoutmetrics#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The time at which the alert was created.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "A configuration for Amazon SNS-integrated notifications.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AlertDescription": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ },
+ "smithy.api#pattern": ".*\\S.*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AlertName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 63
+ },
+ "smithy.api#pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AlertStatus": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "ACTIVE",
+ "name": "ACTIVE"
+ },
+ {
+ "value": "INACTIVE",
+ "name": "INACTIVE"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AlertSummary": {
+ "type": "structure",
+ "members": {
+ "AlertArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the alert.
"
+ }
+ },
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the detector to which the alert is attached.
"
+ }
+ },
+ "AlertName": {
+ "target": "com.amazonaws.lookoutmetrics#AlertName",
+ "traits": {
+ "smithy.api#documentation": "The name of the alert.
"
+ }
+ },
+ "AlertSensitivityThreshold": {
+ "target": "com.amazonaws.lookoutmetrics#SensitivityThreshold",
+ "traits": {
+ "smithy.api#documentation": "The minimum severity for an anomaly to trigger the alert.
"
+ }
+ },
+ "AlertType": {
+ "target": "com.amazonaws.lookoutmetrics#AlertType",
+ "traits": {
+ "smithy.api#documentation": "The type of the alert.
"
+ }
+ },
+ "AlertStatus": {
+ "target": "com.amazonaws.lookoutmetrics#AlertStatus",
+ "traits": {
+ "smithy.api#documentation": "The status of the alert.
"
+ }
+ },
+ "LastModificationTime": {
+ "target": "com.amazonaws.lookoutmetrics#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The time at which the alert was last modified.
"
+ }
+ },
+ "CreationTime": {
+ "target": "com.amazonaws.lookoutmetrics#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The time at which the alert was created.
"
+ }
+ },
+ "Tags": {
+ "target": "com.amazonaws.lookoutmetrics#TagMap",
+ "traits": {
+ "smithy.api#documentation": "The alert's tags .
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Provides a summary of an alert's configuration.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AlertSummaryList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#AlertSummary"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AlertType": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "SNS",
+ "name": "SNS"
+ },
+ {
+ "value": "LAMBDA",
+ "name": "LAMBDA"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AnomalyDetectionTaskStatus": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "PENDING",
+ "name": "PENDING"
+ },
+ {
+ "value": "IN_PROGRESS",
+ "name": "IN_PROGRESS"
+ },
+ {
+ "value": "COMPLETED",
+ "name": "COMPLETED"
+ },
+ {
+ "value": "FAILED",
+ "name": "FAILED"
+ },
+ {
+ "value": "FAILED_TO_SCHEDULE",
+ "name": "FAILED_TO_SCHEDULE"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AnomalyDetectionTaskStatusMessage": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 256
+ },
+ "smithy.api#pattern": ".*\\S.*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AnomalyDetectorConfig": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorFrequency": {
+ "target": "com.amazonaws.lookoutmetrics#Frequency",
+ "traits": {
+ "smithy.api#documentation": "The frequency at which the detector analyzes its source data.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains information about a detector's configuration.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AnomalyDetectorConfigSummary": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorFrequency": {
+ "target": "com.amazonaws.lookoutmetrics#Frequency",
+ "traits": {
+ "smithy.api#documentation": "The interval at which the detector analyzes its source data.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains information about a detector's configuration.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AnomalyDetectorDescription": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 256
+ },
+ "smithy.api#pattern": ".*\\S.*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AnomalyDetectorName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 63
+ },
+ "smithy.api#pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AnomalyDetectorStatus": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "ACTIVE",
+ "name": "ACTIVE"
+ },
+ {
+ "value": "ACTIVATING",
+ "name": "ACTIVATING"
+ },
+ {
+ "value": "DELETING",
+ "name": "DELETING"
+ },
+ {
+ "value": "FAILED",
+ "name": "FAILED"
+ },
+ {
+ "value": "INACTIVE",
+ "name": "INACTIVE"
+ },
+ {
+ "value": "BACK_TEST_ACTIVATING",
+ "name": "BACK_TEST_ACTIVATING"
+ },
+ {
+ "value": "BACK_TEST_ACTIVE",
+ "name": "BACK_TEST_ACTIVE"
+ },
+ {
+ "value": "BACK_TEST_COMPLETE",
+ "name": "BACK_TEST_COMPLETE"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AnomalyDetectorSummary": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the detector.
"
+ }
+ },
+ "AnomalyDetectorName": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectorName",
+ "traits": {
+ "smithy.api#documentation": "The name of the detector.
"
+ }
+ },
+ "AnomalyDetectorDescription": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectorDescription",
+ "traits": {
+ "smithy.api#documentation": "A description of the detector.
"
+ }
+ },
+ "CreationTime": {
+ "target": "com.amazonaws.lookoutmetrics#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The time at which the detector was created.
"
+ }
+ },
+ "LastModificationTime": {
+ "target": "com.amazonaws.lookoutmetrics#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The time at which the detector was last modified.
"
+ }
+ },
+ "Status": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectorStatus",
+ "traits": {
+ "smithy.api#documentation": "The status of detector.
"
+ }
+ },
+ "Tags": {
+ "target": "com.amazonaws.lookoutmetrics#TagMap",
+ "traits": {
+ "smithy.api#documentation": "The detector's tags .
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains information about an an anomaly detector.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AnomalyDetectorSummaryList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectorSummary"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AnomalyGroup": {
+ "type": "structure",
+ "members": {
+ "StartTime": {
+ "target": "com.amazonaws.lookoutmetrics#TimestampString",
+ "traits": {
+ "smithy.api#documentation": "The start time for the group.
"
+ }
+ },
+ "EndTime": {
+ "target": "com.amazonaws.lookoutmetrics#TimestampString",
+ "traits": {
+ "smithy.api#documentation": "The end time for the group.
"
+ }
+ },
+ "AnomalyGroupId": {
+ "target": "com.amazonaws.lookoutmetrics#UUID",
+ "traits": {
+ "smithy.api#documentation": "The ID of the anomaly group.
"
+ }
+ },
+ "AnomalyGroupScore": {
+ "target": "com.amazonaws.lookoutmetrics#Score",
+ "traits": {
+ "smithy.api#documentation": "The severity score of the group.
"
+ }
+ },
+ "PrimaryMetricName": {
+ "target": "com.amazonaws.lookoutmetrics#MetricName",
+ "traits": {
+ "smithy.api#documentation": "The name of the primary affected measure for the group.
"
+ }
+ },
+ "MetricLevelImpactList": {
+ "target": "com.amazonaws.lookoutmetrics#MetricLevelImpactList",
+ "traits": {
+ "smithy.api#documentation": "A list of measures affected by the anomaly.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "A group of anomalous metrics
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AnomalyGroupStatistics": {
+ "type": "structure",
+ "members": {
+ "EvaluationStartDate": {
+ "target": "com.amazonaws.lookoutmetrics#TimestampString",
+ "traits": {
+ "smithy.api#documentation": "The start of the time range that was searched.
"
+ }
+ },
+ "TotalCount": {
+ "target": "com.amazonaws.lookoutmetrics#Integer",
+ "traits": {
+ "smithy.api#documentation": "The number of groups found.
"
+ }
+ },
+ "ItemizedMetricStatsList": {
+ "target": "com.amazonaws.lookoutmetrics#ItemizedMetricStatsList",
+ "traits": {
+ "smithy.api#documentation": "Statistics for individual metrics within the group.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Aggregated statistics for a group of anomalous metrics.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AnomalyGroupSummary": {
+ "type": "structure",
+ "members": {
+ "StartTime": {
+ "target": "com.amazonaws.lookoutmetrics#TimestampString",
+ "traits": {
+ "smithy.api#documentation": "The start time for the group.
"
+ }
+ },
+ "EndTime": {
+ "target": "com.amazonaws.lookoutmetrics#TimestampString",
+ "traits": {
+ "smithy.api#documentation": "The end time for the group.
"
+ }
+ },
+ "AnomalyGroupId": {
+ "target": "com.amazonaws.lookoutmetrics#UUID",
+ "traits": {
+ "smithy.api#documentation": "The ID of the anomaly group.
"
+ }
+ },
+ "AnomalyGroupScore": {
+ "target": "com.amazonaws.lookoutmetrics#Score",
+ "traits": {
+ "smithy.api#documentation": "The severity score of the group.
"
+ }
+ },
+ "PrimaryMetricName": {
+ "target": "com.amazonaws.lookoutmetrics#MetricName",
+ "traits": {
+ "smithy.api#documentation": "The name of the primary affected measure for the group.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Details about a group of anomalous metrics.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AnomalyGroupSummaryList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyGroupSummary"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AnomalyGroupTimeSeries": {
+ "type": "structure",
+ "members": {
+ "AnomalyGroupId": {
+ "target": "com.amazonaws.lookoutmetrics#UUID",
+ "traits": {
+ "smithy.api#documentation": "The ID of the anomaly group.
",
+ "smithy.api#required": {}
+ }
+ },
+ "TimeSeriesId": {
+ "target": "com.amazonaws.lookoutmetrics#TimeSeriesId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the metric.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "An anomalous metric in an anomaly group.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AnomalyGroupTimeSeriesFeedback": {
+ "type": "structure",
+ "members": {
+ "AnomalyGroupId": {
+ "target": "com.amazonaws.lookoutmetrics#UUID",
+ "traits": {
+ "smithy.api#documentation": "The ID of the anomaly group.
",
+ "smithy.api#required": {}
+ }
+ },
+ "TimeSeriesId": {
+ "target": "com.amazonaws.lookoutmetrics#TimeSeriesId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the metric.
",
+ "smithy.api#required": {}
+ }
+ },
+ "IsAnomaly": {
+ "target": "com.amazonaws.lookoutmetrics#Boolean",
+ "traits": {
+ "smithy.api#documentation": "Feedback on whether the metric is a legitimate anomaly.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Feedback for an anomalous metric.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#AppFlowConfig": {
+ "type": "structure",
+ "members": {
+ "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": {}
+ }
+ },
+ "FlowName": {
+ "target": "com.amazonaws.lookoutmetrics#FlowName",
+ "traits": {
+ "smithy.api#documentation": "The name of the flow.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Details about an Amazon AppFlow flow datasource.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#Arn": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ },
+ "smithy.api#pattern": "arn:([a-z\\d-]+):.*:.*:.*:.+"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#BackTestAnomalyDetector": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#BackTestAnomalyDetectorRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#BackTestAnomalyDetectorResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Runs a backtest for anomaly detection for the specified resource.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/BackTestAnomalyDetector",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#BackTestAnomalyDetectorRequest": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the anomaly detector.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#BackTestAnomalyDetectorResponse": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.lookoutmetrics#Boolean": {
+ "type": "boolean",
+ "traits": {
+ "smithy.api#box": {}
+ }
+ },
+ "com.amazonaws.lookoutmetrics#CSVFileCompression": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "NONE",
+ "name": "NONE"
+ },
+ {
+ "value": "GZIP",
+ "name": "GZIP"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.lookoutmetrics#Charset": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 63
+ },
+ "smithy.api#pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#CloudWatchConfig": {
+ "type": "structure",
+ "members": {
+ "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": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Details about an Amazon CloudWatch datasource.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ColumnName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 63
+ },
+ "smithy.api#pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ConflictException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "com.amazonaws.lookoutmetrics#Message",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ },
+ "ResourceId": {
+ "target": "com.amazonaws.lookoutmetrics#ResourceId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the resource.
"
+ }
+ },
+ "ResourceType": {
+ "target": "com.amazonaws.lookoutmetrics#ResourceType",
+ "traits": {
+ "smithy.api#documentation": "The type of the resource.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "There was a conflict processing the request. Try your request again.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 409
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ContributionMatrix": {
+ "type": "structure",
+ "members": {
+ "DimensionContributionList": {
+ "target": "com.amazonaws.lookoutmetrics#DimensionContributionList",
+ "traits": {
+ "smithy.api#documentation": "A list of contributing dimensions.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Details about dimensions that contributed to an anomaly.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#CreateAlert": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#CreateAlertRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#CreateAlertResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ConflictException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ServiceQuotaExceededException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Creates an alert for an anomaly detector.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/CreateAlert",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#CreateAlertRequest": {
+ "type": "structure",
+ "members": {
+ "AlertName": {
+ "target": "com.amazonaws.lookoutmetrics#AlertName",
+ "traits": {
+ "smithy.api#documentation": "The name of the alert.
",
+ "smithy.api#required": {}
+ }
+ },
+ "AlertSensitivityThreshold": {
+ "target": "com.amazonaws.lookoutmetrics#SensitivityThreshold",
+ "traits": {
+ "smithy.api#documentation": "An integer from 0 to 100 specifying the alert sensitivity threshold.
",
+ "smithy.api#required": {}
+ }
+ },
+ "AlertDescription": {
+ "target": "com.amazonaws.lookoutmetrics#AlertDescription",
+ "traits": {
+ "smithy.api#documentation": "A description of the alert.
"
+ }
+ },
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the detector to which the alert is attached.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Action": {
+ "target": "com.amazonaws.lookoutmetrics#Action",
+ "traits": {
+ "smithy.api#documentation": "Action that will be triggered when there is an alert.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Tags": {
+ "target": "com.amazonaws.lookoutmetrics#TagMap",
+ "traits": {
+ "smithy.api#documentation": "A list of tags to apply to the alert.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#CreateAlertResponse": {
+ "type": "structure",
+ "members": {
+ "AlertArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the alert.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#CreateAnomalyDetector": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#CreateAnomalyDetectorRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#CreateAnomalyDetectorResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ConflictException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ServiceQuotaExceededException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Creates an anomaly detector.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/CreateAnomalyDetector",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#CreateAnomalyDetectorRequest": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorName": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectorName",
+ "traits": {
+ "smithy.api#documentation": "The name of the detector.
",
+ "smithy.api#required": {}
+ }
+ },
+ "AnomalyDetectorDescription": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectorDescription",
+ "traits": {
+ "smithy.api#documentation": "A description of the detector.
"
+ }
+ },
+ "AnomalyDetectorConfig": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectorConfig",
+ "traits": {
+ "smithy.api#documentation": "Contains information about the configuration of the anomaly detector.
",
+ "smithy.api#required": {}
+ }
+ },
+ "KmsKeyArn": {
+ "target": "com.amazonaws.lookoutmetrics#KmsKeyArn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the KMS key to use to encrypt your data.
"
+ }
+ },
+ "Tags": {
+ "target": "com.amazonaws.lookoutmetrics#TagMap",
+ "traits": {
+ "smithy.api#documentation": "A list of tags to apply to the anomaly detector.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#CreateAnomalyDetectorResponse": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the detector.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#CreateMetricSet": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#CreateMetricSetRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#CreateMetricSetResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ConflictException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ServiceQuotaExceededException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Creates a dataset.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/CreateMetricSet",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#CreateMetricSetRequest": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the anomaly detector that will use the dataset.
",
+ "smithy.api#required": {}
+ }
+ },
+ "MetricSetName": {
+ "target": "com.amazonaws.lookoutmetrics#MetricSetName",
+ "traits": {
+ "smithy.api#documentation": "The name of the dataset.
",
+ "smithy.api#required": {}
+ }
+ },
+ "MetricSetDescription": {
+ "target": "com.amazonaws.lookoutmetrics#MetricSetDescription",
+ "traits": {
+ "smithy.api#documentation": "A description of the dataset you are creating.
"
+ }
+ },
+ "MetricList": {
+ "target": "com.amazonaws.lookoutmetrics#MetricList",
+ "traits": {
+ "smithy.api#documentation": "A list of metrics that the dataset will contain.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Offset": {
+ "target": "com.amazonaws.lookoutmetrics#Offset",
+ "traits": {
+ "smithy.api#box": {},
+ "smithy.api#documentation": "After an interval ends, the amount of time that the detector waits before importing data.
"
+ }
+ },
+ "TimestampColumn": {
+ "target": "com.amazonaws.lookoutmetrics#TimestampColumn",
+ "traits": {
+ "smithy.api#documentation": "Contains information about the column used for tracking time in your source data.
"
+ }
+ },
+ "DimensionList": {
+ "target": "com.amazonaws.lookoutmetrics#DimensionList",
+ "traits": {
+ "smithy.api#documentation": "A list of the fields you want to treat as dimensions.
"
+ }
+ },
+ "MetricSetFrequency": {
+ "target": "com.amazonaws.lookoutmetrics#Frequency",
+ "traits": {
+ "smithy.api#documentation": "The frequency with which the source data will be analyzed for anomalies.
"
+ }
+ },
+ "MetricSource": {
+ "target": "com.amazonaws.lookoutmetrics#MetricSource",
+ "traits": {
+ "smithy.api#documentation": "Contains information about how the source data should be interpreted.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Timezone": {
+ "target": "com.amazonaws.lookoutmetrics#Timezone",
+ "traits": {
+ "smithy.api#documentation": "The time zone in which your source data was recorded.
"
+ }
+ },
+ "Tags": {
+ "target": "com.amazonaws.lookoutmetrics#TagMap",
+ "traits": {
+ "smithy.api#documentation": "A list of tags to apply to the dataset.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#CreateMetricSetResponse": {
+ "type": "structure",
+ "members": {
+ "MetricSetArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the dataset.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#CsvFormatDescriptor": {
+ "type": "structure",
+ "members": {
+ "FileCompression": {
+ "target": "com.amazonaws.lookoutmetrics#CSVFileCompression",
+ "traits": {
+ "smithy.api#documentation": "The level of compression of the source CSV file.
"
+ }
+ },
+ "Charset": {
+ "target": "com.amazonaws.lookoutmetrics#Charset",
+ "traits": {
+ "smithy.api#documentation": "The character set in which the source CSV file is written.
"
+ }
+ },
+ "ContainsHeader": {
+ "target": "com.amazonaws.lookoutmetrics#Boolean",
+ "traits": {
+ "smithy.api#documentation": "Whether or not the source CSV file contains a header.
"
+ }
+ },
+ "Delimiter": {
+ "target": "com.amazonaws.lookoutmetrics#Delimiter",
+ "traits": {
+ "smithy.api#documentation": "The character used to delimit the source CSV file.
"
+ }
+ },
+ "HeaderList": {
+ "target": "com.amazonaws.lookoutmetrics#HeaderList",
+ "traits": {
+ "smithy.api#documentation": "A list of the source CSV file's headers, if any.
"
+ }
+ },
+ "QuoteSymbol": {
+ "target": "com.amazonaws.lookoutmetrics#QuoteSymbol",
+ "traits": {
+ "smithy.api#documentation": "The character used as a quote character.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains information about how a source CSV data file should be analyzed.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DataItem": {
+ "type": "string"
+ },
+ "com.amazonaws.lookoutmetrics#DatabaseHost": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 253
+ },
+ "smithy.api#pattern": ".*\\S.*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DatabasePort": {
+ "type": "integer",
+ "traits": {
+ "smithy.api#range": {
+ "min": 1,
+ "max": 65535
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DateTimeFormat": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 63
+ },
+ "smithy.api#pattern": ".*\\S.*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DeleteAlert": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#DeleteAlertRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#DeleteAlertResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Deletes an alert.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/DeleteAlert",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DeleteAlertRequest": {
+ "type": "structure",
+ "members": {
+ "AlertArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the alert to delete.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DeleteAlertResponse": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.lookoutmetrics#DeleteAnomalyDetector": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#DeleteAnomalyDetectorRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#DeleteAnomalyDetectorResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ConflictException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Deletes a detector. Deleting an anomaly detector will delete all of its corresponding resources including any\n configured datasets and alerts.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/DeleteAnomalyDetector",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DeleteAnomalyDetectorRequest": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the detector to delete.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DeleteAnomalyDetectorResponse": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.lookoutmetrics#Delimiter": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 1
+ },
+ "smithy.api#pattern": "[^\\r\\n]"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DescribeAlert": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#DescribeAlertRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#DescribeAlertResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Describes an alert.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/DescribeAlert",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DescribeAlertRequest": {
+ "type": "structure",
+ "members": {
+ "AlertArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the alert to describe.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DescribeAlertResponse": {
+ "type": "structure",
+ "members": {
+ "Alert": {
+ "target": "com.amazonaws.lookoutmetrics#Alert",
+ "traits": {
+ "smithy.api#documentation": "Contains information about an alert.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DescribeAnomalyDetectionExecutions": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#DescribeAnomalyDetectionExecutionsRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#DescribeAnomalyDetectionExecutionsResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Returns information about the status of the specified anomaly detection jobs.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/DescribeAnomalyDetectionExecutions",
+ "code": 200
+ },
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "pageSize": "MaxResults"
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DescribeAnomalyDetectionExecutionsRequest": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the anomaly detector.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Timestamp": {
+ "target": "com.amazonaws.lookoutmetrics#TimestampString",
+ "traits": {
+ "smithy.api#documentation": "The timestamp of the anomaly detection job.
"
+ }
+ },
+ "MaxResults": {
+ "target": "com.amazonaws.lookoutmetrics#MaxResults",
+ "traits": {
+ "smithy.api#box": {},
+ "smithy.api#documentation": "The number of items to return in the response.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.lookoutmetrics#NextToken",
+ "traits": {
+ "smithy.api#documentation": "Specify the pagination token that's returned by a previous request to retrieve the next page of results.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DescribeAnomalyDetectionExecutionsResponse": {
+ "type": "structure",
+ "members": {
+ "ExecutionList": {
+ "target": "com.amazonaws.lookoutmetrics#ExecutionList",
+ "traits": {
+ "smithy.api#documentation": "A list of detection jobs.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.lookoutmetrics#NextToken",
+ "traits": {
+ "smithy.api#documentation": "The pagination token that's included if more results are available.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DescribeAnomalyDetector": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#DescribeAnomalyDetectorRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#DescribeAnomalyDetectorResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Describes a detector.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/DescribeAnomalyDetector",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DescribeAnomalyDetectorRequest": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the detector to describe.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DescribeAnomalyDetectorResponse": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the detector.
"
+ }
+ },
+ "AnomalyDetectorName": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectorName",
+ "traits": {
+ "smithy.api#documentation": "The name of the detector.
"
+ }
+ },
+ "AnomalyDetectorDescription": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectorDescription",
+ "traits": {
+ "smithy.api#documentation": "A description of the detector.
"
+ }
+ },
+ "AnomalyDetectorConfig": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectorConfigSummary",
+ "traits": {
+ "smithy.api#documentation": "Contains information about the detector's configuration.
"
+ }
+ },
+ "CreationTime": {
+ "target": "com.amazonaws.lookoutmetrics#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The time at which the detector was created.
"
+ }
+ },
+ "LastModificationTime": {
+ "target": "com.amazonaws.lookoutmetrics#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The time at which the detector was last modified.
"
+ }
+ },
+ "Status": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectorStatus",
+ "traits": {
+ "smithy.api#documentation": "The status of the detector.
"
+ }
+ },
+ "FailureReason": {
+ "target": "com.amazonaws.lookoutmetrics#ErrorMessage",
+ "traits": {
+ "smithy.api#documentation": "The reason that the detector failed, if any.
"
+ }
+ },
+ "KmsKeyArn": {
+ "target": "com.amazonaws.lookoutmetrics#KmsKeyArn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the KMS key to use to encrypt your data.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DescribeMetricSet": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#DescribeMetricSetRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#DescribeMetricSetResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Describes a dataset.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/DescribeMetricSet",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DescribeMetricSetRequest": {
+ "type": "structure",
+ "members": {
+ "MetricSetArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the dataset.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DescribeMetricSetResponse": {
+ "type": "structure",
+ "members": {
+ "MetricSetArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the dataset.
"
+ }
+ },
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the detector that contains the dataset.
"
+ }
+ },
+ "MetricSetName": {
+ "target": "com.amazonaws.lookoutmetrics#MetricSetName",
+ "traits": {
+ "smithy.api#documentation": "The name of the dataset.
"
+ }
+ },
+ "MetricSetDescription": {
+ "target": "com.amazonaws.lookoutmetrics#MetricSetDescription",
+ "traits": {
+ "smithy.api#documentation": "The dataset's description.
"
+ }
+ },
+ "CreationTime": {
+ "target": "com.amazonaws.lookoutmetrics#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The time at which the dataset was created.
"
+ }
+ },
+ "LastModificationTime": {
+ "target": "com.amazonaws.lookoutmetrics#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The time at which the dataset was last modified.
"
+ }
+ },
+ "Offset": {
+ "target": "com.amazonaws.lookoutmetrics#Offset",
+ "traits": {
+ "smithy.api#box": {},
+ "smithy.api#documentation": "The offset for the dataset.
"
+ }
+ },
+ "MetricList": {
+ "target": "com.amazonaws.lookoutmetrics#MetricList",
+ "traits": {
+ "smithy.api#documentation": "A list of the metrics defined by the dataset.
"
+ }
+ },
+ "TimestampColumn": {
+ "target": "com.amazonaws.lookoutmetrics#TimestampColumn",
+ "traits": {
+ "smithy.api#documentation": "Contains information about the column used for tracking time in your source data.
"
+ }
+ },
+ "DimensionList": {
+ "target": "com.amazonaws.lookoutmetrics#DimensionList",
+ "traits": {
+ "smithy.api#documentation": "A list of the dimensions chosen for analysis.
"
+ }
+ },
+ "MetricSetFrequency": {
+ "target": "com.amazonaws.lookoutmetrics#Frequency",
+ "traits": {
+ "smithy.api#documentation": "The interval at which the data will be analyzed for anomalies.
"
+ }
+ },
+ "Timezone": {
+ "target": "com.amazonaws.lookoutmetrics#Timezone",
+ "traits": {
+ "smithy.api#documentation": "The time zone in which the dataset's data was recorded.
"
+ }
+ },
+ "MetricSource": {
+ "target": "com.amazonaws.lookoutmetrics#MetricSource",
+ "traits": {
+ "smithy.api#documentation": "Contains information about the dataset's source data.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DimensionContribution": {
+ "type": "structure",
+ "members": {
+ "DimensionName": {
+ "target": "com.amazonaws.lookoutmetrics#ColumnName",
+ "traits": {
+ "smithy.api#documentation": "The name of the dimension.
"
+ }
+ },
+ "DimensionValueContributionList": {
+ "target": "com.amazonaws.lookoutmetrics#DimensionValueContributionList",
+ "traits": {
+ "smithy.api#documentation": "A list of dimension values that contributed to the anomaly.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Details about a dimension that contributed to an anomaly.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DimensionContributionList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#DimensionContribution"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DimensionList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#ColumnName"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DimensionNameValue": {
+ "type": "structure",
+ "members": {
+ "DimensionName": {
+ "target": "com.amazonaws.lookoutmetrics#ColumnName",
+ "traits": {
+ "smithy.api#documentation": "The name of the dimension.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DimensionValue": {
+ "target": "com.amazonaws.lookoutmetrics#DimensionValue",
+ "traits": {
+ "smithy.api#documentation": "The value of the dimension.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "A dimension name and value.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DimensionNameValueList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#DimensionNameValue"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DimensionValue": {
+ "type": "string"
+ },
+ "com.amazonaws.lookoutmetrics#DimensionValueContribution": {
+ "type": "structure",
+ "members": {
+ "DimensionValue": {
+ "target": "com.amazonaws.lookoutmetrics#DimensionValue",
+ "traits": {
+ "smithy.api#documentation": "The value of the dimension.
"
+ }
+ },
+ "ContributionScore": {
+ "target": "com.amazonaws.lookoutmetrics#Score",
+ "traits": {
+ "smithy.api#documentation": "The severity score of the value.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The severity of a value of a dimension that contributed to an anomaly.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#DimensionValueContributionList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#DimensionValueContribution"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ErrorMessage": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ExecutionList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#ExecutionStatus"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ExecutionStatus": {
+ "type": "structure",
+ "members": {
+ "Timestamp": {
+ "target": "com.amazonaws.lookoutmetrics#TimestampString",
+ "traits": {
+ "smithy.api#documentation": "The run's timestamp.
"
+ }
+ },
+ "Status": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectionTaskStatus",
+ "traits": {
+ "smithy.api#documentation": "The run's status.
"
+ }
+ },
+ "FailureReason": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectionTaskStatusMessage",
+ "traits": {
+ "smithy.api#documentation": "The reason that the run failed, if applicable.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The status of an anomaly detector run.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#FieldName": {
+ "type": "string"
+ },
+ "com.amazonaws.lookoutmetrics#FileFormatDescriptor": {
+ "type": "structure",
+ "members": {
+ "CsvFormatDescriptor": {
+ "target": "com.amazonaws.lookoutmetrics#CsvFormatDescriptor",
+ "traits": {
+ "smithy.api#documentation": "Contains information about how a source CSV data file should be analyzed.
"
+ }
+ },
+ "JsonFormatDescriptor": {
+ "target": "com.amazonaws.lookoutmetrics#JsonFormatDescriptor",
+ "traits": {
+ "smithy.api#documentation": "Contains information about how a source JSON data file should be analyzed.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains information about a source file's formatting.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#FlowName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ },
+ "smithy.api#pattern": "[a-zA-Z0-9][\\w!@#.-]+"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#Frequency": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "P1D",
+ "name": "P1D"
+ },
+ {
+ "value": "PT1H",
+ "name": "PT1H"
+ },
+ {
+ "value": "PT10M",
+ "name": "PT10M"
+ },
+ {
+ "value": "PT5M",
+ "name": "PT5M"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.lookoutmetrics#GetAnomalyGroup": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#GetAnomalyGroupRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#GetAnomalyGroupResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Returns details about a group of anomalous metrics.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/GetAnomalyGroup",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#GetAnomalyGroupRequest": {
+ "type": "structure",
+ "members": {
+ "AnomalyGroupId": {
+ "target": "com.amazonaws.lookoutmetrics#UUID",
+ "traits": {
+ "smithy.api#documentation": "The ID of the anomaly group.
",
+ "smithy.api#required": {}
+ }
+ },
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the anomaly detector.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#GetAnomalyGroupResponse": {
+ "type": "structure",
+ "members": {
+ "AnomalyGroup": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyGroup",
+ "traits": {
+ "smithy.api#documentation": "Details about the anomaly group.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#GetFeedback": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#GetFeedbackRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#GetFeedbackResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Get feedback for an anomaly group.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/GetFeedback",
+ "code": 200
+ },
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "pageSize": "MaxResults"
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#GetFeedbackRequest": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the anomaly detector.
",
+ "smithy.api#required": {}
+ }
+ },
+ "AnomalyGroupTimeSeriesFeedback": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyGroupTimeSeries",
+ "traits": {
+ "smithy.api#documentation": "The anomalous metric and group ID.
",
+ "smithy.api#required": {}
+ }
+ },
+ "MaxResults": {
+ "target": "com.amazonaws.lookoutmetrics#MaxResults",
+ "traits": {
+ "smithy.api#box": {},
+ "smithy.api#documentation": "The maximum number of results to return.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.lookoutmetrics#NextToken",
+ "traits": {
+ "smithy.api#documentation": "Specify the pagination token that's returned by a previous request to retrieve the next page of results.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#GetFeedbackResponse": {
+ "type": "structure",
+ "members": {
+ "AnomalyGroupTimeSeriesFeedback": {
+ "target": "com.amazonaws.lookoutmetrics#TimeSeriesFeedbackList",
+ "traits": {
+ "smithy.api#documentation": "Feedback for an anomalous metric.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.lookoutmetrics#NextToken",
+ "traits": {
+ "smithy.api#documentation": "The pagination token that's included if more results are available.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#GetSampleData": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#GetSampleDataRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#GetSampleDataResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Returns a selection of sample records from an Amazon S3 datasource.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/GetSampleData",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#GetSampleDataRequest": {
+ "type": "structure",
+ "members": {
+ "S3SourceConfig": {
+ "target": "com.amazonaws.lookoutmetrics#SampleDataS3SourceConfig",
+ "traits": {
+ "smithy.api#documentation": "A datasource bucket in Amazon S3.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#GetSampleDataResponse": {
+ "type": "structure",
+ "members": {
+ "HeaderValues": {
+ "target": "com.amazonaws.lookoutmetrics#HeaderValueList",
+ "traits": {
+ "smithy.api#documentation": "A list of header labels for the records.
"
+ }
+ },
+ "SampleRows": {
+ "target": "com.amazonaws.lookoutmetrics#SampleRows",
+ "traits": {
+ "smithy.api#documentation": "A list of records.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#HeaderList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#ColumnName"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#HeaderValue": {
+ "type": "string"
+ },
+ "com.amazonaws.lookoutmetrics#HeaderValueList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#HeaderValue"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#HistoricalDataPath": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 1024
+ },
+ "smithy.api#pattern": "^s3://[a-z0-9].+$"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#HistoricalDataPathList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#HistoricalDataPath"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 1
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#Integer": {
+ "type": "integer"
+ },
+ "com.amazonaws.lookoutmetrics#InternalServerException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "com.amazonaws.lookoutmetrics#Message",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The request processing has failed because of an unknown error, exception, or failure.
",
+ "smithy.api#error": "server",
+ "smithy.api#httpError": 500
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ItemizedMetricStats": {
+ "type": "structure",
+ "members": {
+ "MetricName": {
+ "target": "com.amazonaws.lookoutmetrics#ColumnName",
+ "traits": {
+ "smithy.api#documentation": "The name of the measure.
"
+ }
+ },
+ "OccurrenceCount": {
+ "target": "com.amazonaws.lookoutmetrics#Integer",
+ "traits": {
+ "smithy.api#documentation": "The number of times that the measure appears.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Aggregated statistics about a measure affected by an anomaly.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ItemizedMetricStatsList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#ItemizedMetricStats"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#JsonFileCompression": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "NONE",
+ "name": "NONE"
+ },
+ {
+ "value": "GZIP",
+ "name": "GZIP"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.lookoutmetrics#JsonFormatDescriptor": {
+ "type": "structure",
+ "members": {
+ "FileCompression": {
+ "target": "com.amazonaws.lookoutmetrics#JsonFileCompression",
+ "traits": {
+ "smithy.api#documentation": "The level of compression of the source CSV file.
"
+ }
+ },
+ "Charset": {
+ "target": "com.amazonaws.lookoutmetrics#Charset",
+ "traits": {
+ "smithy.api#documentation": "The character set in which the source JSON file is written.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains information about how a source JSON data file should be analyzed.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#KmsKeyArn": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 20,
+ "max": 2048
+ },
+ "smithy.api#pattern": "arn:aws.*:kms:.*:[0-9]{12}:key/.*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#LambdaConfiguration": {
+ "type": "structure",
+ "members": {
+ "RoleArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of an IAM role that has permission to invoke the Lambda function.
",
+ "smithy.api#required": {}
+ }
+ },
+ "LambdaArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the Lambda function.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains information about a Lambda configuration.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListAlerts": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#ListAlertsRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#ListAlertsResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Lists the alerts attached to a detector.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/ListAlerts",
+ "code": 200
+ },
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "pageSize": "MaxResults"
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListAlertsRequest": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the alert's detector.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.lookoutmetrics#NextToken",
+ "traits": {
+ "smithy.api#documentation": "If the result of the previous request is truncated, the response includes a NextToken
. To\n retrieve the next set of results, use the token in the next request. Tokens expire after 24 hours.
"
+ }
+ },
+ "MaxResults": {
+ "target": "com.amazonaws.lookoutmetrics#MaxResults",
+ "traits": {
+ "smithy.api#box": {},
+ "smithy.api#documentation": "The maximum number of results that will be displayed by the request.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListAlertsResponse": {
+ "type": "structure",
+ "members": {
+ "AlertSummaryList": {
+ "target": "com.amazonaws.lookoutmetrics#AlertSummaryList",
+ "traits": {
+ "smithy.api#documentation": "Contains information about an alert.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.lookoutmetrics#NextToken",
+ "traits": {
+ "smithy.api#documentation": "If the response is truncated, the service returns this token. To retrieve the next set of results, use this\n token in the next request.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListAnomalyDetectors": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#ListAnomalyDetectorsRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#ListAnomalyDetectorsResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Lists the detectors in the current AWS Region.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/ListAnomalyDetectors",
+ "code": 200
+ },
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "pageSize": "MaxResults"
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListAnomalyDetectorsRequest": {
+ "type": "structure",
+ "members": {
+ "MaxResults": {
+ "target": "com.amazonaws.lookoutmetrics#MaxResults",
+ "traits": {
+ "smithy.api#box": {},
+ "smithy.api#documentation": "The maximum number of results to return.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.lookoutmetrics#NextToken",
+ "traits": {
+ "smithy.api#documentation": "If the result of the previous request was truncated, the response includes a NextToken
. To\n retrieve the next set of results, use the token in the next request. Tokens expire after 24 hours.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListAnomalyDetectorsResponse": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorSummaryList": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectorSummaryList",
+ "traits": {
+ "smithy.api#documentation": "A list of anomaly detectors in the account in the current region.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.lookoutmetrics#NextToken",
+ "traits": {
+ "smithy.api#documentation": "If the response is truncated, the service returns this token. To retrieve the next set of results, use the\n token in the next request.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListAnomalyGroupSummaries": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#ListAnomalyGroupSummariesRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#ListAnomalyGroupSummariesResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Returns a list of anomaly groups.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/ListAnomalyGroupSummaries",
+ "code": 200
+ },
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "pageSize": "MaxResults"
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListAnomalyGroupSummariesRequest": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the anomaly detector.
",
+ "smithy.api#required": {}
+ }
+ },
+ "SensitivityThreshold": {
+ "target": "com.amazonaws.lookoutmetrics#SensitivityThreshold",
+ "traits": {
+ "smithy.api#documentation": "The minimum severity score for inclusion in the output.
",
+ "smithy.api#required": {}
+ }
+ },
+ "MaxResults": {
+ "target": "com.amazonaws.lookoutmetrics#MaxResults",
+ "traits": {
+ "smithy.api#box": {},
+ "smithy.api#documentation": "The maximum number of results to return.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.lookoutmetrics#NextToken",
+ "traits": {
+ "smithy.api#documentation": "Specify the pagination token that's returned by a previous request to retrieve the next page of results.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListAnomalyGroupSummariesResponse": {
+ "type": "structure",
+ "members": {
+ "AnomalyGroupSummaryList": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyGroupSummaryList",
+ "traits": {
+ "smithy.api#documentation": "A list of anomaly group summaries.
"
+ }
+ },
+ "AnomalyGroupStatistics": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyGroupStatistics",
+ "traits": {
+ "smithy.api#documentation": "Aggregated details about the anomaly groups.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.lookoutmetrics#NextToken",
+ "traits": {
+ "smithy.api#documentation": "The pagination token that's included if more results are available.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListAnomalyGroupTimeSeries": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#ListAnomalyGroupTimeSeriesRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#ListAnomalyGroupTimeSeriesResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Gets a list of anomalous metrics for a measure in an anomaly group.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/ListAnomalyGroupTimeSeries",
+ "code": 200
+ },
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "pageSize": "MaxResults"
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListAnomalyGroupTimeSeriesRequest": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the anomaly detector.
",
+ "smithy.api#required": {}
+ }
+ },
+ "AnomalyGroupId": {
+ "target": "com.amazonaws.lookoutmetrics#UUID",
+ "traits": {
+ "smithy.api#documentation": "The ID of the anomaly group.
",
+ "smithy.api#required": {}
+ }
+ },
+ "MetricName": {
+ "target": "com.amazonaws.lookoutmetrics#MetricName",
+ "traits": {
+ "smithy.api#documentation": "The name of the measure field.
",
+ "smithy.api#required": {}
+ }
+ },
+ "MaxResults": {
+ "target": "com.amazonaws.lookoutmetrics#MaxResults",
+ "traits": {
+ "smithy.api#box": {},
+ "smithy.api#documentation": "The maximum number of results to return.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.lookoutmetrics#NextToken",
+ "traits": {
+ "smithy.api#documentation": "Specify the pagination token that's returned by a previous request to retrieve the next page of results.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListAnomalyGroupTimeSeriesResponse": {
+ "type": "structure",
+ "members": {
+ "AnomalyGroupId": {
+ "target": "com.amazonaws.lookoutmetrics#UUID",
+ "traits": {
+ "smithy.api#documentation": "The ID of the anomaly group.
"
+ }
+ },
+ "MetricName": {
+ "target": "com.amazonaws.lookoutmetrics#MetricName",
+ "traits": {
+ "smithy.api#documentation": "The name of the measure field.
"
+ }
+ },
+ "TimestampList": {
+ "target": "com.amazonaws.lookoutmetrics#TimestampList",
+ "traits": {
+ "smithy.api#documentation": "Timestamps for the anomalous metrics.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.lookoutmetrics#NextToken",
+ "traits": {
+ "smithy.api#documentation": "The pagination token that's included if more results are available.
"
+ }
+ },
+ "TimeSeriesList": {
+ "target": "com.amazonaws.lookoutmetrics#TimeSeriesList",
+ "traits": {
+ "smithy.api#documentation": "A list of anomalous metrics.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListMetricSets": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#ListMetricSetsRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#ListMetricSetsResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Lists the datasets in the current AWS Region.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/ListMetricSets",
+ "code": 200
+ },
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken",
+ "pageSize": "MaxResults"
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListMetricSetsRequest": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the anomaly detector containing the metrics sets to list.
"
+ }
+ },
+ "MaxResults": {
+ "target": "com.amazonaws.lookoutmetrics#MaxResults",
+ "traits": {
+ "smithy.api#box": {},
+ "smithy.api#documentation": "The maximum number of results to return.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.lookoutmetrics#NextToken",
+ "traits": {
+ "smithy.api#documentation": "If the result of the previous request was truncated, the response includes a NextToken
. To\n retrieve the next set of results, use the token in the next request. Tokens expire after 24 hours.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListMetricSetsResponse": {
+ "type": "structure",
+ "members": {
+ "MetricSetSummaryList": {
+ "target": "com.amazonaws.lookoutmetrics#MetricSetSummaryList",
+ "traits": {
+ "smithy.api#documentation": "A list of the datasets in the AWS Region, with configuration details for each.
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.lookoutmetrics#NextToken",
+ "traits": {
+ "smithy.api#documentation": "If the response is truncated, the list call returns this token. To retrieve the next set of results, use the\n token in the next list request.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListTagsForResource": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#ListTagsForResourceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#ListTagsForResourceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Gets a list of tags for a detector, dataset, or alert.
",
+ "smithy.api#http": {
+ "method": "GET",
+ "uri": "/tags/{ResourceArn}",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListTagsForResourceRequest": {
+ "type": "structure",
+ "members": {
+ "ResourceArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The resource's Amazon Resource Name (ARN).
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#jsonName": "resourceArn",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ListTagsForResourceResponse": {
+ "type": "structure",
+ "members": {
+ "Tags": {
+ "target": "com.amazonaws.lookoutmetrics#TagMap",
+ "traits": {
+ "smithy.api#documentation": "The resource's tags.
",
+ "smithy.api#jsonName": "Tags"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#LookoutMetrics": {
+ "type": "service",
+ "version": "2017-07-25",
+ "operations": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#ActivateAnomalyDetector"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#BackTestAnomalyDetector"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#CreateAlert"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#CreateAnomalyDetector"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#CreateMetricSet"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#DeleteAlert"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#DeleteAnomalyDetector"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#DescribeAlert"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#DescribeAnomalyDetectionExecutions"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#DescribeAnomalyDetector"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#DescribeMetricSet"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#GetAnomalyGroup"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#GetFeedback"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#GetSampleData"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ListAlerts"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ListAnomalyDetectors"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ListAnomalyGroupSummaries"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ListAnomalyGroupTimeSeries"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ListMetricSets"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ListTagsForResource"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#PutFeedback"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TagResource"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#UntagResource"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#UpdateAnomalyDetector"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#UpdateMetricSet"
+ }
+ ],
+ "traits": {
+ "aws.api#service": {
+ "sdkId": "LookoutMetrics",
+ "arnNamespace": "lookoutmetrics",
+ "cloudFormationName": "LookoutMetrics",
+ "cloudTrailEventSource": "lookoutmetrics.amazonaws.com",
+ "endpointPrefix": "lookoutmetrics"
+ },
+ "aws.auth#sigv4": {
+ "name": "lookoutmetrics"
+ },
+ "aws.protocols#restJson1": {},
+ "smithy.api#documentation": "This is the Amazon Lookout for Metrics API Reference . For an introduction to the service\n with tutorials for getting started, visit Amazon\n Lookout for Metrics Developer Guide .
",
+ "smithy.api#title": "Amazon Lookout for Metrics"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#MaxResults": {
+ "type": "integer",
+ "traits": {
+ "smithy.api#range": {
+ "min": 1,
+ "max": 100
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#Message": {
+ "type": "string"
+ },
+ "com.amazonaws.lookoutmetrics#Metric": {
+ "type": "structure",
+ "members": {
+ "MetricName": {
+ "target": "com.amazonaws.lookoutmetrics#ColumnName",
+ "traits": {
+ "smithy.api#documentation": "The name of the metric.
",
+ "smithy.api#required": {}
+ }
+ },
+ "AggregationFunction": {
+ "target": "com.amazonaws.lookoutmetrics#AggregationFunction",
+ "traits": {
+ "smithy.api#documentation": "The function with which the metric is calculated.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Namespace": {
+ "target": "com.amazonaws.lookoutmetrics#Namespace",
+ "traits": {
+ "smithy.api#documentation": "The namespace for the metric.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "A calculation made by contrasting a measure and a dimension from your source data.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#MetricLevelImpact": {
+ "type": "structure",
+ "members": {
+ "MetricName": {
+ "target": "com.amazonaws.lookoutmetrics#MetricName",
+ "traits": {
+ "smithy.api#documentation": "The name of the measure.
"
+ }
+ },
+ "NumTimeSeries": {
+ "target": "com.amazonaws.lookoutmetrics#Integer",
+ "traits": {
+ "smithy.api#documentation": "The number of anomalous metrics for the measure.
"
+ }
+ },
+ "ContributionMatrix": {
+ "target": "com.amazonaws.lookoutmetrics#ContributionMatrix",
+ "traits": {
+ "smithy.api#documentation": "Details about the dimensions that contributed to the anomaly.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Details about a measure affected by an anomaly.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#MetricLevelImpactList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#MetricLevelImpact"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#MetricList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#Metric"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#MetricName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ },
+ "smithy.api#pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#MetricSetDescription": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 256
+ },
+ "smithy.api#pattern": ".*\\S.*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#MetricSetName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 63
+ },
+ "smithy.api#pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#MetricSetSummary": {
+ "type": "structure",
+ "members": {
+ "MetricSetArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the dataset.
"
+ }
+ },
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the detector to which the dataset belongs.
"
+ }
+ },
+ "MetricSetDescription": {
+ "target": "com.amazonaws.lookoutmetrics#MetricSetDescription",
+ "traits": {
+ "smithy.api#documentation": "The description of the dataset.
"
+ }
+ },
+ "MetricSetName": {
+ "target": "com.amazonaws.lookoutmetrics#MetricSetName",
+ "traits": {
+ "smithy.api#documentation": "The name of the dataset.
"
+ }
+ },
+ "CreationTime": {
+ "target": "com.amazonaws.lookoutmetrics#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The time at which the dataset was created.
"
+ }
+ },
+ "LastModificationTime": {
+ "target": "com.amazonaws.lookoutmetrics#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The time at which the dataset was last modified.
"
+ }
+ },
+ "Tags": {
+ "target": "com.amazonaws.lookoutmetrics#TagMap",
+ "traits": {
+ "smithy.api#documentation": "The dataset's tags .
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains information about a dataset.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#MetricSetSummaryList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#MetricSetSummary"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#MetricSource": {
+ "type": "structure",
+ "members": {
+ "S3SourceConfig": {
+ "target": "com.amazonaws.lookoutmetrics#S3SourceConfig"
+ },
+ "AppFlowConfig": {
+ "target": "com.amazonaws.lookoutmetrics#AppFlowConfig",
+ "traits": {
+ "smithy.api#documentation": "An object containing information about the AppFlow configuration.
"
+ }
+ },
+ "CloudWatchConfig": {
+ "target": "com.amazonaws.lookoutmetrics#CloudWatchConfig",
+ "traits": {
+ "smithy.api#documentation": "An object containing information about the Amazon CloudWatch monitoring configuration.
"
+ }
+ },
+ "RDSSourceConfig": {
+ "target": "com.amazonaws.lookoutmetrics#RDSSourceConfig",
+ "traits": {
+ "smithy.api#documentation": "An object containing information about the Amazon Relational Database Service (RDS) configuration.
"
+ }
+ },
+ "RedshiftSourceConfig": {
+ "target": "com.amazonaws.lookoutmetrics#RedshiftSourceConfig",
+ "traits": {
+ "smithy.api#documentation": "An object containing information about the Amazon Redshift database configuration.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains information about source data used to generate a metric.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#MetricValue": {
+ "type": "double",
+ "traits": {
+ "smithy.api#box": {}
+ }
+ },
+ "com.amazonaws.lookoutmetrics#MetricValueList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#MetricValue"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#Namespace": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 255
+ },
+ "smithy.api#pattern": "[^:].*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#NextToken": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 3000
+ },
+ "smithy.api#pattern": ".*\\S.*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#Offset": {
+ "type": "integer",
+ "traits": {
+ "smithy.api#range": {
+ "min": 0,
+ "max": 432000
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#PoirotSecretManagerArn": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ },
+ "smithy.api#pattern": "arn:([a-z\\d-]+):.*:.*:secret:AmazonLookoutMetrics-.+"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#PutFeedback": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#PutFeedbackRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#PutFeedbackResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Add feedback for an anomalous metric.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/PutFeedback",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#PutFeedbackRequest": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the anomaly detector.
",
+ "smithy.api#required": {}
+ }
+ },
+ "AnomalyGroupTimeSeriesFeedback": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyGroupTimeSeriesFeedback",
+ "traits": {
+ "smithy.api#documentation": "Feedback for an anomalous metric.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#PutFeedbackResponse": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.lookoutmetrics#QuotaCode": {
+ "type": "string"
+ },
+ "com.amazonaws.lookoutmetrics#QuoteSymbol": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 1
+ },
+ "smithy.api#pattern": "[^\\r\\n]|^$"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#RDSDatabaseIdentifier": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 63
+ },
+ "smithy.api#pattern": "^[a-zA-Z](?!.*--)(?!.*-$)[0-9a-zA-Z\\-]*$"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#RDSDatabaseName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 64
+ },
+ "smithy.api#pattern": "[a-zA-Z0-9_.]+"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#RDSSourceConfig": {
+ "type": "structure",
+ "members": {
+ "DBInstanceIdentifier": {
+ "target": "com.amazonaws.lookoutmetrics#RDSDatabaseIdentifier",
+ "traits": {
+ "smithy.api#documentation": "A string identifying the database instance.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DatabaseHost": {
+ "target": "com.amazonaws.lookoutmetrics#DatabaseHost",
+ "traits": {
+ "smithy.api#documentation": "The host name of the database.
",
+ "smithy.api#required": {}
+ }
+ },
+ "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": {}
+ }
+ },
+ "SecretManagerArn": {
+ "target": "com.amazonaws.lookoutmetrics#PoirotSecretManagerArn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the AWS Secrets Manager role.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DatabaseName": {
+ "target": "com.amazonaws.lookoutmetrics#RDSDatabaseName",
+ "traits": {
+ "smithy.api#documentation": "The name of the RDS database.
",
+ "smithy.api#required": {}
+ }
+ },
+ "TableName": {
+ "target": "com.amazonaws.lookoutmetrics#TableName",
+ "traits": {
+ "smithy.api#documentation": "The name of the table in the database.
",
+ "smithy.api#required": {}
+ }
+ },
+ "RoleArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the role.
",
+ "smithy.api#required": {}
+ }
+ },
+ "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": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains information about the Amazon Relational Database Service (RDS) configuration.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#RedshiftClusterIdentifier": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 63
+ },
+ "smithy.api#pattern": "^[a-z](?!.*--)(?!.*-$)[0-9a-z\\-]*$"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#RedshiftDatabaseName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 100
+ },
+ "smithy.api#pattern": "[a-zA-Z0-9_.]+"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#RedshiftSourceConfig": {
+ "type": "structure",
+ "members": {
+ "ClusterIdentifier": {
+ "target": "com.amazonaws.lookoutmetrics#RedshiftClusterIdentifier",
+ "traits": {
+ "smithy.api#documentation": "A string identifying the Redshift cluster.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DatabaseHost": {
+ "target": "com.amazonaws.lookoutmetrics#DatabaseHost",
+ "traits": {
+ "smithy.api#documentation": "The name of the database host.
",
+ "smithy.api#required": {}
+ }
+ },
+ "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": {}
+ }
+ },
+ "SecretManagerArn": {
+ "target": "com.amazonaws.lookoutmetrics#PoirotSecretManagerArn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the AWS Secrets Manager role.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DatabaseName": {
+ "target": "com.amazonaws.lookoutmetrics#RedshiftDatabaseName",
+ "traits": {
+ "smithy.api#documentation": "The Redshift database name.
",
+ "smithy.api#required": {}
+ }
+ },
+ "TableName": {
+ "target": "com.amazonaws.lookoutmetrics#TableName",
+ "traits": {
+ "smithy.api#documentation": "The table name of the Redshift database.
",
+ "smithy.api#required": {}
+ }
+ },
+ "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": {}
+ }
+ },
+ "VpcConfiguration": {
+ "target": "com.amazonaws.lookoutmetrics#VpcConfiguration",
+ "traits": {
+ "smithy.api#documentation": "Contains information about the Amazon Virtual Private Cloud (VPC) configuration.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Provides information about the Amazon Redshift database configuration.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ResourceId": {
+ "type": "string"
+ },
+ "com.amazonaws.lookoutmetrics#ResourceNotFoundException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "com.amazonaws.lookoutmetrics#Message",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ },
+ "ResourceId": {
+ "target": "com.amazonaws.lookoutmetrics#ResourceId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the resource.
"
+ }
+ },
+ "ResourceType": {
+ "target": "com.amazonaws.lookoutmetrics#ResourceType",
+ "traits": {
+ "smithy.api#documentation": "The type of the resource.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The specified resource cannot be found. Check the ARN of the resource and try again.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 400
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ResourceType": {
+ "type": "string"
+ },
+ "com.amazonaws.lookoutmetrics#S3SourceConfig": {
+ "type": "structure",
+ "members": {
+ "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": {}
+ }
+ },
+ "TemplatedPathList": {
+ "target": "com.amazonaws.lookoutmetrics#TemplatedPathList",
+ "traits": {
+ "smithy.api#documentation": "A list of templated paths to the source files.
"
+ }
+ },
+ "HistoricalDataPathList": {
+ "target": "com.amazonaws.lookoutmetrics#HistoricalDataPathList",
+ "traits": {
+ "smithy.api#documentation": "A list of paths to the historical data files.
"
+ }
+ },
+ "FileFormatDescriptor": {
+ "target": "com.amazonaws.lookoutmetrics#FileFormatDescriptor",
+ "traits": {
+ "smithy.api#documentation": "Contains information about a source file's formatting.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains information about the configuration of the S3 bucket that contains source files.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#SNSConfiguration": {
+ "type": "structure",
+ "members": {
+ "RoleArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "THe ARN of the IAM role that has access to the target SNS topic.
",
+ "smithy.api#required": {}
+ }
+ },
+ "SnsTopicArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the target SNS topic.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains information about the SNS topic to which you want to send your alerts and the IAM role that has\n access to that topic.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#SampleDataS3SourceConfig": {
+ "type": "structure",
+ "members": {
+ "RoleArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the role.
",
+ "smithy.api#required": {}
+ }
+ },
+ "TemplatedPathList": {
+ "target": "com.amazonaws.lookoutmetrics#TemplatedPathList",
+ "traits": {
+ "smithy.api#documentation": "An array of strings containing the list of templated paths.
"
+ }
+ },
+ "HistoricalDataPathList": {
+ "target": "com.amazonaws.lookoutmetrics#HistoricalDataPathList",
+ "traits": {
+ "smithy.api#documentation": "An array of strings containing the historical set of data paths.
"
+ }
+ },
+ "FileFormatDescriptor": {
+ "target": "com.amazonaws.lookoutmetrics#FileFormatDescriptor",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains information about the source configuration in Amazon S3.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#SampleRow": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#DataItem"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#SampleRows": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#SampleRow"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#Score": {
+ "type": "double",
+ "traits": {
+ "smithy.api#box": {},
+ "smithy.api#range": {
+ "min": 0.0,
+ "max": 100.0
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#SecurityGroupId": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 255
+ },
+ "smithy.api#pattern": "[-0-9a-zA-Z]+"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#SecurityGroupIdList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#SecurityGroupId"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#SensitivityThreshold": {
+ "type": "integer",
+ "traits": {
+ "smithy.api#range": {
+ "min": 0,
+ "max": 100
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ServiceCode": {
+ "type": "string"
+ },
+ "com.amazonaws.lookoutmetrics#ServiceQuotaExceededException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "com.amazonaws.lookoutmetrics#Message",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ },
+ "ResourceId": {
+ "target": "com.amazonaws.lookoutmetrics#ResourceId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the resource.
"
+ }
+ },
+ "ResourceType": {
+ "target": "com.amazonaws.lookoutmetrics#ResourceType",
+ "traits": {
+ "smithy.api#documentation": "The type of the resource.
"
+ }
+ },
+ "QuotaCode": {
+ "target": "com.amazonaws.lookoutmetrics#QuotaCode",
+ "traits": {
+ "smithy.api#documentation": "The quota code.
"
+ }
+ },
+ "ServiceCode": {
+ "target": "com.amazonaws.lookoutmetrics#ServiceCode",
+ "traits": {
+ "smithy.api#documentation": "The service code.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The request exceeded the service's quotas. Check the service quotas and try again.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 402
+ }
+ },
+ "com.amazonaws.lookoutmetrics#SubnetId": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 255
+ },
+ "smithy.api#pattern": "[\\-0-9a-zA-Z]+"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#SubnetIdList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#SubnetId"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TableName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 100
+ },
+ "smithy.api#pattern": "^[a-zA-Z][a-zA-Z0-9_]*$"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TagKey": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 128
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TagKeyList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#TagKey"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 50
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TagMap": {
+ "type": "map",
+ "key": {
+ "target": "com.amazonaws.lookoutmetrics#TagKey"
+ },
+ "value": {
+ "target": "com.amazonaws.lookoutmetrics#TagValue"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 50
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TagResource": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#TagResourceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#TagResourceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Adds tags to a detector, dataset, or alert.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/tags/{ResourceArn}",
+ "code": 204
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TagResourceRequest": {
+ "type": "structure",
+ "members": {
+ "ResourceArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The resource's Amazon Resource Name (ARN).
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#jsonName": "resourceArn",
+ "smithy.api#required": {}
+ }
+ },
+ "Tags": {
+ "target": "com.amazonaws.lookoutmetrics#TagMap",
+ "traits": {
+ "smithy.api#documentation": "Tags to apply to the resource. Tag keys and values can contain letters, numbers, spaces, and the following\n symbols: _.:/=+@-
\n
",
+ "smithy.api#jsonName": "tags",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TagResourceResponse": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.lookoutmetrics#TagValue": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TemplatedPath": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 1024
+ },
+ "smithy.api#pattern": "^s3://[a-zA-Z0-9_\\-\\/ {}=]+$"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TemplatedPathList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#TemplatedPath"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 1
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TimeSeries": {
+ "type": "structure",
+ "members": {
+ "TimeSeriesId": {
+ "target": "com.amazonaws.lookoutmetrics#TimeSeriesId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the metric.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DimensionList": {
+ "target": "com.amazonaws.lookoutmetrics#DimensionNameValueList",
+ "traits": {
+ "smithy.api#documentation": "The dimensions of the metric.
",
+ "smithy.api#required": {}
+ }
+ },
+ "MetricValueList": {
+ "target": "com.amazonaws.lookoutmetrics#MetricValueList",
+ "traits": {
+ "smithy.api#documentation": "The values for the metric.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Details about a metric. A metric is an aggregation of the values of a measure for a dimension value, such as\n availability in the us-east-1 Region.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TimeSeriesFeedback": {
+ "type": "structure",
+ "members": {
+ "TimeSeriesId": {
+ "target": "com.amazonaws.lookoutmetrics#TimeSeriesId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the metric.
"
+ }
+ },
+ "IsAnomaly": {
+ "target": "com.amazonaws.lookoutmetrics#Boolean",
+ "traits": {
+ "smithy.api#documentation": "Feedback on whether the metric is a legitimate anomaly.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Details about feedback submitted for an anomalous metric.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TimeSeriesFeedbackList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#TimeSeriesFeedback"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TimeSeriesId": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 520
+ },
+ "smithy.api#pattern": ".*\\S.*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TimeSeriesList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#TimeSeries"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#Timestamp": {
+ "type": "timestamp"
+ },
+ "com.amazonaws.lookoutmetrics#TimestampColumn": {
+ "type": "structure",
+ "members": {
+ "ColumnName": {
+ "target": "com.amazonaws.lookoutmetrics#ColumnName",
+ "traits": {
+ "smithy.api#documentation": "The name of the timestamp column.
"
+ }
+ },
+ "ColumnFormat": {
+ "target": "com.amazonaws.lookoutmetrics#DateTimeFormat",
+ "traits": {
+ "smithy.api#documentation": "The format of the timestamp column.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains information about the column used to track time in a source data file.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TimestampList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#TimestampString"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TimestampString": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 60
+ },
+ "smithy.api#pattern": "^([12]\\d{3})-(1[0-2]|0[1-9])-(0[1-9]|[12]\\d|3[01])T([01]\\d|2[0-3]):([0-5]\\d):([0-5]\\d)(Z|(\\+|\\-)(0\\d|1[0-2]):([0-5]\\d)(\\[[[:alnum:]\\/\\_]+\\])?)$"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#Timezone": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 60
+ },
+ "smithy.api#pattern": ".*\\S.*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#TooManyRequestsException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "com.amazonaws.lookoutmetrics#Message",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The request was denied due to too many requests being submitted at the same time.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 429
+ }
+ },
+ "com.amazonaws.lookoutmetrics#UUID": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 63
+ },
+ "smithy.api#pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]*"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#UntagResource": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#UntagResourceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#UntagResourceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Removes tags from a detector, dataset, or alert.
",
+ "smithy.api#http": {
+ "method": "DELETE",
+ "uri": "/tags/{ResourceArn}",
+ "code": 204
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#UntagResourceRequest": {
+ "type": "structure",
+ "members": {
+ "ResourceArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The resource's Amazon Resource Name (ARN).
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#jsonName": "resourceArn",
+ "smithy.api#required": {}
+ }
+ },
+ "TagKeys": {
+ "target": "com.amazonaws.lookoutmetrics#TagKeyList",
+ "traits": {
+ "smithy.api#documentation": "Keys to remove from the resource's tags.
",
+ "smithy.api#httpQuery": "tagKeys",
+ "smithy.api#jsonName": "tagKeys",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#UntagResourceResponse": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.lookoutmetrics#UpdateAnomalyDetector": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#UpdateAnomalyDetectorRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#UpdateAnomalyDetectorResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Updates a detector. After activation, you can only change a detector's ingestion delay and description.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/UpdateAnomalyDetector",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#UpdateAnomalyDetectorRequest": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the detector to update.
",
+ "smithy.api#required": {}
+ }
+ },
+ "KmsKeyArn": {
+ "target": "com.amazonaws.lookoutmetrics#KmsKeyArn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of an AWS KMS encryption key.
"
+ }
+ },
+ "AnomalyDetectorDescription": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectorDescription",
+ "traits": {
+ "smithy.api#documentation": "The updated detector description.
"
+ }
+ },
+ "AnomalyDetectorConfig": {
+ "target": "com.amazonaws.lookoutmetrics#AnomalyDetectorConfig",
+ "traits": {
+ "smithy.api#documentation": "Contains information about the configuration to which the detector will be updated.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#UpdateAnomalyDetectorResponse": {
+ "type": "structure",
+ "members": {
+ "AnomalyDetectorArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the updated detector.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#UpdateMetricSet": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.lookoutmetrics#UpdateMetricSetRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.lookoutmetrics#UpdateMetricSetResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.lookoutmetrics#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#TooManyRequestsException"
+ },
+ {
+ "target": "com.amazonaws.lookoutmetrics#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Updates a dataset.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/UpdateMetricSet",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#UpdateMetricSetRequest": {
+ "type": "structure",
+ "members": {
+ "MetricSetArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the dataset to update.
",
+ "smithy.api#required": {}
+ }
+ },
+ "MetricSetDescription": {
+ "target": "com.amazonaws.lookoutmetrics#MetricSetDescription",
+ "traits": {
+ "smithy.api#documentation": "The dataset's description.
"
+ }
+ },
+ "MetricList": {
+ "target": "com.amazonaws.lookoutmetrics#MetricList",
+ "traits": {
+ "smithy.api#documentation": "The metric list.
"
+ }
+ },
+ "Offset": {
+ "target": "com.amazonaws.lookoutmetrics#Offset",
+ "traits": {
+ "smithy.api#box": {},
+ "smithy.api#documentation": "After an interval ends, the amount of time that the detector waits before importing data.
"
+ }
+ },
+ "TimestampColumn": {
+ "target": "com.amazonaws.lookoutmetrics#TimestampColumn",
+ "traits": {
+ "smithy.api#documentation": "The timestamp column.
"
+ }
+ },
+ "DimensionList": {
+ "target": "com.amazonaws.lookoutmetrics#DimensionList",
+ "traits": {
+ "smithy.api#documentation": "The dimension list.
"
+ }
+ },
+ "MetricSetFrequency": {
+ "target": "com.amazonaws.lookoutmetrics#Frequency",
+ "traits": {
+ "smithy.api#documentation": "The dataset's interval.
"
+ }
+ },
+ "MetricSource": {
+ "target": "com.amazonaws.lookoutmetrics#MetricSource"
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#UpdateMetricSetResponse": {
+ "type": "structure",
+ "members": {
+ "MetricSetArn": {
+ "target": "com.amazonaws.lookoutmetrics#Arn",
+ "traits": {
+ "smithy.api#documentation": "The ARN of the dataset.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ValidationException": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "com.amazonaws.lookoutmetrics#Message",
+ "traits": {
+ "smithy.api#required": {}
+ }
+ },
+ "Reason": {
+ "target": "com.amazonaws.lookoutmetrics#ValidationExceptionReason",
+ "traits": {
+ "smithy.api#documentation": "The reason that validation failed.
"
+ }
+ },
+ "Fields": {
+ "target": "com.amazonaws.lookoutmetrics#ValidationExceptionFieldList",
+ "traits": {
+ "smithy.api#documentation": "Fields that failed validation.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The input fails to satisfy the constraints specified by the AWS service. Check your input values and try\n again.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 400
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ValidationExceptionField": {
+ "type": "structure",
+ "members": {
+ "Name": {
+ "target": "com.amazonaws.lookoutmetrics#FieldName",
+ "traits": {
+ "smithy.api#documentation": "The name of the field.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Message": {
+ "target": "com.amazonaws.lookoutmetrics#Message",
+ "traits": {
+ "smithy.api#documentation": "The message with more information about the validation exception.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains information about a a field in a validation exception.
"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ValidationExceptionFieldList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.lookoutmetrics#ValidationExceptionField"
+ }
+ },
+ "com.amazonaws.lookoutmetrics#ValidationExceptionReason": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "UNKNOWN_OPERATION",
+ "name": "UNKNOWN_OPERATION"
+ },
+ {
+ "value": "CANNOT_PARSE",
+ "name": "CANNOT_PARSE"
+ },
+ {
+ "value": "FIELD_VALIDATION_FAILED",
+ "name": "FIELD_VALIDATION_FAILED"
+ },
+ {
+ "value": "OTHER",
+ "name": "OTHER"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.lookoutmetrics#VpcConfiguration": {
+ "type": "structure",
+ "members": {
+ "SubnetIdList": {
+ "target": "com.amazonaws.lookoutmetrics#SubnetIdList",
+ "traits": {
+ "smithy.api#documentation": "An array of strings containing the Amazon VPC subnet IDs (e.g., subnet-0bb1c79de3EXAMPLE
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "SecurityGroupIdList": {
+ "target": "com.amazonaws.lookoutmetrics#SecurityGroupIdList",
+ "traits": {
+ "smithy.api#documentation": "An array of strings containing the list of security groups.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Contains configuration information about the Amazon Virtual Private Cloud (VPC).
"
+ }
+ }
+ }
+}
diff --git a/codegen/sdk-codegen/aws-models/machinelearning.2014-12-12.json b/codegen/sdk-codegen/aws-models/machinelearning.2014-12-12.json
index 2280e86233f..bf6408b6711 100644
--- a/codegen/sdk-codegen/aws-models/machinelearning.2014-12-12.json
+++ b/codegen/sdk-codegen/aws-models/machinelearning.2014-12-12.json
@@ -61,10 +61,10 @@
"com.amazonaws.machinelearning#AddTagsInput": {
"type": "structure",
"members": {
- "ResourceType": {
- "target": "com.amazonaws.machinelearning#TaggableResourceType",
+ "Tags": {
+ "target": "com.amazonaws.machinelearning#TagList",
"traits": {
- "smithy.api#documentation": "The type of the ML object to tag.
",
+ "smithy.api#documentation": "The key-value pairs to use to create tags. If you specify a key without specifying a value, Amazon ML creates a tag with the specified key and a value of null.
",
"smithy.api#required": {}
}
},
@@ -75,10 +75,10 @@
"smithy.api#required": {}
}
},
- "Tags": {
- "target": "com.amazonaws.machinelearning#TagList",
+ "ResourceType": {
+ "target": "com.amazonaws.machinelearning#TaggableResourceType",
"traits": {
- "smithy.api#documentation": "The key-value pairs to use to create tags. If you specify a key without specifying a value, Amazon ML creates a tag with the specified key and a value of null.
",
+ "smithy.api#documentation": "The type of the ML object to tag.
",
"smithy.api#required": {}
}
}
@@ -210,13 +210,14 @@
"sdkId": "Machine Learning",
"arnNamespace": "machinelearning",
"cloudFormationName": "MachineLearning",
- "cloudTrailEventSource": "machinelearning.amazonaws.com"
+ "cloudTrailEventSource": "machinelearning.amazonaws.com",
+ "endpointPrefix": "machinelearning"
},
"aws.auth#sigv4": {
"name": "machinelearning"
},
"aws.protocols#awsJson1_1": {},
- "smithy.api#documentation": "Definition of the public APIs\n exposed by Amazon Machine Learning
",
+ "smithy.api#documentation": "Definition of the public APIs\n\t\texposed by Amazon Machine Learning",
"smithy.api#title": "Amazon Machine Learning",
"smithy.api#xmlNamespace": {
"uri": "http://machinelearning.amazonaws.com/doc/2014-12-12/"
@@ -233,38 +234,35 @@
"com.amazonaws.machinelearning#BatchPrediction": {
"type": "structure",
"members": {
- "InputDataLocationS3": {
- "target": "com.amazonaws.machinelearning#S3Url",
+ "BatchPredictionId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).
"
+ "smithy.api#documentation": "The ID assigned to the BatchPrediction
at creation. This value should be identical to the value of the BatchPredictionID
\n in the request.\n
"
}
},
- "OutputUri": {
- "target": "com.amazonaws.machinelearning#S3Url",
+ "MLModelId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "The location of an Amazon S3 bucket or directory to receive the operation results. The following substrings are not allowed in the s3 key
portion of the outputURI
field: ':', '//', '/./', '/../'.
"
+ "smithy.api#documentation": "The ID of the MLModel
that generated predictions for the BatchPrediction
request.
"
}
},
- "FinishedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime"
- },
- "ComputeTime": {
- "target": "com.amazonaws.machinelearning#LongType"
- },
- "Message": {
- "target": "com.amazonaws.machinelearning#Message",
+ "BatchPredictionDataSourceId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "A description of the most recent details about processing the batch prediction request.
"
+ "smithy.api#documentation": "The ID of the DataSource
that points to the group of observations to predict.
"
}
},
- "BatchPredictionId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "InputDataLocationS3": {
+ "target": "com.amazonaws.machinelearning#S3Url",
"traits": {
- "smithy.api#documentation": "The ID assigned to the BatchPrediction
at creation. This value should be identical to the value of the BatchPredictionID
\n in the request.\n
"
+ "smithy.api#documentation": "The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).
"
}
},
- "StartedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime"
+ "CreatedByIamUser": {
+ "target": "com.amazonaws.machinelearning#AwsUserArn",
+ "traits": {
+ "smithy.api#documentation": "The AWS user account that invoked the BatchPrediction
. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.
"
+ }
},
"CreatedAt": {
"target": "com.amazonaws.machinelearning#EpochTime",
@@ -272,47 +270,50 @@
"smithy.api#documentation": "The time that the BatchPrediction
was created. The time is expressed in epoch time.
"
}
},
- "Status": {
- "target": "com.amazonaws.machinelearning#EntityStatus",
+ "LastUpdatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": "The status of the BatchPrediction
. This element can have one of the following values:
\n \n \n \n PENDING
- Amazon Machine Learning (Amazon ML) submitted a request to generate predictions for a batch of observations.
\n \n \n \n INPROGRESS
- The process is underway.
\n \n \n \n FAILED
- The request to perform a batch prediction did not run to completion. It is not usable.
\n \n \n \n COMPLETED
- The batch prediction process completed successfully.
\n \n \n \n DELETED
- The BatchPrediction
is marked as deleted. It is not usable.
\n \n "
+ "smithy.api#documentation": "The time of the most recent edit to the BatchPrediction
. The time is expressed in epoch time.
"
}
},
- "TotalRecordCount": {
- "target": "com.amazonaws.machinelearning#LongType"
- },
- "BatchPredictionDataSourceId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "Name": {
+ "target": "com.amazonaws.machinelearning#EntityName",
"traits": {
- "smithy.api#documentation": "The ID of the DataSource
that points to the group of observations to predict.
"
+ "smithy.api#documentation": "A user-supplied name or description of the BatchPrediction
.
"
}
},
- "MLModelId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "Status": {
+ "target": "com.amazonaws.machinelearning#EntityStatus",
"traits": {
- "smithy.api#documentation": "The ID of the MLModel
that generated predictions for the BatchPrediction
request.
"
+ "smithy.api#documentation": "The status of the BatchPrediction
. This element can have one of the following values:
\n \n \n \n PENDING
- Amazon Machine Learning (Amazon ML) submitted a request to generate predictions for a batch of observations.
\n \n \n \n INPROGRESS
- The process is underway.
\n \n \n \n FAILED
- The request to perform a batch prediction did not run to completion. It is not usable.
\n \n \n \n COMPLETED
- The batch prediction process completed successfully.
\n \n \n \n DELETED
- The BatchPrediction
is marked as deleted. It is not usable.
\n \n "
}
},
- "Name": {
- "target": "com.amazonaws.machinelearning#EntityName",
+ "OutputUri": {
+ "target": "com.amazonaws.machinelearning#S3Url",
"traits": {
- "smithy.api#documentation": "A user-supplied name or description of the BatchPrediction
.
"
+ "smithy.api#documentation": "The location of an Amazon S3 bucket or directory to receive the operation results. The following substrings are not allowed in the s3 key
portion of the outputURI
field: ':', '//', '/./', '/../'.
"
}
},
- "CreatedByIamUser": {
- "target": "com.amazonaws.machinelearning#AwsUserArn",
+ "Message": {
+ "target": "com.amazonaws.machinelearning#Message",
"traits": {
- "smithy.api#documentation": "The AWS user account that invoked the BatchPrediction
. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.
"
+ "smithy.api#documentation": "A description of the most recent details about processing the batch prediction request.
"
}
},
- "InvalidRecordCount": {
+ "ComputeTime": {
"target": "com.amazonaws.machinelearning#LongType"
},
- "LastUpdatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
- "traits": {
- "smithy.api#documentation": "The time of the most recent edit to the BatchPrediction
. The time is expressed in epoch time.
"
- }
+ "FinishedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime"
+ },
+ "StartedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime"
+ },
+ "TotalRecordCount": {
+ "target": "com.amazonaws.machinelearning#LongType"
+ },
+ "InvalidRecordCount": {
+ "target": "com.amazonaws.machinelearning#LongType"
}
},
"traits": {
@@ -412,11 +413,10 @@
"smithy.api#required": {}
}
},
- "BatchPredictionDataSourceId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "BatchPredictionName": {
+ "target": "com.amazonaws.machinelearning#EntityName",
"traits": {
- "smithy.api#documentation": "The ID of the DataSource
that points to the group of observations to predict.
",
- "smithy.api#required": {}
+ "smithy.api#documentation": "A user-supplied name or description of the BatchPrediction
. BatchPredictionName
can only use the UTF-8 character set.
"
}
},
"MLModelId": {
@@ -426,10 +426,11 @@
"smithy.api#required": {}
}
},
- "BatchPredictionName": {
- "target": "com.amazonaws.machinelearning#EntityName",
+ "BatchPredictionDataSourceId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "A user-supplied name or description of the BatchPrediction
. BatchPredictionName
can only use the UTF-8 character set.
"
+ "smithy.api#documentation": "The ID of the DataSource
that points to the group of observations to predict.
",
+ "smithy.api#required": {}
}
},
"OutputUri": {
@@ -488,6 +489,12 @@
"smithy.api#required": {}
}
},
+ "DataSourceName": {
+ "target": "com.amazonaws.machinelearning#EntityName",
+ "traits": {
+ "smithy.api#documentation": "A user-supplied name or description of the DataSource
.
"
+ }
+ },
"RDSData": {
"target": "com.amazonaws.machinelearning#RDSDataSpec",
"traits": {
@@ -495,12 +502,6 @@
"smithy.api#required": {}
}
},
- "DataSourceName": {
- "target": "com.amazonaws.machinelearning#EntityName",
- "traits": {
- "smithy.api#documentation": "A user-supplied name or description of the DataSource
.
"
- }
- },
"RoleARN": {
"target": "com.amazonaws.machinelearning#RoleARN",
"traits": {
@@ -563,6 +564,12 @@
"smithy.api#required": {}
}
},
+ "DataSourceName": {
+ "target": "com.amazonaws.machinelearning#EntityName",
+ "traits": {
+ "smithy.api#documentation": "A user-supplied name or description of the DataSource
.
"
+ }
+ },
"DataSpec": {
"target": "com.amazonaws.machinelearning#RedshiftDataSpec",
"traits": {
@@ -577,12 +584,6 @@
"smithy.api#required": {}
}
},
- "DataSourceName": {
- "target": "com.amazonaws.machinelearning#EntityName",
- "traits": {
- "smithy.api#documentation": "A user-supplied name or description of the DataSource
.
"
- }
- },
"ComputeStatistics": {
"target": "com.amazonaws.machinelearning#ComputeStatistics",
"traits": {
@@ -699,13 +700,6 @@
"com.amazonaws.machinelearning#CreateEvaluationInput": {
"type": "structure",
"members": {
- "EvaluationDataSourceId": {
- "target": "com.amazonaws.machinelearning#EntityId",
- "traits": {
- "smithy.api#documentation": "The ID of the DataSource
for the evaluation. The schema of the DataSource
\n must match the schema used to create the MLModel
.
",
- "smithy.api#required": {}
- }
- },
"EvaluationId": {
"target": "com.amazonaws.machinelearning#EntityId",
"traits": {
@@ -725,6 +719,13 @@
"smithy.api#documentation": "The ID of the MLModel
to evaluate.
\n The schema used in creating the MLModel
must match the schema of the DataSource
used in the Evaluation
.
",
"smithy.api#required": {}
}
+ },
+ "EvaluationDataSourceId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the DataSource
for the evaluation. The schema of the DataSource
\n must match the schema used to create the MLModel
.
",
+ "smithy.api#required": {}
+ }
}
}
},
@@ -768,12 +769,6 @@
"com.amazonaws.machinelearning#CreateMLModelInput": {
"type": "structure",
"members": {
- "RecipeUri": {
- "target": "com.amazonaws.machinelearning#S3Url",
- "traits": {
- "smithy.api#documentation": "The Amazon Simple Storage Service (Amazon S3) location and file name that contains the MLModel
recipe. You must specify either the recipe or its URI. If you don't specify a recipe or its URI, Amazon ML creates a default.
"
- }
- },
"MLModelId": {
"target": "com.amazonaws.machinelearning#EntityId",
"traits": {
@@ -781,6 +776,12 @@
"smithy.api#required": {}
}
},
+ "MLModelName": {
+ "target": "com.amazonaws.machinelearning#EntityName",
+ "traits": {
+ "smithy.api#documentation": "A user-supplied name or description of the MLModel
.
"
+ }
+ },
"MLModelType": {
"target": "com.amazonaws.machinelearning#MLModelType",
"traits": {
@@ -791,26 +792,26 @@
"Parameters": {
"target": "com.amazonaws.machinelearning#TrainingParameters",
"traits": {
- "smithy.api#documentation": "A list of the training parameters in the MLModel
. The list is implemented as\n a map of key-value pairs.
\n The following is the current set of training parameters:
\n \n \n \n sgd.maxMLModelSizeInBytes
- The maximum allowed size of the model. Depending on the\n input data, the size of the model might affect its performance.
\n The value is an integer that ranges from 100000
to 2147483648
. The default value is 33554432
.
\n \n \n \n sgd.maxPasses
- The number of times that the training process traverses the\n observations to build the MLModel
. The value is an integer that\n ranges from 1
to 100
. The default value is\n 10
.
\n \n \n \n sgd.shuffleType
- Whether Amazon ML shuffles the training data. Shuffling\n the data improves a model's ability to find the optimal solution for a variety\n of data types. The valid values are auto
and none
. The\n default value is none
. We strongly recommend that you shuffle your data.
\n \n \n \n sgd.l1RegularizationAmount
- The coefficient regularization L1 norm. It controls\n overfitting the data by penalizing large coefficients. This tends to drive\n coefficients to zero, resulting in a sparse feature set. If you use this\n parameter, start by specifying a small value, such as 1.0E-08
.
\n The value is a double that ranges from 0
to MAX_DOUBLE
.\n The default is to not use L1 normalization. This parameter can't be used when\n L2
is specified. Use this parameter sparingly.
\n \n \n \n sgd.l2RegularizationAmount
- The coefficient regularization L2 norm. It controls\n overfitting the data by penalizing large coefficients. This tends to drive\n coefficients to small, nonzero values. If you use this parameter, start by\n specifying a small value, such as 1.0E-08
.
\n The value is a double that ranges from 0
to MAX_DOUBLE
.\n The default is to not use L2 normalization. This parameter can't be used when\n L1
is specified. Use this parameter sparingly.
\n \n "
+ "smithy.api#documentation": "A list of the training parameters in the MLModel
. The list is implemented as\n a map of key-value pairs.
\n The following is the current set of training parameters:
\n \n \n \n sgd.maxMLModelSizeInBytes
- The maximum allowed size of the model. Depending on the\n input data, the size of the model might affect its performance.
\n The value is an integer that ranges from 100000
to 2147483648
. The default value is 33554432
.
\n \n \n \n sgd.maxPasses
- The number of times that the training process traverses the\n observations to build the MLModel
. The value is an integer that\n ranges from 1
to 10000
. The default value is\n 10
.
\n \n \n \n sgd.shuffleType
- Whether Amazon ML shuffles the training data. Shuffling\n the data improves a model's ability to find the optimal solution for a variety\n of data types. The valid values are auto
and none
. The\n default value is none
. We strongly recommend that you shuffle your data.
\n \n \n \n sgd.l1RegularizationAmount
- The coefficient regularization L1 norm. It controls\n overfitting the data by penalizing large coefficients. This tends to drive\n coefficients to zero, resulting in a sparse feature set. If you use this\n parameter, start by specifying a small value, such as 1.0E-08
.
\n The value is a double that ranges from 0
to MAX_DOUBLE
.\n The default is to not use L1 normalization. This parameter can't be used when\n L2
is specified. Use this parameter sparingly.
\n \n \n \n sgd.l2RegularizationAmount
- The coefficient regularization L2 norm. It controls\n overfitting the data by penalizing large coefficients. This tends to drive\n coefficients to small, nonzero values. If you use this parameter, start by\n specifying a small value, such as 1.0E-08
.
\n The value is a double that ranges from 0
to MAX_DOUBLE
.\n The default is to not use L2 normalization. This parameter can't be used when\n L1
is specified. Use this parameter sparingly.
\n \n "
}
},
- "Recipe": {
- "target": "com.amazonaws.machinelearning#Recipe",
+ "TrainingDataSourceId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "The data recipe for creating the MLModel
. You must specify either the recipe\n or its URI. If you don't specify a recipe or its URI, Amazon ML creates a default.
"
+ "smithy.api#documentation": "The DataSource
that points to the training data.
",
+ "smithy.api#required": {}
}
},
- "MLModelName": {
- "target": "com.amazonaws.machinelearning#EntityName",
+ "Recipe": {
+ "target": "com.amazonaws.machinelearning#Recipe",
"traits": {
- "smithy.api#documentation": "A user-supplied name or description of the MLModel
.
"
+ "smithy.api#documentation": "The data recipe for creating the MLModel
. You must specify either the recipe\n or its URI. If you don't specify a recipe or its URI, Amazon ML creates a default.
"
}
},
- "TrainingDataSourceId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "RecipeUri": {
+ "target": "com.amazonaws.machinelearning#S3Url",
"traits": {
- "smithy.api#documentation": "The DataSource
that points to the training data.
",
- "smithy.api#required": {}
+ "smithy.api#documentation": "The Amazon Simple Storage Service (Amazon S3) location and file name that contains the MLModel
recipe. You must specify either the recipe or its URI. If you don't specify a recipe or its URI, Amazon ML creates a default.
"
}
}
}
@@ -890,7 +891,7 @@
"com.amazonaws.machinelearning#DataSchema": {
"type": "string",
"traits": {
- "smithy.api#documentation": "The schema of a DataSource
. The DataSchema
\n defines the structure of the observation data in the data file(s) \n referenced in the DataSource
. The DataSource schema \n is expressed in JSON format.
\n \n DataSchema
is not required if you specify a DataSchemaUri
\n
\n\n { \"version\": \"1.0\", \"recordAnnotationFieldName\": \"F1\", \"recordWeightFieldName\": \"F2\", \"targetAttributeName\": \"F3\", \"dataFormat\": \"CSV\", \"dataFileContainsHeader\": true, \"variables\": [ { \"attributeName\": \"F1\", \"attributeType\": \"TEXT\" }, { \"attributeName\": \"F2\", \"attributeType\": \"NUMERIC\" }, { \"attributeName\": \"F3\", \"attributeType\": \"CATEGORICAL\" }, { \"attributeName\": \"F4\", \"attributeType\": \"NUMERIC\" }, { \"attributeName\": \"F5\", \"attributeType\": \"CATEGORICAL\" }, { \"attributeName\": \"F6\", \"attributeType\": \"TEXT\" }, { \"attributeName\": \"F7\", \"attributeType\": \"WEIGHTED_INT_SEQUENCE\" }, { \"attributeName\": \"F8\", \"attributeType\": \"WEIGHTED_STRING_SEQUENCE\" } ], \"excludedAttributeNames\": [ \"F6\" ] }
",
+ "smithy.api#documentation": "The schema of a DataSource
. The DataSchema
\n defines the structure of the observation data in the data file(s) \n referenced in the DataSource
. The DataSource schema \n is expressed in JSON format.
\n \n DataSchema
is not required if you specify a DataSchemaUri
\n
\n\n { \"version\": \"1.0\", \"recordAnnotationFieldName\": \"F1\", \"recordWeightFieldName\": \"F2\", \"targetFieldName\": \"F3\", \"dataFormat\": \"CSV\", \"dataFileContainsHeader\": true, \"variables\": [ { \"fieldName\": \"F1\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F2\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F3\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F4\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F5\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F6\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F7\", \"fieldType\": \"WEIGHTED_INT_SEQUENCE\" }, { \"fieldName\": \"F8\", \"fieldType\": \"WEIGHTED_STRING_SEQUENCE\" } ], \"excludedVariableNames\": [ \"F6\" ] }
",
"smithy.api#length": {
"min": 0,
"max": 131071
@@ -900,25 +901,22 @@
"com.amazonaws.machinelearning#DataSource": {
"type": "structure",
"members": {
- "CreatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
+ "DataSourceId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "The time that the DataSource
was created. The time is expressed in epoch time.
"
+ "smithy.api#documentation": "The ID that is assigned to the DataSource
during creation.
"
}
},
- "Status": {
- "target": "com.amazonaws.machinelearning#EntityStatus",
+ "DataLocationS3": {
+ "target": "com.amazonaws.machinelearning#S3Url",
"traits": {
- "smithy.api#documentation": "The current status of the DataSource
. This element can have one of the following values:
\n \n \n PENDING\t- Amazon Machine Learning (Amazon ML) submitted a request to create a DataSource
.
\n \n \n INPROGRESS - The creation process is underway.
\n \n \n FAILED - The request to create a DataSource
did not run to completion. It is not usable.
\n \n \n COMPLETED - The creation process completed successfully.
\n \n \n DELETED\t- The DataSource
is marked as deleted. It is not usable.
\n \n "
+ "smithy.api#documentation": "The location and name of the data in Amazon Simple Storage Service (Amazon S3) that is used by a DataSource
.
"
}
},
- "RoleARN": {
- "target": "com.amazonaws.machinelearning#RoleARN"
- },
- "LastUpdatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
+ "DataRearrangement": {
+ "target": "com.amazonaws.machinelearning#DataRearrangement",
"traits": {
- "smithy.api#documentation": "The time of the most recent edit to the \n BatchPrediction
. The time is expressed in epoch time.
"
+ "smithy.api#documentation": "A JSON string that represents the splitting and rearrangement requirement used when this DataSource
\n was created.
"
}
},
"CreatedByIamUser": {
@@ -927,25 +925,16 @@
"smithy.api#documentation": "The AWS user account from which the DataSource
was created. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.
"
}
},
- "FinishedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime"
- },
- "StartedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime"
- },
- "ComputeTime": {
- "target": "com.amazonaws.machinelearning#LongType"
- },
- "NumberOfFiles": {
- "target": "com.amazonaws.machinelearning#LongType",
+ "CreatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": "The number of data files referenced by the DataSource
.
"
+ "smithy.api#documentation": "The time that the DataSource
was created. The time is expressed in epoch time.
"
}
},
- "DataSourceId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "LastUpdatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": "The ID that is assigned to the DataSource
during creation.
"
+ "smithy.api#documentation": "The time of the most recent edit to the \n BatchPrediction
. The time is expressed in epoch time.
"
}
},
"DataSizeInBytes": {
@@ -954,41 +943,53 @@
"smithy.api#documentation": "The total number of observations contained in the data files that the DataSource
references.
"
}
},
+ "NumberOfFiles": {
+ "target": "com.amazonaws.machinelearning#LongType",
+ "traits": {
+ "smithy.api#documentation": "The number of data files referenced by the DataSource
.
"
+ }
+ },
"Name": {
"target": "com.amazonaws.machinelearning#EntityName",
"traits": {
"smithy.api#documentation": "A user-supplied name or description of the DataSource
.
"
}
},
- "ComputeStatistics": {
- "target": "com.amazonaws.machinelearning#ComputeStatistics",
+ "Status": {
+ "target": "com.amazonaws.machinelearning#EntityStatus",
"traits": {
- "smithy.api#documentation": "\n The parameter is true
if statistics need to be generated from the observation data.\n
"
+ "smithy.api#documentation": "The current status of the DataSource
. This element can have one of the following values:
\n \n \n PENDING\t- Amazon Machine Learning (Amazon ML) submitted a request to create a DataSource
.
\n \n \n INPROGRESS - The creation process is underway.
\n \n \n FAILED - The request to create a DataSource
did not run to completion. It is not usable.
\n \n \n COMPLETED - The creation process completed successfully.
\n \n \n DELETED\t- The DataSource
is marked as deleted. It is not usable.
\n \n "
}
},
- "RDSMetadata": {
- "target": "com.amazonaws.machinelearning#RDSMetadata"
- },
"Message": {
"target": "com.amazonaws.machinelearning#Message",
"traits": {
"smithy.api#documentation": "A description of the most recent details about creating the DataSource
.
"
}
},
- "DataRearrangement": {
- "target": "com.amazonaws.machinelearning#DataRearrangement",
+ "RedshiftMetadata": {
+ "target": "com.amazonaws.machinelearning#RedshiftMetadata"
+ },
+ "RDSMetadata": {
+ "target": "com.amazonaws.machinelearning#RDSMetadata"
+ },
+ "RoleARN": {
+ "target": "com.amazonaws.machinelearning#RoleARN"
+ },
+ "ComputeStatistics": {
+ "target": "com.amazonaws.machinelearning#ComputeStatistics",
"traits": {
- "smithy.api#documentation": "A JSON string that represents the splitting and rearrangement requirement used when this DataSource
\n was created.
"
+ "smithy.api#documentation": "\n The parameter is true
if statistics need to be generated from the observation data.\n
"
}
},
- "DataLocationS3": {
- "target": "com.amazonaws.machinelearning#S3Url",
- "traits": {
- "smithy.api#documentation": "The location and name of the data in Amazon Simple Storage Service (Amazon S3) that is used by a DataSource
.
"
- }
+ "ComputeTime": {
+ "target": "com.amazonaws.machinelearning#LongType"
},
- "RedshiftMetadata": {
- "target": "com.amazonaws.machinelearning#RedshiftMetadata"
+ "FinishedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime"
+ },
+ "StartedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime"
}
},
"traits": {
@@ -1313,13 +1314,6 @@
"com.amazonaws.machinelearning#DeleteTagsInput": {
"type": "structure",
"members": {
- "ResourceType": {
- "target": "com.amazonaws.machinelearning#TaggableResourceType",
- "traits": {
- "smithy.api#documentation": "The type of the tagged ML object.
",
- "smithy.api#required": {}
- }
- },
"TagKeys": {
"target": "com.amazonaws.machinelearning#TagKeyList",
"traits": {
@@ -1333,6 +1327,13 @@
"smithy.api#documentation": "The ID of the tagged ML object. For example, exampleModelId
.
",
"smithy.api#required": {}
}
+ },
+ "ResourceType": {
+ "target": "com.amazonaws.machinelearning#TaggableResourceType",
+ "traits": {
+ "smithy.api#documentation": "The type of the tagged ML object.
",
+ "smithy.api#required": {}
+ }
}
}
},
@@ -1379,22 +1380,49 @@
"outputToken": "NextToken",
"items": "Results",
"pageSize": "Limit"
+ },
+ "smithy.waiters#waitable": {
+ "BatchPredictionAvailable": {
+ "acceptors": [
+ {
+ "state": "success",
+ "matcher": {
+ "output": {
+ "path": "Results[].Status",
+ "expected": "COMPLETED",
+ "comparator": "allStringEquals"
+ }
+ }
+ },
+ {
+ "state": "failure",
+ "matcher": {
+ "output": {
+ "path": "Results[].Status",
+ "expected": "FAILED",
+ "comparator": "anyStringEquals"
+ }
+ }
+ }
+ ],
+ "minDelay": 30
+ }
}
}
},
"com.amazonaws.machinelearning#DescribeBatchPredictionsInput": {
"type": "structure",
"members": {
- "SortOrder": {
- "target": "com.amazonaws.machinelearning#SortOrder",
+ "FilterVariable": {
+ "target": "com.amazonaws.machinelearning#BatchPredictionFilterVariable",
"traits": {
- "smithy.api#documentation": "A two-value parameter that determines the sequence of the resulting list of MLModel
s.
\n \n \n \n asc
- Arranges the list in ascending order (A-Z, 0-9).
\n \n \n \n dsc
- Arranges the list in descending order (Z-A, 9-0).
\n \n \n Results are sorted by FilterVariable
.
"
+ "smithy.api#documentation": "Use one of the following variables to filter a list of BatchPrediction
:
\n \n \n \n CreatedAt
- Sets the search criteria to the BatchPrediction
creation date.
\n \n \n \n Status
- Sets the search criteria to the BatchPrediction
status.
\n \n \n \n Name
- Sets the search criteria to the contents of the BatchPrediction
\n \n Name
.
\n \n \n \n IAMUser
- Sets the search criteria to the user account that invoked the BatchPrediction
creation.
\n \n \n \n MLModelId
- Sets the search criteria to the MLModel
used in the BatchPrediction
.
\n \n \n \n DataSourceId
- Sets the search criteria to the DataSource
used in the BatchPrediction
.
\n \n \n \n DataURI
- Sets the search criteria to the data file(s) used in the BatchPrediction
. The URL can identify either a file or an Amazon Simple Storage Solution (Amazon S3) bucket or directory.
\n \n "
}
},
- "Prefix": {
+ "EQ": {
"target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
- "smithy.api#documentation": "A string that is found at the beginning of a variable, such as Name
or Id
.
\n For example, a Batch Prediction
operation could have the Name
\n 2014-09-09-HolidayGiftMailer
. To search for \n this BatchPrediction
, select Name
for the FilterVariable
and any of the following strings for the \n Prefix
:\n
\n \n \n \n 2014-09
\n \n \n 2014-09-09
\n \n \n 2014-09-09-Holiday
\n \n "
+ "smithy.api#documentation": "The equal to operator. The BatchPrediction
results will have \n FilterVariable
values that exactly match the value specified with EQ
.
"
}
},
"GT": {
@@ -1403,28 +1431,16 @@
"smithy.api#documentation": "The greater than operator. The BatchPrediction
results will \n have FilterVariable
values that are greater than the value specified with GT
.
"
}
},
- "GE": {
+ "LT": {
"target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
- "smithy.api#documentation": "The greater than or equal to operator. The BatchPrediction
results will have FilterVariable
values that are greater than or equal to the value specified with GE
.\n
"
- }
- },
- "Limit": {
- "target": "com.amazonaws.machinelearning#PageLimit",
- "traits": {
- "smithy.api#documentation": "The number of pages of information to include in the result. The range of acceptable values is 1
through 100
. The default value is 100
.
"
+ "smithy.api#documentation": "The less than operator. The BatchPrediction
results will \n have FilterVariable
values that are less than the value specified with LT
.
"
}
},
- "EQ": {
+ "GE": {
"target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
- "smithy.api#documentation": "The equal to operator. The BatchPrediction
results will have \n FilterVariable
values that exactly match the value specified with EQ
.
"
- }
- },
- "FilterVariable": {
- "target": "com.amazonaws.machinelearning#BatchPredictionFilterVariable",
- "traits": {
- "smithy.api#documentation": "Use one of the following variables to filter a list of BatchPrediction
:
\n \n \n \n CreatedAt
- Sets the search criteria to the BatchPrediction
creation date.
\n \n \n \n Status
- Sets the search criteria to the BatchPrediction
status.
\n \n \n \n Name
- Sets the search criteria to the contents of the BatchPrediction
\n \n Name
.
\n \n \n \n IAMUser
- Sets the search criteria to the user account that invoked the BatchPrediction
creation.
\n \n \n \n MLModelId
- Sets the search criteria to the MLModel
used in the BatchPrediction
.
\n \n \n \n DataSourceId
- Sets the search criteria to the DataSource
used in the BatchPrediction
.
\n \n \n \n DataURI
- Sets the search criteria to the data file(s) used in the BatchPrediction
. The URL can identify either a file or an Amazon Simple Storage Solution (Amazon S3) bucket or directory.
\n \n "
+ "smithy.api#documentation": "The greater than or equal to operator. The BatchPrediction
results will have FilterVariable
values that are greater than or equal to the value specified with GE
.\n
"
}
},
"LE": {
@@ -1439,10 +1455,16 @@
"smithy.api#documentation": "The not equal to operator. The BatchPrediction
results will have FilterVariable
values not equal to the value specified with NE
.
"
}
},
- "LT": {
+ "Prefix": {
"target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
- "smithy.api#documentation": "The less than operator. The BatchPrediction
results will \n have FilterVariable
values that are less than the value specified with LT
.
"
+ "smithy.api#documentation": "A string that is found at the beginning of a variable, such as Name
or Id
.
\n For example, a Batch Prediction
operation could have the Name
\n 2014-09-09-HolidayGiftMailer
. To search for \n this BatchPrediction
, select Name
for the FilterVariable
and any of the following strings for the \n Prefix
:\n
\n \n \n \n 2014-09
\n \n \n 2014-09-09
\n \n \n 2014-09-09-Holiday
\n \n "
+ }
+ },
+ "SortOrder": {
+ "target": "com.amazonaws.machinelearning#SortOrder",
+ "traits": {
+ "smithy.api#documentation": "A two-value parameter that determines the sequence of the resulting list of MLModel
s.
\n \n \n \n asc
- Arranges the list in ascending order (A-Z, 0-9).
\n \n \n \n dsc
- Arranges the list in descending order (Z-A, 9-0).
\n \n \n Results are sorted by FilterVariable
.
"
}
},
"NextToken": {
@@ -1450,23 +1472,29 @@
"traits": {
"smithy.api#documentation": "An ID of the page in the paginated results.
"
}
+ },
+ "Limit": {
+ "target": "com.amazonaws.machinelearning#PageLimit",
+ "traits": {
+ "smithy.api#documentation": "The number of pages of information to include in the result. The range of acceptable values is 1
through 100
. The default value is 100
.
"
+ }
}
}
},
"com.amazonaws.machinelearning#DescribeBatchPredictionsOutput": {
"type": "structure",
"members": {
- "NextToken": {
- "target": "com.amazonaws.machinelearning#StringType",
- "traits": {
- "smithy.api#documentation": "The ID of the next page in the paginated results that indicates at least one more page follows.
"
- }
- },
"Results": {
"target": "com.amazonaws.machinelearning#BatchPredictions",
"traits": {
"smithy.api#documentation": "A list of BatchPrediction
objects that meet the search criteria.\n
"
}
+ },
+ "NextToken": {
+ "target": "com.amazonaws.machinelearning#StringType",
+ "traits": {
+ "smithy.api#documentation": "The ID of the next page in the paginated results that indicates at least one more page follows.
"
+ }
}
},
"traits": {
@@ -1496,18 +1524,63 @@
"outputToken": "NextToken",
"items": "Results",
"pageSize": "Limit"
+ },
+ "smithy.waiters#waitable": {
+ "DataSourceAvailable": {
+ "acceptors": [
+ {
+ "state": "success",
+ "matcher": {
+ "output": {
+ "path": "Results[].Status",
+ "expected": "COMPLETED",
+ "comparator": "allStringEquals"
+ }
+ }
+ },
+ {
+ "state": "failure",
+ "matcher": {
+ "output": {
+ "path": "Results[].Status",
+ "expected": "FAILED",
+ "comparator": "anyStringEquals"
+ }
+ }
+ }
+ ],
+ "minDelay": 30
+ }
}
}
},
"com.amazonaws.machinelearning#DescribeDataSourcesInput": {
"type": "structure",
"members": {
+ "FilterVariable": {
+ "target": "com.amazonaws.machinelearning#DataSourceFilterVariable",
+ "traits": {
+ "smithy.api#documentation": "Use one of the following variables to filter a list of DataSource
:
\n \n \n \n CreatedAt
- Sets the search criteria to DataSource
creation dates.
\n \n \n \n Status
- Sets the search criteria to DataSource
statuses.
\n \n \n \n Name
- Sets the search criteria to the contents of DataSource
\n Name
.
\n \n \n \n DataUri
- Sets the search criteria to the URI of data files used to create the DataSource
. The URI can identify either a file or an Amazon Simple Storage Service (Amazon S3) bucket or directory.
\n \n \n \n IAMUser
- Sets the search criteria to the user account that invoked the DataSource
creation.
\n \n "
+ }
+ },
+ "EQ": {
+ "target": "com.amazonaws.machinelearning#ComparatorValue",
+ "traits": {
+ "smithy.api#documentation": "The equal to operator. The DataSource
results will have \n FilterVariable
values that exactly match the value specified with EQ
.
"
+ }
+ },
"GT": {
"target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
"smithy.api#documentation": "The greater than operator. The DataSource
results will \n have FilterVariable
values that are greater than the value specified with GT
.
"
}
},
+ "LT": {
+ "target": "com.amazonaws.machinelearning#ComparatorValue",
+ "traits": {
+ "smithy.api#documentation": "The less than operator. The DataSource
results will \n have FilterVariable
values that are less than the value specified with LT
.
"
+ }
+ },
"GE": {
"target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
@@ -1520,16 +1593,10 @@
"smithy.api#documentation": "The less than or equal to operator. The DataSource
results will have FilterVariable
values that are less than or equal to the value specified with LE
.
"
}
},
- "Limit": {
- "target": "com.amazonaws.machinelearning#PageLimit",
- "traits": {
- "smithy.api#documentation": " The maximum number of DataSource
to include in the result.
"
- }
- },
- "FilterVariable": {
- "target": "com.amazonaws.machinelearning#DataSourceFilterVariable",
+ "NE": {
+ "target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
- "smithy.api#documentation": "Use one of the following variables to filter a list of DataSource
:
\n \n \n \n CreatedAt
- Sets the search criteria to DataSource
creation dates.
\n \n \n \n Status
- Sets the search criteria to DataSource
statuses.
\n \n \n \n Name
- Sets the search criteria to the contents of DataSource
\n Name
.
\n \n \n \n DataUri
- Sets the search criteria to the URI of data files used to create the DataSource
. The URI can identify either a file or an Amazon Simple Storage Service (Amazon S3) bucket or directory.
\n \n \n \n IAMUser
- Sets the search criteria to the user account that invoked the DataSource
creation.
\n \n "
+ "smithy.api#documentation": "The not equal to operator. The DataSource
results will have FilterVariable
values not equal to the value specified with NE
.
"
}
},
"Prefix": {
@@ -1538,52 +1605,40 @@
"smithy.api#documentation": "A string that is found at the beginning of a variable, such as Name
or Id
.
\n For example, a DataSource
could have the Name
\n 2014-09-09-HolidayGiftMailer
. To search for \n this DataSource
, select Name
for the FilterVariable
and any of the following strings for the \n Prefix
: \n
\n \n \n \n 2014-09
\n \n \n 2014-09-09
\n \n \n 2014-09-09-Holiday
\n \n "
}
},
- "EQ": {
- "target": "com.amazonaws.machinelearning#ComparatorValue",
- "traits": {
- "smithy.api#documentation": "The equal to operator. The DataSource
results will have \n FilterVariable
values that exactly match the value specified with EQ
.
"
- }
- },
"SortOrder": {
"target": "com.amazonaws.machinelearning#SortOrder",
"traits": {
"smithy.api#documentation": "A two-value parameter that determines the sequence of the resulting list of DataSource
.
\n \n \n \n asc
- Arranges the list in ascending order (A-Z, 0-9).
\n \n \n \n dsc
- Arranges the list in descending order (Z-A, 9-0).
\n \n \n Results are sorted by FilterVariable
.
"
}
},
- "NE": {
- "target": "com.amazonaws.machinelearning#ComparatorValue",
- "traits": {
- "smithy.api#documentation": "The not equal to operator. The DataSource
results will have FilterVariable
values not equal to the value specified with NE
.
"
- }
- },
- "LT": {
- "target": "com.amazonaws.machinelearning#ComparatorValue",
- "traits": {
- "smithy.api#documentation": "The less than operator. The DataSource
results will \n have FilterVariable
values that are less than the value specified with LT
.
"
- }
- },
"NextToken": {
"target": "com.amazonaws.machinelearning#StringType",
"traits": {
"smithy.api#documentation": "The ID of the page in the paginated results.
"
}
+ },
+ "Limit": {
+ "target": "com.amazonaws.machinelearning#PageLimit",
+ "traits": {
+ "smithy.api#documentation": " The maximum number of DataSource
to include in the result.
"
+ }
}
}
},
"com.amazonaws.machinelearning#DescribeDataSourcesOutput": {
"type": "structure",
"members": {
- "NextToken": {
- "target": "com.amazonaws.machinelearning#StringType",
- "traits": {
- "smithy.api#documentation": "An ID of the next page in the paginated results that indicates at least one more page follows.
"
- }
- },
"Results": {
"target": "com.amazonaws.machinelearning#DataSources",
"traits": {
"smithy.api#documentation": "A list of DataSource
that meet the search criteria.\n
"
}
+ },
+ "NextToken": {
+ "target": "com.amazonaws.machinelearning#StringType",
+ "traits": {
+ "smithy.api#documentation": "An ID of the next page in the paginated results that indicates at least one more page follows.
"
+ }
}
},
"traits": {
@@ -1613,28 +1668,55 @@
"outputToken": "NextToken",
"items": "Results",
"pageSize": "Limit"
+ },
+ "smithy.waiters#waitable": {
+ "EvaluationAvailable": {
+ "acceptors": [
+ {
+ "state": "success",
+ "matcher": {
+ "output": {
+ "path": "Results[].Status",
+ "expected": "COMPLETED",
+ "comparator": "allStringEquals"
+ }
+ }
+ },
+ {
+ "state": "failure",
+ "matcher": {
+ "output": {
+ "path": "Results[].Status",
+ "expected": "FAILED",
+ "comparator": "anyStringEquals"
+ }
+ }
+ }
+ ],
+ "minDelay": 30
+ }
}
}
},
"com.amazonaws.machinelearning#DescribeEvaluationsInput": {
"type": "structure",
"members": {
- "GE": {
- "target": "com.amazonaws.machinelearning#ComparatorValue",
+ "FilterVariable": {
+ "target": "com.amazonaws.machinelearning#EvaluationFilterVariable",
"traits": {
- "smithy.api#documentation": "The greater than or equal to operator. The Evaluation
results will have FilterVariable
values that are greater than or equal to the value specified with GE
.\n
"
+ "smithy.api#documentation": "Use one of the following variable to filter a list of Evaluation
objects:
\n \n \n \n CreatedAt
- Sets the search criteria to the Evaluation
creation date.
\n \n \n \n Status
- Sets the search criteria to the Evaluation
status.
\n \n \n \n Name
- Sets the search criteria to the contents of Evaluation
\n \n Name
.
\n \n \n \n IAMUser
- Sets the search criteria to the user account that invoked an Evaluation
.
\n \n \n \n MLModelId
- Sets the search criteria to the MLModel
that was evaluated.
\n \n \n \n DataSourceId
- Sets the search criteria to the DataSource
used in Evaluation
.
\n \n \n \n DataUri
- Sets the search criteria to the data file(s) used in Evaluation
. The URL can identify either a file or an Amazon Simple Storage Solution (Amazon S3) bucket or directory.
\n \n "
}
},
- "Prefix": {
+ "EQ": {
"target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
- "smithy.api#documentation": "A string that is found at the beginning of a variable, such as Name
or Id
.
\n For example, an Evaluation
could have the Name
\n 2014-09-09-HolidayGiftMailer
. To search for \n this Evaluation
, select Name
for the FilterVariable
and any of the following strings for the \n Prefix
: \n
\n \n \n \n 2014-09
\n \n \n 2014-09-09
\n \n \n 2014-09-09-Holiday
\n \n "
+ "smithy.api#documentation": "The equal to operator. The Evaluation
results will have \n FilterVariable
values that exactly match the value specified with EQ
.
"
}
},
- "LE": {
+ "GT": {
"target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
- "smithy.api#documentation": "The less than or equal to operator. The Evaluation
results will have FilterVariable
values that are less than or equal to the value specified with LE
.
"
+ "smithy.api#documentation": "The greater than operator. The Evaluation
results will \n have FilterVariable
values that are greater than the value specified with GT
.
"
}
},
"LT": {
@@ -1643,34 +1725,28 @@
"smithy.api#documentation": "The less than operator. The Evaluation
results will \n have FilterVariable
values that are less than the value specified with LT
.
"
}
},
- "NE": {
+ "GE": {
"target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
- "smithy.api#documentation": "The not equal to operator. The Evaluation
results will have FilterVariable
values not equal to the value specified with NE
.
"
+ "smithy.api#documentation": "The greater than or equal to operator. The Evaluation
results will have FilterVariable
values that are greater than or equal to the value specified with GE
.\n
"
}
},
- "GT": {
+ "LE": {
"target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
- "smithy.api#documentation": "The greater than operator. The Evaluation
results will \n have FilterVariable
values that are greater than the value specified with GT
.
"
- }
- },
- "FilterVariable": {
- "target": "com.amazonaws.machinelearning#EvaluationFilterVariable",
- "traits": {
- "smithy.api#documentation": "Use one of the following variable to filter a list of Evaluation
objects:
\n \n \n \n CreatedAt
- Sets the search criteria to the Evaluation
creation date.
\n \n \n \n Status
- Sets the search criteria to the Evaluation
status.
\n \n \n \n Name
- Sets the search criteria to the contents of Evaluation
\n \n Name
.
\n \n \n \n IAMUser
- Sets the search criteria to the user account that invoked an Evaluation
.
\n \n \n \n MLModelId
- Sets the search criteria to the MLModel
that was evaluated.
\n \n \n \n DataSourceId
- Sets the search criteria to the DataSource
used in Evaluation
.
\n \n \n \n DataUri
- Sets the search criteria to the data file(s) used in Evaluation
. The URL can identify either a file or an Amazon Simple Storage Solution (Amazon S3) bucket or directory.
\n \n "
+ "smithy.api#documentation": "The less than or equal to operator. The Evaluation
results will have FilterVariable
values that are less than or equal to the value specified with LE
.
"
}
},
- "EQ": {
+ "NE": {
"target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
- "smithy.api#documentation": "The equal to operator. The Evaluation
results will have \n FilterVariable
values that exactly match the value specified with EQ
.
"
+ "smithy.api#documentation": "The not equal to operator. The Evaluation
results will have FilterVariable
values not equal to the value specified with NE
.
"
}
},
- "NextToken": {
- "target": "com.amazonaws.machinelearning#StringType",
+ "Prefix": {
+ "target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
- "smithy.api#documentation": "The ID of the page in the paginated results.
"
+ "smithy.api#documentation": "A string that is found at the beginning of a variable, such as Name
or Id
.
\n For example, an Evaluation
could have the Name
\n 2014-09-09-HolidayGiftMailer
. To search for \n this Evaluation
, select Name
for the FilterVariable
and any of the following strings for the \n Prefix
: \n
\n \n \n \n 2014-09
\n \n \n 2014-09-09
\n \n \n 2014-09-09-Holiday
\n \n "
}
},
"SortOrder": {
@@ -1679,6 +1755,12 @@
"smithy.api#documentation": "A two-value parameter that determines the sequence of the resulting list of Evaluation
.
\n \n \n \n asc
- Arranges the list in ascending order (A-Z, 0-9).
\n \n \n \n dsc
- Arranges the list in descending order (Z-A, 9-0).
\n \n \n Results are sorted by FilterVariable
.
"
}
},
+ "NextToken": {
+ "target": "com.amazonaws.machinelearning#StringType",
+ "traits": {
+ "smithy.api#documentation": "The ID of the page in the paginated results.
"
+ }
+ },
"Limit": {
"target": "com.amazonaws.machinelearning#PageLimit",
"traits": {
@@ -1730,22 +1812,55 @@
"outputToken": "NextToken",
"items": "Results",
"pageSize": "Limit"
+ },
+ "smithy.waiters#waitable": {
+ "MLModelAvailable": {
+ "acceptors": [
+ {
+ "state": "success",
+ "matcher": {
+ "output": {
+ "path": "Results[].Status",
+ "expected": "COMPLETED",
+ "comparator": "allStringEquals"
+ }
+ }
+ },
+ {
+ "state": "failure",
+ "matcher": {
+ "output": {
+ "path": "Results[].Status",
+ "expected": "FAILED",
+ "comparator": "anyStringEquals"
+ }
+ }
+ }
+ ],
+ "minDelay": 30
+ }
}
}
},
"com.amazonaws.machinelearning#DescribeMLModelsInput": {
"type": "structure",
"members": {
- "NE": {
+ "FilterVariable": {
+ "target": "com.amazonaws.machinelearning#MLModelFilterVariable",
+ "traits": {
+ "smithy.api#documentation": "Use one of the following variables to filter a list of MLModel
:
\n \n \n \n CreatedAt
- Sets the search criteria to MLModel
creation date.
\n \n \n \n Status
- Sets the search criteria to MLModel
status.
\n \n \n \n Name
- Sets the search criteria to the contents of MLModel
\n \n Name
.
\n \n \n \n IAMUser
- Sets the search criteria to the user account that invoked the MLModel
creation.
\n \n \n \n TrainingDataSourceId
- Sets the search criteria to the DataSource
used to train one or more MLModel
.
\n \n \n \n RealtimeEndpointStatus
- Sets the search criteria to the MLModel
real-time endpoint status.
\n \n \n \n MLModelType
- Sets the search criteria to MLModel
type: binary, regression, or multi-class.
\n \n \n \n Algorithm
- Sets the search criteria to the algorithm that the MLModel
uses.
\n \n \n \n TrainingDataURI
- Sets the search criteria to the data file(s) used in training a MLModel
. The URL can identify either a file or an Amazon Simple Storage Service (Amazon S3) bucket or directory.
\n \n "
+ }
+ },
+ "EQ": {
"target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
- "smithy.api#documentation": "The not equal to operator. The MLModel
results will have FilterVariable
values not equal to the value specified with NE
.
"
+ "smithy.api#documentation": "The equal to operator. The MLModel
results will have \n FilterVariable
values that exactly match the value specified with EQ
.
"
}
},
- "NextToken": {
- "target": "com.amazonaws.machinelearning#StringType",
+ "GT": {
+ "target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
- "smithy.api#documentation": "The ID of the page in the paginated results.
"
+ "smithy.api#documentation": "The greater than operator. The MLModel
results will \n have FilterVariable
values that are greater than the value specified with GT
.
"
}
},
"LT": {
@@ -1754,10 +1869,10 @@
"smithy.api#documentation": "The less than operator. The MLModel
results will \n have FilterVariable
values that are less than the value specified with LT
.
"
}
},
- "SortOrder": {
- "target": "com.amazonaws.machinelearning#SortOrder",
+ "GE": {
+ "target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
- "smithy.api#documentation": "A two-value parameter that determines the sequence of the resulting list of MLModel
.
\n \n \n \n asc
- Arranges the list in ascending order (A-Z, 0-9).
\n \n \n \n dsc
- Arranges the list in descending order (Z-A, 9-0).
\n \n \n Results are sorted by FilterVariable
.
"
+ "smithy.api#documentation": "The greater than or equal to operator. The MLModel
results will have FilterVariable
values that are greater than or equal to the value specified with GE
.\n
"
}
},
"LE": {
@@ -1766,10 +1881,10 @@
"smithy.api#documentation": "The less than or equal to operator. The MLModel
results will have FilterVariable
values that are less than or equal to the value specified with LE
.
"
}
},
- "Limit": {
- "target": "com.amazonaws.machinelearning#PageLimit",
+ "NE": {
+ "target": "com.amazonaws.machinelearning#ComparatorValue",
"traits": {
- "smithy.api#documentation": "The number of pages of information to include in the result. The range of acceptable values is 1
through 100
. The default value is 100
.
"
+ "smithy.api#documentation": "The not equal to operator. The MLModel
results will have FilterVariable
values not equal to the value specified with NE
.
"
}
},
"Prefix": {
@@ -1778,28 +1893,22 @@
"smithy.api#documentation": "A string that is found at the beginning of a variable, such as Name
or Id
.
\n For example, an MLModel
could have the Name
\n 2014-09-09-HolidayGiftMailer
. To search for \n this MLModel
, select Name
for the FilterVariable
and any of the following strings for the \n Prefix
: \n
\n \n \n \n 2014-09
\n \n \n 2014-09-09
\n \n \n 2014-09-09-Holiday
\n \n "
}
},
- "EQ": {
- "target": "com.amazonaws.machinelearning#ComparatorValue",
- "traits": {
- "smithy.api#documentation": "The equal to operator. The MLModel
results will have \n FilterVariable
values that exactly match the value specified with EQ
.
"
- }
- },
- "GT": {
- "target": "com.amazonaws.machinelearning#ComparatorValue",
+ "SortOrder": {
+ "target": "com.amazonaws.machinelearning#SortOrder",
"traits": {
- "smithy.api#documentation": "The greater than operator. The MLModel
results will \n have FilterVariable
values that are greater than the value specified with GT
.
"
+ "smithy.api#documentation": "A two-value parameter that determines the sequence of the resulting list of MLModel
.
\n \n \n \n asc
- Arranges the list in ascending order (A-Z, 0-9).
\n \n \n \n dsc
- Arranges the list in descending order (Z-A, 9-0).
\n \n \n Results are sorted by FilterVariable
.
"
}
},
- "GE": {
- "target": "com.amazonaws.machinelearning#ComparatorValue",
+ "NextToken": {
+ "target": "com.amazonaws.machinelearning#StringType",
"traits": {
- "smithy.api#documentation": "The greater than or equal to operator. The MLModel
results will have FilterVariable
values that are greater than or equal to the value specified with GE
.\n
"
+ "smithy.api#documentation": "The ID of the page in the paginated results.
"
}
},
- "FilterVariable": {
- "target": "com.amazonaws.machinelearning#MLModelFilterVariable",
+ "Limit": {
+ "target": "com.amazonaws.machinelearning#PageLimit",
"traits": {
- "smithy.api#documentation": "Use one of the following variables to filter a list of MLModel
:
\n \n \n \n CreatedAt
- Sets the search criteria to MLModel
creation date.
\n \n \n \n Status
- Sets the search criteria to MLModel
status.
\n \n \n \n Name
- Sets the search criteria to the contents of MLModel
\n \n Name
.
\n \n \n \n IAMUser
- Sets the search criteria to the user account that invoked the MLModel
creation.
\n \n \n \n TrainingDataSourceId
- Sets the search criteria to the DataSource
used to train one or more MLModel
.
\n \n \n \n RealtimeEndpointStatus
- Sets the search criteria to the MLModel
real-time endpoint status.
\n \n \n \n MLModelType
- Sets the search criteria to MLModel
type: binary, regression, or multi-class.
\n \n \n \n Algorithm
- Sets the search criteria to the algorithm that the MLModel
uses.
\n \n \n \n TrainingDataURI
- Sets the search criteria to the data file(s) used in training a MLModel
. The URL can identify either a file or an Amazon Simple Storage Service (Amazon S3) bucket or directory.
\n \n "
+ "smithy.api#documentation": "The number of pages of information to include in the result. The range of acceptable values is 1
through 100
. The default value is 100
.
"
}
}
}
@@ -1869,12 +1978,6 @@
"com.amazonaws.machinelearning#DescribeTagsOutput": {
"type": "structure",
"members": {
- "Tags": {
- "target": "com.amazonaws.machinelearning#TagList",
- "traits": {
- "smithy.api#documentation": "A list of tags associated with the ML object.
"
- }
- },
"ResourceId": {
"target": "com.amazonaws.machinelearning#EntityId",
"traits": {
@@ -1886,6 +1989,12 @@
"traits": {
"smithy.api#documentation": "The type of the tagged ML object.
"
}
+ },
+ "Tags": {
+ "target": "com.amazonaws.machinelearning#TagList",
+ "traits": {
+ "smithy.api#documentation": "A list of tags associated with the ML object.
"
+ }
}
},
"traits": {
@@ -2049,10 +2158,16 @@
"com.amazonaws.machinelearning#Evaluation": {
"type": "structure",
"members": {
- "Name": {
- "target": "com.amazonaws.machinelearning#EntityName",
+ "EvaluationId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "A user-supplied name or description of the Evaluation
.
"
+ "smithy.api#documentation": "The ID that is assigned to the Evaluation
at creation.
"
+ }
+ },
+ "MLModelId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the MLModel
that is the focus of the evaluation.
"
}
},
"EvaluationDataSourceId": {
@@ -2061,8 +2176,11 @@
"smithy.api#documentation": "The ID of the DataSource
that is used to evaluate the MLModel
.
"
}
},
- "StartedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime"
+ "InputDataLocationS3": {
+ "target": "com.amazonaws.machinelearning#S3Url",
+ "traits": {
+ "smithy.api#documentation": "The location and name of the data in Amazon Simple Storage Server (Amazon S3) that is used in the evaluation.
"
+ }
},
"CreatedByIamUser": {
"target": "com.amazonaws.machinelearning#AwsUserArn",
@@ -2070,22 +2188,22 @@
"smithy.api#documentation": "The AWS user account that invoked the evaluation. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.
"
}
},
- "ComputeTime": {
- "target": "com.amazonaws.machinelearning#LongType"
- },
- "FinishedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime"
+ "CreatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
+ "traits": {
+ "smithy.api#documentation": "The time that the Evaluation
was created. The time is expressed in epoch time.
"
+ }
},
- "InputDataLocationS3": {
- "target": "com.amazonaws.machinelearning#S3Url",
+ "LastUpdatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": "The location and name of the data in Amazon Simple Storage Server (Amazon S3) that is used in the evaluation.
"
+ "smithy.api#documentation": "The time of the most recent edit to the Evaluation
. The time is expressed in epoch time.
"
}
},
- "MLModelId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "Name": {
+ "target": "com.amazonaws.machinelearning#EntityName",
"traits": {
- "smithy.api#documentation": "The ID of the MLModel
that is the focus of the evaluation.
"
+ "smithy.api#documentation": "A user-supplied name or description of the Evaluation
.
"
}
},
"Status": {
@@ -2106,23 +2224,14 @@
"smithy.api#documentation": "A description of the most recent details about evaluating the MLModel
.
"
}
},
- "EvaluationId": {
- "target": "com.amazonaws.machinelearning#EntityId",
- "traits": {
- "smithy.api#documentation": "The ID that is assigned to the Evaluation
at creation.
"
- }
+ "ComputeTime": {
+ "target": "com.amazonaws.machinelearning#LongType"
},
- "CreatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
- "traits": {
- "smithy.api#documentation": "The time that the Evaluation
was created. The time is expressed in epoch time.
"
- }
+ "FinishedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime"
},
- "LastUpdatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
- "traits": {
- "smithy.api#documentation": "The time of the most recent edit to the Evaluation
. The time is expressed in epoch time.
"
- }
+ "StartedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime"
}
},
"traits": {
@@ -2213,22 +2322,28 @@
"com.amazonaws.machinelearning#GetBatchPredictionOutput": {
"type": "structure",
"members": {
- "LogUri": {
- "target": "com.amazonaws.machinelearning#PresignedS3Url",
+ "BatchPredictionId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "A link to the file that contains logs of the CreateBatchPrediction
operation.
"
+ "smithy.api#documentation": "An ID assigned to the BatchPrediction
at creation. This value should be identical to the value of the BatchPredictionID
\n in the request.
"
}
},
- "ComputeTime": {
- "target": "com.amazonaws.machinelearning#LongType",
+ "MLModelId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "The approximate CPU time in milliseconds that Amazon Machine Learning spent processing the BatchPrediction
, normalized and scaled on computation resources. ComputeTime
is only available if the BatchPrediction
is in the COMPLETED
state.
"
+ "smithy.api#documentation": "The ID of the MLModel
that generated predictions for the BatchPrediction
request.
"
}
},
- "OutputUri": {
+ "BatchPredictionDataSourceId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
+ "traits": {
+ "smithy.api#documentation": "The ID of the DataSource
that was used to create the BatchPrediction
.\n
"
+ }
+ },
+ "InputDataLocationS3": {
"target": "com.amazonaws.machinelearning#S3Url",
"traits": {
- "smithy.api#documentation": "The location of an Amazon S3 bucket or directory to receive the operation results.
"
+ "smithy.api#documentation": "The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).
"
}
},
"CreatedByIamUser": {
@@ -2237,46 +2352,40 @@
"smithy.api#documentation": "The AWS user account that invoked the BatchPrediction
. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.
"
}
},
- "BatchPredictionDataSourceId": {
- "target": "com.amazonaws.machinelearning#EntityId",
- "traits": {
- "smithy.api#documentation": "The ID of the DataSource
that was used to create the BatchPrediction
.\n
"
- }
- },
- "Name": {
- "target": "com.amazonaws.machinelearning#EntityName",
+ "CreatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": "A user-supplied name or description of the BatchPrediction
.
"
+ "smithy.api#documentation": "The time when the BatchPrediction
was created. The time is expressed in epoch time.
"
}
},
- "TotalRecordCount": {
- "target": "com.amazonaws.machinelearning#LongType",
+ "LastUpdatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": "The number of total records that Amazon Machine Learning saw while processing the BatchPrediction
.
"
+ "smithy.api#documentation": "The time of the most recent edit to BatchPrediction
. The time is expressed in epoch time.
"
}
},
- "InvalidRecordCount": {
- "target": "com.amazonaws.machinelearning#LongType",
+ "Name": {
+ "target": "com.amazonaws.machinelearning#EntityName",
"traits": {
- "smithy.api#documentation": "The number of invalid records that Amazon Machine Learning saw while processing the BatchPrediction
.
"
+ "smithy.api#documentation": "A user-supplied name or description of the BatchPrediction
.
"
}
},
- "MLModelId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "Status": {
+ "target": "com.amazonaws.machinelearning#EntityStatus",
"traits": {
- "smithy.api#documentation": "The ID of the MLModel
that generated predictions for the BatchPrediction
request.
"
+ "smithy.api#documentation": "The status of the BatchPrediction
, which can be one of the following values:
\n \n \n \n PENDING
- Amazon Machine Learning (Amazon ML) submitted a request to generate batch predictions.
\n \n \n \n INPROGRESS
- The batch predictions are in progress.
\n \n \n \n FAILED
- The request to perform a batch prediction did not run to completion. It is not usable.
\n \n \n \n COMPLETED
- The batch prediction process completed successfully.
\n \n \n \n DELETED
- The BatchPrediction
is marked as deleted. It is not usable.
\n \n "
}
},
- "LastUpdatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
+ "OutputUri": {
+ "target": "com.amazonaws.machinelearning#S3Url",
"traits": {
- "smithy.api#documentation": "The time of the most recent edit to BatchPrediction
. The time is expressed in epoch time.
"
+ "smithy.api#documentation": "The location of an Amazon S3 bucket or directory to receive the operation results.
"
}
},
- "CreatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
+ "LogUri": {
+ "target": "com.amazonaws.machinelearning#PresignedS3Url",
"traits": {
- "smithy.api#documentation": "The time when the BatchPrediction
was created. The time is expressed in epoch time.
"
+ "smithy.api#documentation": "A link to the file that contains logs of the CreateBatchPrediction
operation.
"
}
},
"Message": {
@@ -2285,10 +2394,10 @@
"smithy.api#documentation": "A description of the most recent details about processing the batch prediction request.
"
}
},
- "Status": {
- "target": "com.amazonaws.machinelearning#EntityStatus",
+ "ComputeTime": {
+ "target": "com.amazonaws.machinelearning#LongType",
"traits": {
- "smithy.api#documentation": "The status of the BatchPrediction
, which can be one of the following values:
\n \n \n \n PENDING
- Amazon Machine Learning (Amazon ML) submitted a request to generate batch predictions.
\n \n \n \n INPROGRESS
- The batch predictions are in progress.
\n \n \n \n FAILED
- The request to perform a batch prediction did not run to completion. It is not usable.
\n \n \n \n COMPLETED
- The batch prediction process completed successfully.
\n \n \n \n DELETED
- The BatchPrediction
is marked as deleted. It is not usable.
\n \n "
+ "smithy.api#documentation": "The approximate CPU time in milliseconds that Amazon Machine Learning spent processing the BatchPrediction
, normalized and scaled on computation resources. ComputeTime
is only available if the BatchPrediction
is in the COMPLETED
state.
"
}
},
"FinishedAt": {
@@ -2297,22 +2406,22 @@
"smithy.api#documentation": "The epoch time when Amazon Machine Learning marked the BatchPrediction
as COMPLETED
or FAILED
. FinishedAt
is only available when the BatchPrediction
is in the COMPLETED
or FAILED
state.
"
}
},
- "BatchPredictionId": {
- "target": "com.amazonaws.machinelearning#EntityId",
- "traits": {
- "smithy.api#documentation": "An ID assigned to the BatchPrediction
at creation. This value should be identical to the value of the BatchPredictionID
\n in the request.
"
- }
- },
"StartedAt": {
"target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
"smithy.api#documentation": "The epoch time when Amazon Machine Learning marked the BatchPrediction
as INPROGRESS
. StartedAt
isn't available if the BatchPrediction
is in the PENDING
state.
"
}
},
- "InputDataLocationS3": {
- "target": "com.amazonaws.machinelearning#S3Url",
+ "TotalRecordCount": {
+ "target": "com.amazonaws.machinelearning#LongType",
"traits": {
- "smithy.api#documentation": "The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).
"
+ "smithy.api#documentation": "The number of total records that Amazon Machine Learning saw while processing the BatchPrediction
.
"
+ }
+ },
+ "InvalidRecordCount": {
+ "target": "com.amazonaws.machinelearning#LongType",
+ "traits": {
+ "smithy.api#documentation": "The number of invalid records that Amazon Machine Learning saw while processing the BatchPrediction
.
"
}
}
},
@@ -2346,43 +2455,40 @@
"com.amazonaws.machinelearning#GetDataSourceInput": {
"type": "structure",
"members": {
- "Verbose": {
- "target": "com.amazonaws.machinelearning#Verbose",
- "traits": {
- "smithy.api#documentation": "Specifies whether the GetDataSource
operation should return DataSourceSchema
.
\n If true, DataSourceSchema
is returned.
\n If false, DataSourceSchema
is not returned.
"
- }
- },
"DataSourceId": {
"target": "com.amazonaws.machinelearning#EntityId",
"traits": {
"smithy.api#documentation": "The ID assigned to the DataSource
at creation.
",
"smithy.api#required": {}
}
+ },
+ "Verbose": {
+ "target": "com.amazonaws.machinelearning#Verbose",
+ "traits": {
+ "smithy.api#documentation": "Specifies whether the GetDataSource
operation should return DataSourceSchema
.
\n If true, DataSourceSchema
is returned.
\n If false, DataSourceSchema
is not returned.
"
+ }
}
}
},
"com.amazonaws.machinelearning#GetDataSourceOutput": {
"type": "structure",
"members": {
- "RedshiftMetadata": {
- "target": "com.amazonaws.machinelearning#RedshiftMetadata"
- },
- "LastUpdatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
+ "DataSourceId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "The time of the most recent edit to the DataSource
. The time is expressed in epoch time.
"
+ "smithy.api#documentation": "The ID assigned to the DataSource
at creation. This value should be identical to the value of the DataSourceId
in the request.
"
}
},
- "CreatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
+ "DataLocationS3": {
+ "target": "com.amazonaws.machinelearning#S3Url",
"traits": {
- "smithy.api#documentation": "The time that the DataSource
was created. The time is expressed in epoch time.
"
+ "smithy.api#documentation": "The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).
"
}
},
- "NumberOfFiles": {
- "target": "com.amazonaws.machinelearning#LongType",
+ "DataRearrangement": {
+ "target": "com.amazonaws.machinelearning#DataRearrangement",
"traits": {
- "smithy.api#documentation": "The number of data files referenced by the DataSource
.
"
+ "smithy.api#documentation": "A JSON string that represents the splitting and rearrangement requirement used when this DataSource
\n was created.
"
}
},
"CreatedByIamUser": {
@@ -2391,34 +2497,34 @@
"smithy.api#documentation": "The AWS user account from which the DataSource
was created. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.
"
}
},
- "Message": {
- "target": "com.amazonaws.machinelearning#Message",
+ "CreatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": "The user-supplied description of the most recent details about creating the DataSource
.
"
+ "smithy.api#documentation": "The time that the DataSource
was created. The time is expressed in epoch time.
"
}
},
- "DataSourceSchema": {
- "target": "com.amazonaws.machinelearning#DataSchema",
+ "LastUpdatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": "The schema used by all of the data files of this DataSource
.
\n \n Note: This parameter is provided as part of the verbose format.
"
+ "smithy.api#documentation": "The time of the most recent edit to the DataSource
. The time is expressed in epoch time.
"
}
},
- "DataSourceId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "DataSizeInBytes": {
+ "target": "com.amazonaws.machinelearning#LongType",
"traits": {
- "smithy.api#documentation": "The ID assigned to the DataSource
at creation. This value should be identical to the value of the DataSourceId
in the request.
"
+ "smithy.api#documentation": "The total size of observations in the data files.
"
}
},
- "Name": {
- "target": "com.amazonaws.machinelearning#EntityName",
+ "NumberOfFiles": {
+ "target": "com.amazonaws.machinelearning#LongType",
"traits": {
- "smithy.api#documentation": "A user-supplied name or description of the DataSource
.
"
+ "smithy.api#documentation": "The number of data files referenced by the DataSource
.
"
}
},
- "ComputeTime": {
- "target": "com.amazonaws.machinelearning#LongType",
+ "Name": {
+ "target": "com.amazonaws.machinelearning#EntityName",
"traits": {
- "smithy.api#documentation": "The approximate CPU time in milliseconds that Amazon Machine Learning spent processing the DataSource
, normalized and scaled on computation resources. ComputeTime
is only available if the DataSource
is in the COMPLETED
state and the ComputeStatistics
is set to true.
"
+ "smithy.api#documentation": "A user-supplied name or description of the DataSource
.
"
}
},
"Status": {
@@ -2427,53 +2533,56 @@
"smithy.api#documentation": "The current status of the DataSource
. This element can have one of the following values:
\n \n \n \n PENDING
- Amazon ML submitted a request to create a DataSource
.
\n \n \n \n INPROGRESS
- The creation process is underway.
\n \n \n \n FAILED
- The request to create a DataSource
did not run to completion. It is not usable.
\n \n \n \n COMPLETED
- The creation process completed successfully.
\n \n \n \n DELETED
- The DataSource
is marked as deleted. It is not usable.
\n \n "
}
},
- "FinishedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
+ "LogUri": {
+ "target": "com.amazonaws.machinelearning#PresignedS3Url",
"traits": {
- "smithy.api#documentation": "The epoch time when Amazon Machine Learning marked the DataSource
as COMPLETED
or FAILED
. FinishedAt
is only available when the DataSource
is in the COMPLETED
or FAILED
state.
"
+ "smithy.api#documentation": "A link to the file containing logs of CreateDataSourceFrom*
operations.
"
}
},
- "StartedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
+ "Message": {
+ "target": "com.amazonaws.machinelearning#Message",
"traits": {
- "smithy.api#documentation": "The epoch time when Amazon Machine Learning marked the DataSource
as INPROGRESS
. StartedAt
isn't available if the DataSource
is in the PENDING
state.
"
+ "smithy.api#documentation": "The user-supplied description of the most recent details about creating the DataSource
.
"
}
},
- "LogUri": {
- "target": "com.amazonaws.machinelearning#PresignedS3Url",
- "traits": {
- "smithy.api#documentation": "A link to the file containing logs of CreateDataSourceFrom*
operations.
"
- }
+ "RedshiftMetadata": {
+ "target": "com.amazonaws.machinelearning#RedshiftMetadata"
+ },
+ "RDSMetadata": {
+ "target": "com.amazonaws.machinelearning#RDSMetadata"
},
"RoleARN": {
"target": "com.amazonaws.machinelearning#RoleARN"
},
- "DataRearrangement": {
- "target": "com.amazonaws.machinelearning#DataRearrangement",
- "traits": {
- "smithy.api#documentation": "A JSON string that represents the splitting and rearrangement requirement used when this DataSource
\n was created.
"
- }
- },
"ComputeStatistics": {
"target": "com.amazonaws.machinelearning#ComputeStatistics",
"traits": {
"smithy.api#documentation": "\n The parameter is true
if statistics need to be generated from the observation data.\n
"
}
},
- "DataLocationS3": {
- "target": "com.amazonaws.machinelearning#S3Url",
- "traits": {
- "smithy.api#documentation": "The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).
"
+ "ComputeTime": {
+ "target": "com.amazonaws.machinelearning#LongType",
+ "traits": {
+ "smithy.api#documentation": "The approximate CPU time in milliseconds that Amazon Machine Learning spent processing the DataSource
, normalized and scaled on computation resources. ComputeTime
is only available if the DataSource
is in the COMPLETED
state and the ComputeStatistics
is set to true.
"
}
},
- "DataSizeInBytes": {
- "target": "com.amazonaws.machinelearning#LongType",
+ "FinishedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": "The total size of observations in the data files.
"
+ "smithy.api#documentation": "The epoch time when Amazon Machine Learning marked the DataSource
as COMPLETED
or FAILED
. FinishedAt
is only available when the DataSource
is in the COMPLETED
or FAILED
state.
"
}
},
- "RDSMetadata": {
- "target": "com.amazonaws.machinelearning#RDSMetadata"
+ "StartedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
+ "traits": {
+ "smithy.api#documentation": "The epoch time when Amazon Machine Learning marked the DataSource
as INPROGRESS
. StartedAt
isn't available if the DataSource
is in the PENDING
state.
"
+ }
+ },
+ "DataSourceSchema": {
+ "target": "com.amazonaws.machinelearning#DataSchema",
+ "traits": {
+ "smithy.api#documentation": "The schema used by all of the data files of this DataSource
.
\n \n Note: This parameter is provided as part of the verbose format.
"
+ }
}
},
"traits": {
@@ -2518,16 +2627,10 @@
"com.amazonaws.machinelearning#GetEvaluationOutput": {
"type": "structure",
"members": {
- "InputDataLocationS3": {
- "target": "com.amazonaws.machinelearning#S3Url",
- "traits": {
- "smithy.api#documentation": "The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).
"
- }
- },
- "LastUpdatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
+ "EvaluationId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "The time of the most recent edit to the Evaluation
. The time is expressed in epoch time.
"
+ "smithy.api#documentation": "The evaluation ID which is same as the EvaluationId
in the request.
"
}
},
"MLModelId": {
@@ -2536,40 +2639,40 @@
"smithy.api#documentation": "The ID of the MLModel
that was the focus of the evaluation.
"
}
},
- "PerformanceMetrics": {
- "target": "com.amazonaws.machinelearning#PerformanceMetrics",
+ "EvaluationDataSourceId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "Measurements of how well the MLModel
performed using observations referenced by the DataSource
. One of the following metric is returned based on the type of the MLModel
: \n
\n \n \n BinaryAUC: A binary MLModel
uses the Area Under the Curve (AUC) technique to measure performance.
\n \n \n RegressionRMSE: A regression MLModel
uses the Root Mean Square Error (RMSE) technique to measure performance. RMSE measures the difference between predicted and actual values for a single variable.
\n \n \n MulticlassAvgFScore: A multiclass MLModel
uses the F1 score technique to measure performance.
\n \n \n \n For more information about performance metrics, please see the Amazon Machine Learning Developer Guide .\n
"
+ "smithy.api#documentation": "The DataSource
used for this evaluation.
"
}
},
- "Name": {
- "target": "com.amazonaws.machinelearning#EntityName",
+ "InputDataLocationS3": {
+ "target": "com.amazonaws.machinelearning#S3Url",
"traits": {
- "smithy.api#documentation": "A user-supplied name or description of the Evaluation
.
"
+ "smithy.api#documentation": "The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).
"
}
},
- "Message": {
- "target": "com.amazonaws.machinelearning#Message",
+ "CreatedByIamUser": {
+ "target": "com.amazonaws.machinelearning#AwsUserArn",
"traits": {
- "smithy.api#documentation": "A description of the most recent details about evaluating the MLModel
.
"
+ "smithy.api#documentation": "The AWS user account that invoked the evaluation. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.
"
}
},
- "StartedAt": {
+ "CreatedAt": {
"target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": "The epoch time when Amazon Machine Learning marked the Evaluation
as INPROGRESS
. StartedAt
isn't available if the Evaluation
is in the PENDING
state.
"
+ "smithy.api#documentation": "The time that the Evaluation
was created. The time is expressed in epoch time.
"
}
},
- "EvaluationId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "LastUpdatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": "The evaluation ID which is same as the EvaluationId
in the request.
"
+ "smithy.api#documentation": "The time of the most recent edit to the Evaluation
. The time is expressed in epoch time.
"
}
},
- "EvaluationDataSourceId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "Name": {
+ "target": "com.amazonaws.machinelearning#EntityName",
"traits": {
- "smithy.api#documentation": "The DataSource
used for this evaluation.
"
+ "smithy.api#documentation": "A user-supplied name or description of the Evaluation
.
"
}
},
"Status": {
@@ -2578,10 +2681,10 @@
"smithy.api#documentation": "The status of the evaluation. This element can have one of the following values:
\n \n \n \n PENDING
- Amazon Machine Language (Amazon ML) submitted a request to evaluate an MLModel
.
\n \n \n \n INPROGRESS
- The evaluation is underway.
\n \n \n \n FAILED
- The request to evaluate an MLModel
did not run to completion. It is not usable.
\n \n \n \n COMPLETED
- The evaluation process completed successfully.
\n \n \n \n DELETED
- The Evaluation
is marked as deleted. It is not usable.
\n \n "
}
},
- "CreatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
+ "PerformanceMetrics": {
+ "target": "com.amazonaws.machinelearning#PerformanceMetrics",
"traits": {
- "smithy.api#documentation": "The time that the Evaluation
was created. The time is expressed in epoch time.
"
+ "smithy.api#documentation": "Measurements of how well the MLModel
performed using observations referenced by the DataSource
. One of the following metric is returned based on the type of the MLModel
: \n
\n \n \n BinaryAUC: A binary MLModel
uses the Area Under the Curve (AUC) technique to measure performance.
\n \n \n RegressionRMSE: A regression MLModel
uses the Root Mean Square Error (RMSE) technique to measure performance. RMSE measures the difference between predicted and actual values for a single variable.
\n \n \n MulticlassAvgFScore: A multiclass MLModel
uses the F1 score technique to measure performance.
\n \n \n \n For more information about performance metrics, please see the Amazon Machine Learning Developer Guide .\n
"
}
},
"LogUri": {
@@ -2590,10 +2693,10 @@
"smithy.api#documentation": "A link to the file that contains logs of the CreateEvaluation
operation.
"
}
},
- "FinishedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
+ "Message": {
+ "target": "com.amazonaws.machinelearning#Message",
"traits": {
- "smithy.api#documentation": "The epoch time when Amazon Machine Learning marked the Evaluation
as COMPLETED
or FAILED
. FinishedAt
is only available when the Evaluation
is in the COMPLETED
or FAILED
state.
"
+ "smithy.api#documentation": "A description of the most recent details about evaluating the MLModel
.
"
}
},
"ComputeTime": {
@@ -2602,10 +2705,16 @@
"smithy.api#documentation": "The approximate CPU time in milliseconds that Amazon Machine Learning spent processing the Evaluation
, normalized and scaled on computation resources. ComputeTime
is only available if the Evaluation
is in the COMPLETED
state.
"
}
},
- "CreatedByIamUser": {
- "target": "com.amazonaws.machinelearning#AwsUserArn",
+ "FinishedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": "The AWS user account that invoked the evaluation. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.
"
+ "smithy.api#documentation": "The epoch time when Amazon Machine Learning marked the Evaluation
as COMPLETED
or FAILED
. FinishedAt
is only available when the Evaluation
is in the COMPLETED
or FAILED
state.
"
+ }
+ },
+ "StartedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
+ "traits": {
+ "smithy.api#documentation": "The epoch time when Amazon Machine Learning marked the Evaluation
as INPROGRESS
. StartedAt
isn't available if the Evaluation
is in the PENDING
state.
"
}
}
},
@@ -2657,79 +2766,97 @@
"com.amazonaws.machinelearning#GetMLModelOutput": {
"type": "structure",
"members": {
- "MLModelType": {
- "target": "com.amazonaws.machinelearning#MLModelType",
+ "MLModelId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "Identifies the MLModel
category. The following are the available types:
\n \n \n REGRESSION -- Produces a numeric result. For example, \"What price should a house be listed at?\"
\n \n \n BINARY -- Produces one of two possible results. For example, \"Is this an e-commerce website?\"
\n \n \n MULTICLASS -- Produces one of several possible results. For example, \"Is this a HIGH, LOW or MEDIUM risk trade?\"
\n \n "
+ "smithy.api#documentation": "The MLModel ID, \n which is same as the MLModelId
in the request.
"
}
},
- "TrainingParameters": {
- "target": "com.amazonaws.machinelearning#TrainingParameters",
+ "TrainingDataSourceId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "A list of the training parameters in the MLModel
. The list is implemented as\n a map of key-value pairs.
\n The following is the current set of training parameters:
\n \n \n \n sgd.maxMLModelSizeInBytes
- The maximum allowed size of the model. Depending on the\n input data, the size of the model might affect its performance.
\n The value is an integer that ranges from 100000
to 2147483648
. The default value is 33554432
.
\n \n \n \n sgd.maxPasses
- The number of times that the training process traverses the\n observations to build the MLModel
. The value is an integer that\n ranges from 1
to 100
. The default value is\n 10
.
\n \n \n \n sgd.shuffleType
- Whether Amazon ML shuffles the training data. Shuffling data improves a\n model's ability to find the optimal solution for a variety of data types. The\n valid values are auto
and none
. The default value is\n none
. We strongly recommend that you shuffle your data.
\n \n \n \n sgd.l1RegularizationAmount
- The coefficient regularization L1 norm. It controls\n overfitting the data by penalizing large coefficients. This tends to drive\n coefficients to zero, resulting in a sparse feature set. If you use this\n parameter, start by specifying a small value, such as 1.0E-08
.
\n The value is a double that ranges from 0
to MAX_DOUBLE
.\n The default is to not use L1 normalization. This parameter can't be used when\n L2
is specified. Use this parameter sparingly.
\n \n \n \n sgd.l2RegularizationAmount
- The coefficient regularization L2 norm. It controls\n overfitting the data by penalizing large coefficients. This tends to drive\n coefficients to small, nonzero values. If you use this parameter, start by\n specifying a small value, such as 1.0E-08
.
\n The value is a double that ranges from 0
to MAX_DOUBLE
.\n The default is to not use L2 normalization. This parameter can't be used when\n L1
is specified. Use this parameter sparingly.
\n \n "
+ "smithy.api#documentation": "The ID of the training DataSource
.
"
}
},
- "EndpointInfo": {
- "target": "com.amazonaws.machinelearning#RealtimeEndpointInfo",
+ "CreatedByIamUser": {
+ "target": "com.amazonaws.machinelearning#AwsUserArn",
"traits": {
- "smithy.api#documentation": "The current endpoint of the MLModel
\n
"
+ "smithy.api#documentation": "The AWS user account from which the MLModel
was created. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.
"
}
},
- "InputDataLocationS3": {
- "target": "com.amazonaws.machinelearning#S3Url",
+ "CreatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": "The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).
"
+ "smithy.api#documentation": "The time that the MLModel
was created. The time is expressed in epoch time.
"
+ }
+ },
+ "LastUpdatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
+ "traits": {
+ "smithy.api#documentation": "The time of the most recent edit to the MLModel
. The time is expressed in epoch time.
"
+ }
+ },
+ "Name": {
+ "target": "com.amazonaws.machinelearning#MLModelName",
+ "traits": {
+ "smithy.api#documentation": "A user-supplied name or description of the MLModel
.
"
+ }
+ },
+ "Status": {
+ "target": "com.amazonaws.machinelearning#EntityStatus",
+ "traits": {
+ "smithy.api#documentation": "The current status of the MLModel
. This element can have one of the following values:
\n \n \n \n PENDING
- Amazon Machine Learning (Amazon ML) submitted a request to describe a MLModel
.
\n \n \n \n INPROGRESS
- The request is processing.
\n \n \n \n FAILED
- The request did not run to completion. The ML model isn't\n usable.
\n \n \n \n COMPLETED
- The request completed successfully.
\n \n \n \n DELETED
- The MLModel
is marked as deleted. It isn't\n usable.
\n \n "
}
},
"SizeInBytes": {
"target": "com.amazonaws.machinelearning#LongType"
},
- "ScoreThresholdLastUpdatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
+ "EndpointInfo": {
+ "target": "com.amazonaws.machinelearning#RealtimeEndpointInfo",
"traits": {
- "smithy.api#documentation": "The time of the most recent edit to the ScoreThreshold
. The time is expressed in epoch time.
"
+ "smithy.api#documentation": "The current endpoint of the MLModel
\n
"
}
},
- "Schema": {
- "target": "com.amazonaws.machinelearning#DataSchema",
+ "TrainingParameters": {
+ "target": "com.amazonaws.machinelearning#TrainingParameters",
"traits": {
- "smithy.api#documentation": "The schema used by all of the data files referenced by the DataSource
.
\n \n Note: This parameter is provided as part of the verbose format.
"
+ "smithy.api#documentation": "A list of the training parameters in the MLModel
. The list is implemented as\n a map of key-value pairs.
\n The following is the current set of training parameters:
\n \n \n \n sgd.maxMLModelSizeInBytes
- The maximum allowed size of the model. Depending on the\n input data, the size of the model might affect its performance.
\n The value is an integer that ranges from 100000
to 2147483648
. The default value is 33554432
.
\n \n \n \n sgd.maxPasses
- The number of times that the training process traverses the\n observations to build the MLModel
. The value is an integer that\n ranges from 1
to 10000
. The default value is\n 10
.
\n \n \n \n sgd.shuffleType
- Whether Amazon ML shuffles the training data. Shuffling data improves a\n model's ability to find the optimal solution for a variety of data types. The\n valid values are auto
and none
. The default value is\n none
. We strongly recommend that you shuffle your data.
\n \n \n \n sgd.l1RegularizationAmount
- The coefficient regularization L1 norm. It controls\n overfitting the data by penalizing large coefficients. This tends to drive\n coefficients to zero, resulting in a sparse feature set. If you use this\n parameter, start by specifying a small value, such as 1.0E-08
.
\n The value is a double that ranges from 0
to MAX_DOUBLE
.\n The default is to not use L1 normalization. This parameter can't be used when\n L2
is specified. Use this parameter sparingly.
\n \n \n \n sgd.l2RegularizationAmount
- The coefficient regularization L2 norm. It controls\n overfitting the data by penalizing large coefficients. This tends to drive\n coefficients to small, nonzero values. If you use this parameter, start by\n specifying a small value, such as 1.0E-08
.
\n The value is a double that ranges from 0
to MAX_DOUBLE
.\n The default is to not use L2 normalization. This parameter can't be used when\n L1
is specified. Use this parameter sparingly.
\n \n "
}
},
- "LogUri": {
- "target": "com.amazonaws.machinelearning#PresignedS3Url",
+ "InputDataLocationS3": {
+ "target": "com.amazonaws.machinelearning#S3Url",
"traits": {
- "smithy.api#documentation": "A link to the file that contains logs of the CreateMLModel
operation.
"
+ "smithy.api#documentation": "The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).
"
}
},
- "MLModelId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "MLModelType": {
+ "target": "com.amazonaws.machinelearning#MLModelType",
"traits": {
- "smithy.api#documentation": "The MLModel ID, \n which is same as the MLModelId
in the request.
"
+ "smithy.api#documentation": "Identifies the MLModel
category. The following are the available types:
\n \n \n REGRESSION -- Produces a numeric result. For example, \"What price should a house be listed at?\"
\n \n \n BINARY -- Produces one of two possible results. For example, \"Is this an e-commerce website?\"
\n \n \n MULTICLASS -- Produces one of several possible results. For example, \"Is this a HIGH, LOW or MEDIUM risk trade?\"
\n \n "
}
},
- "Message": {
- "target": "com.amazonaws.machinelearning#Message",
+ "ScoreThreshold": {
+ "target": "com.amazonaws.machinelearning#ScoreThreshold",
"traits": {
- "smithy.api#documentation": "A description of the most recent details about accessing the MLModel
.
"
+ "smithy.api#documentation": "The scoring threshold is used in binary classification MLModel
\n models. It marks the boundary between a positive prediction and a\n negative prediction.
\n Output values greater than or equal to the threshold receive a positive result from the MLModel, such as \n true
. Output values less than the threshold receive a negative response from the MLModel, \n such as false
.
"
}
},
- "Recipe": {
- "target": "com.amazonaws.machinelearning#Recipe",
+ "ScoreThresholdLastUpdatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": "The recipe to use when training the MLModel
. The Recipe
\n provides detailed information about the observation data to use during training, and\n manipulations to perform on the observation data during training.
\n \n Note: This parameter is provided as part of the verbose format.
"
+ "smithy.api#documentation": "The time of the most recent edit to the ScoreThreshold
. The time is expressed in epoch time.
"
}
},
- "TrainingDataSourceId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "LogUri": {
+ "target": "com.amazonaws.machinelearning#PresignedS3Url",
"traits": {
- "smithy.api#documentation": "The ID of the training DataSource
.
"
+ "smithy.api#documentation": "A link to the file that contains logs of the CreateMLModel
operation.
"
}
},
- "Name": {
- "target": "com.amazonaws.machinelearning#MLModelName",
+ "Message": {
+ "target": "com.amazonaws.machinelearning#Message",
"traits": {
- "smithy.api#documentation": "A user-supplied name or description of the MLModel
.
"
+ "smithy.api#documentation": "A description of the most recent details about accessing the MLModel
.
"
}
},
"ComputeTime": {
@@ -2738,12 +2865,6 @@
"smithy.api#documentation": "The approximate CPU time in milliseconds that Amazon Machine Learning spent processing the MLModel
, normalized and scaled on computation resources. ComputeTime
is only available if the MLModel
is in the COMPLETED
state.
"
}
},
- "Status": {
- "target": "com.amazonaws.machinelearning#EntityStatus",
- "traits": {
- "smithy.api#documentation": "The current status of the MLModel
. This element can have one of the following values:
\n \n \n \n PENDING
- Amazon Machine Learning (Amazon ML) submitted a request to describe a MLModel
.
\n \n \n \n INPROGRESS
- The request is processing.
\n \n \n \n FAILED
- The request did not run to completion. The ML model isn't\n usable.
\n \n \n \n COMPLETED
- The request completed successfully.
\n \n \n \n DELETED
- The MLModel
is marked as deleted. It isn't\n usable.
\n \n "
- }
- },
"FinishedAt": {
"target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
@@ -2756,28 +2877,16 @@
"smithy.api#documentation": "The epoch time when Amazon Machine Learning marked the MLModel
as INPROGRESS
. StartedAt
isn't available if the MLModel
is in the PENDING
state.
"
}
},
- "LastUpdatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
- "traits": {
- "smithy.api#documentation": "The time of the most recent edit to the MLModel
. The time is expressed in epoch time.
"
- }
- },
- "ScoreThreshold": {
- "target": "com.amazonaws.machinelearning#ScoreThreshold",
- "traits": {
- "smithy.api#documentation": "The scoring threshold is used in binary classification MLModel
\n models. It marks the boundary between a positive prediction and a\n negative prediction.
\n Output values greater than or equal to the threshold receive a positive result from the MLModel, such as \n true
. Output values less than the threshold receive a negative response from the MLModel, \n such as false
.
"
- }
- },
- "CreatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
+ "Recipe": {
+ "target": "com.amazonaws.machinelearning#Recipe",
"traits": {
- "smithy.api#documentation": "The time that the MLModel
was created. The time is expressed in epoch time.
"
+ "smithy.api#documentation": "The recipe to use when training the MLModel
. The Recipe
\n provides detailed information about the observation data to use during training, and\n manipulations to perform on the observation data during training.
\n \n Note: This parameter is provided as part of the verbose format.
"
}
},
- "CreatedByIamUser": {
- "target": "com.amazonaws.machinelearning#AwsUserArn",
+ "Schema": {
+ "target": "com.amazonaws.machinelearning#DataSchema",
"traits": {
- "smithy.api#documentation": "The AWS user account from which the MLModel
was created. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.
"
+ "smithy.api#documentation": "The schema used by all of the data files referenced by the DataSource
.
\n \n Note: This parameter is provided as part of the verbose format.
"
}
}
},
@@ -2788,11 +2897,11 @@
"com.amazonaws.machinelearning#IdempotentParameterMismatchException": {
"type": "structure",
"members": {
- "code": {
- "target": "com.amazonaws.machinelearning#ErrorCode"
- },
"message": {
"target": "com.amazonaws.machinelearning#ErrorMessage"
+ },
+ "code": {
+ "target": "com.amazonaws.machinelearning#ErrorCode"
}
},
"traits": {
@@ -2810,11 +2919,11 @@
"com.amazonaws.machinelearning#InternalServerException": {
"type": "structure",
"members": {
- "code": {
- "target": "com.amazonaws.machinelearning#ErrorCode"
- },
"message": {
"target": "com.amazonaws.machinelearning#ErrorMessage"
+ },
+ "code": {
+ "target": "com.amazonaws.machinelearning#ErrorCode"
}
},
"traits": {
@@ -2826,11 +2935,11 @@
"com.amazonaws.machinelearning#InvalidInputException": {
"type": "structure",
"members": {
- "code": {
- "target": "com.amazonaws.machinelearning#ErrorCode"
- },
"message": {
"target": "com.amazonaws.machinelearning#ErrorMessage"
+ },
+ "code": {
+ "target": "com.amazonaws.machinelearning#ErrorCode"
}
},
"traits": {
@@ -2847,7 +2956,6 @@
}
},
"traits": {
- "smithy.api#documentation": "A submitted tag is invalid.
",
"smithy.api#error": "client"
}
},
@@ -2862,11 +2970,11 @@
"com.amazonaws.machinelearning#LimitExceededException": {
"type": "structure",
"members": {
- "code": {
- "target": "com.amazonaws.machinelearning#ErrorCode"
- },
"message": {
"target": "com.amazonaws.machinelearning#ErrorMessage"
+ },
+ "code": {
+ "target": "com.amazonaws.machinelearning#ErrorCode"
}
},
"traits": {
@@ -2885,43 +2993,10 @@
"com.amazonaws.machinelearning#MLModel": {
"type": "structure",
"members": {
- "EndpointInfo": {
- "target": "com.amazonaws.machinelearning#RealtimeEndpointInfo",
- "traits": {
- "smithy.api#documentation": "The current endpoint of the MLModel
.
"
- }
- },
- "ScoreThresholdLastUpdatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
- "traits": {
- "smithy.api#documentation": "The time of the most recent edit to the ScoreThreshold
. The time is expressed in epoch time.
"
- }
- },
- "TrainingParameters": {
- "target": "com.amazonaws.machinelearning#TrainingParameters",
- "traits": {
- "smithy.api#documentation": "A list of the training parameters in the MLModel
. The list is implemented as\n a map of key-value pairs.
\n The following is the current set of training parameters:
\n \n \n \n sgd.maxMLModelSizeInBytes
- The maximum allowed size of the model. Depending on the\n input data, the size of the model might affect its performance.
\n The value is an integer that ranges from 100000
to 2147483648
. The default value is 33554432
.
\n \n \n \n sgd.maxPasses
- The number of times that the training process traverses the\n observations to build the MLModel
. The value is an integer that\n ranges from 1
to 100
. The default value is\n 10
.
\n \n \n \n sgd.shuffleType
- Whether Amazon ML shuffles the training data. Shuffling the data\n improves a model's ability to find the optimal solution for a variety of data\n types. The valid values are auto
and none
. The default\n value is none
.
\n \n \n \n sgd.l1RegularizationAmount
- The coefficient regularization L1 norm, which controls\n overfitting the data by penalizing large coefficients. This parameter tends to\n drive coefficients to zero, resulting in sparse feature set. If you use this\n parameter, start by specifying a small value, such as 1.0E-08
.
\n The value is a double that ranges from 0
to MAX_DOUBLE
.\n The default is to not use L1 normalization. This parameter can't be used when\n L2
is specified. Use this parameter sparingly.
\n \n \n \n sgd.l2RegularizationAmount
- The coefficient regularization L2 norm, which controls\n overfitting the data by penalizing large coefficients. This tends to drive\n coefficients to small, nonzero values. If you use this parameter, start by\n specifying a small value, such as 1.0E-08
.
\n The value is a double that ranges from 0
to MAX_DOUBLE
.\n The default is to not use L2 normalization. This parameter can't be used when\n L1
is specified. Use this parameter sparingly.
\n \n "
- }
- },
- "ComputeTime": {
- "target": "com.amazonaws.machinelearning#LongType"
- },
- "FinishedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime"
- },
- "InputDataLocationS3": {
- "target": "com.amazonaws.machinelearning#S3Url",
- "traits": {
- "smithy.api#documentation": "The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).
"
- }
- },
- "StartedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime"
- },
- "Status": {
- "target": "com.amazonaws.machinelearning#EntityStatus",
+ "MLModelId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "The current status of an MLModel
. This element can have one of the following values:
\n \n \n \n PENDING
\t- Amazon Machine Learning (Amazon ML) submitted a request to create an MLModel
.
\n \n \n \n INPROGRESS
\t- The creation process is underway.
\n \n \n \n FAILED
- The request to create an MLModel
didn't run to\n completion. The model isn't usable.
\n \n \n \n COMPLETED
\t- The creation process completed successfully.
\n \n \n \n DELETED
- The MLModel
is marked as deleted. It isn't\n usable.
\n \n "
+ "smithy.api#documentation": "The ID assigned to the MLModel
at creation.
"
}
},
"TrainingDataSourceId": {
@@ -2930,46 +3005,55 @@
"smithy.api#documentation": "The ID of the training DataSource
. The CreateMLModel
operation uses the TrainingDataSourceId
.
"
}
},
+ "CreatedByIamUser": {
+ "target": "com.amazonaws.machinelearning#AwsUserArn",
+ "traits": {
+ "smithy.api#documentation": "The AWS user account from which the MLModel
was created. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.
"
+ }
+ },
"CreatedAt": {
"target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
"smithy.api#documentation": "The time that the MLModel
was created. The time is expressed in epoch time.
"
}
},
- "MLModelId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "LastUpdatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": "The ID assigned to the MLModel
at creation.
"
+ "smithy.api#documentation": "The time of the most recent edit to the MLModel
. The time is expressed in epoch time.
"
}
},
- "Message": {
- "target": "com.amazonaws.machinelearning#Message",
+ "Name": {
+ "target": "com.amazonaws.machinelearning#MLModelName",
"traits": {
- "smithy.api#documentation": "A description of the most recent details about accessing the MLModel
.
"
+ "smithy.api#documentation": "A user-supplied name or description of the MLModel
.
"
}
},
- "CreatedByIamUser": {
- "target": "com.amazonaws.machinelearning#AwsUserArn",
+ "Status": {
+ "target": "com.amazonaws.machinelearning#EntityStatus",
"traits": {
- "smithy.api#documentation": "The AWS user account from which the MLModel
was created. The account type can be either an AWS root account or an AWS Identity and Access Management (IAM) user account.
"
+ "smithy.api#documentation": "The current status of an MLModel
. This element can have one of the following values:
\n \n \n \n PENDING
\t- Amazon Machine Learning (Amazon ML) submitted a request to create an MLModel
.
\n \n \n \n INPROGRESS
\t- The creation process is underway.
\n \n \n \n FAILED
- The request to create an MLModel
didn't run to\n completion. The model isn't usable.
\n \n \n \n COMPLETED
\t- The creation process completed successfully.
\n \n \n \n DELETED
- The MLModel
is marked as deleted. It isn't\n usable.
\n \n "
}
},
- "Name": {
- "target": "com.amazonaws.machinelearning#MLModelName",
+ "SizeInBytes": {
+ "target": "com.amazonaws.machinelearning#LongType"
+ },
+ "EndpointInfo": {
+ "target": "com.amazonaws.machinelearning#RealtimeEndpointInfo",
"traits": {
- "smithy.api#documentation": "A user-supplied name or description of the MLModel
.
"
+ "smithy.api#documentation": "The current endpoint of the MLModel
.
"
}
},
- "ScoreThreshold": {
- "target": "com.amazonaws.machinelearning#ScoreThreshold",
+ "TrainingParameters": {
+ "target": "com.amazonaws.machinelearning#TrainingParameters",
"traits": {
- "smithy.api#documentation": "The score threshold for the MLModel
.
"
+ "smithy.api#documentation": "A list of the training parameters in the MLModel
. The list is implemented as\n a map of key-value pairs.
\n The following is the current set of training parameters:
\n \n \n \n sgd.maxMLModelSizeInBytes
- The maximum allowed size of the model. Depending on the\n input data, the size of the model might affect its performance.
\n The value is an integer that ranges from 100000
to 2147483648
. The default value is 33554432
.
\n \n \n \n sgd.maxPasses
- The number of times that the training process traverses the\n observations to build the MLModel
. The value is an integer that\n ranges from 1
to 10000
. The default value is\n 10
.
\n \n \n \n sgd.shuffleType
- Whether Amazon ML shuffles the training data. Shuffling the data\n improves a model's ability to find the optimal solution for a variety of data\n types. The valid values are auto
and none
. The default\n value is none
.
\n \n \n \n sgd.l1RegularizationAmount
- The coefficient regularization L1 norm, which controls\n overfitting the data by penalizing large coefficients. This parameter tends to\n drive coefficients to zero, resulting in sparse feature set. If you use this\n parameter, start by specifying a small value, such as 1.0E-08
.
\n The value is a double that ranges from 0
to MAX_DOUBLE
.\n The default is to not use L1 normalization. This parameter can't be used when\n L2
is specified. Use this parameter sparingly.
\n \n \n \n sgd.l2RegularizationAmount
- The coefficient regularization L2 norm, which controls\n overfitting the data by penalizing large coefficients. This tends to drive\n coefficients to small, nonzero values. If you use this parameter, start by\n specifying a small value, such as 1.0E-08
.
\n The value is a double that ranges from 0
to MAX_DOUBLE
.\n The default is to not use L2 normalization. This parameter can't be used when\n L1
is specified. Use this parameter sparingly.
\n \n "
}
},
- "LastUpdatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
+ "InputDataLocationS3": {
+ "target": "com.amazonaws.machinelearning#S3Url",
"traits": {
- "smithy.api#documentation": "The time of the most recent edit to the MLModel
. The time is expressed in epoch time.
"
+ "smithy.api#documentation": "The location of the data file or directory in Amazon Simple Storage Service (Amazon S3).
"
}
},
"Algorithm": {
@@ -2984,8 +3068,29 @@
"smithy.api#documentation": "Identifies the MLModel
category. The following are the available types:
\n \n \n \n REGRESSION
- Produces a numeric result. For example, \"What price should a\n house be listed at?\"
\n \n \n \n BINARY
- Produces one of two possible results. For example, \"Is this a\n child-friendly web site?\".
\n \n \n \n MULTICLASS
- Produces one of several possible results. For example, \"Is\n this a HIGH-, LOW-, or MEDIUM-risk trade?\".
\n \n "
}
},
- "SizeInBytes": {
+ "ScoreThreshold": {
+ "target": "com.amazonaws.machinelearning#ScoreThreshold"
+ },
+ "ScoreThresholdLastUpdatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
+ "traits": {
+ "smithy.api#documentation": "The time of the most recent edit to the ScoreThreshold
. The time is expressed in epoch time.
"
+ }
+ },
+ "Message": {
+ "target": "com.amazonaws.machinelearning#Message",
+ "traits": {
+ "smithy.api#documentation": "A description of the most recent details about accessing the MLModel
.
"
+ }
+ },
+ "ComputeTime": {
"target": "com.amazonaws.machinelearning#LongType"
+ },
+ "FinishedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime"
+ },
+ "StartedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime"
}
},
"traits": {
@@ -3097,10 +3202,7 @@
"type": "structure",
"members": {
"Properties": {
- "target": "com.amazonaws.machinelearning#PerformanceMetricsProperties",
- "traits": {
- "smithy.api#documentation": "Specific performance metric information.
"
- }
+ "target": "com.amazonaws.machinelearning#PerformanceMetricsProperties"
}
},
"traits": {
@@ -3154,23 +3256,22 @@
"com.amazonaws.machinelearning#PredictInput": {
"type": "structure",
"members": {
- "Record": {
- "target": "com.amazonaws.machinelearning#Record",
+ "MLModelId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
+ "smithy.api#documentation": "A unique identifier of the MLModel
.
",
"smithy.api#required": {}
}
},
- "PredictEndpoint": {
- "target": "com.amazonaws.machinelearning#VipURLUnvalidated",
+ "Record": {
+ "target": "com.amazonaws.machinelearning#Record",
"traits": {
- "smithy.api#documentation": "The predicted endpoint for the input.
",
"smithy.api#required": {}
}
},
- "MLModelId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "PredictEndpoint": {
+ "target": "com.amazonaws.machinelearning#VipURL",
"traits": {
- "smithy.api#documentation": "A unique identifier of the MLModel
.
",
"smithy.api#required": {}
}
}
@@ -3187,8 +3288,11 @@
"com.amazonaws.machinelearning#Prediction": {
"type": "structure",
"members": {
- "predictedScores": {
- "target": "com.amazonaws.machinelearning#ScoreValuePerLabelMap"
+ "predictedLabel": {
+ "target": "com.amazonaws.machinelearning#Label",
+ "traits": {
+ "smithy.api#documentation": "The prediction label for either a BINARY
or MULTICLASS
\n MLModel
.
"
+ }
},
"predictedValue": {
"target": "com.amazonaws.machinelearning#floatLabel",
@@ -3196,11 +3300,8 @@
"smithy.api#documentation": "The prediction value for REGRESSION
\n MLModel
.
"
}
},
- "predictedLabel": {
- "target": "com.amazonaws.machinelearning#Label",
- "traits": {
- "smithy.api#documentation": "The prediction label for either a BINARY
or MULTICLASS
\n MLModel
.
"
- }
+ "predictedScores": {
+ "target": "com.amazonaws.machinelearning#ScoreValuePerLabelMap"
},
"details": {
"target": "com.amazonaws.machinelearning#DetailsMap"
@@ -3229,30 +3330,24 @@
"com.amazonaws.machinelearning#RDSDataSpec": {
"type": "structure",
"members": {
- "ResourceRole": {
- "target": "com.amazonaws.machinelearning#EDPResourceRole",
+ "DatabaseInformation": {
+ "target": "com.amazonaws.machinelearning#RDSDatabase",
"traits": {
- "smithy.api#documentation": "The role (DataPipelineDefaultResourceRole) assumed by an Amazon Elastic Compute Cloud (Amazon EC2) instance to carry out the copy operation from Amazon RDS to an Amazon S3 task. For more information, see Role templates for data pipelines.
",
+ "smithy.api#documentation": "Describes the DatabaseName
and InstanceIdentifier
of an Amazon RDS database.
",
"smithy.api#required": {}
}
},
- "ServiceRole": {
- "target": "com.amazonaws.machinelearning#EDPServiceRole",
+ "SelectSqlQuery": {
+ "target": "com.amazonaws.machinelearning#RDSSelectSqlQuery",
"traits": {
- "smithy.api#documentation": "The role (DataPipelineDefaultRole) assumed by AWS Data Pipeline service to monitor the progress of the copy task from Amazon RDS to Amazon S3. For more information, see Role templates for data pipelines.
",
+ "smithy.api#documentation": "The query that is used to retrieve the observation data for the DataSource
.
",
"smithy.api#required": {}
}
},
- "DataSchema": {
- "target": "com.amazonaws.machinelearning#DataSchema",
- "traits": {
- "smithy.api#documentation": "A JSON string that represents the schema for an Amazon RDS\n DataSource
. The DataSchema
\n defines the structure of the observation data in the data file(s)\n referenced in the DataSource
.
\n A DataSchema
is not required if you specify a \n DataSchemaUri
\n
\n Define your DataSchema
as a series of key-value pairs. attributes
\n and excludedAttributeNames
have an array of key-value pairs\n for their value. Use the following format to define your DataSchema
.
\n { \"version\": \"1.0\",
\n \"recordAnnotationFieldName\": \"F1\",
\n \"recordWeightFieldName\": \"F2\",
\n \"targetAttributeName\": \"F3\",
\n \"dataFormat\": \"CSV\",
\n \"dataFileContainsHeader\": true,
\n \"attributes\": [
\n { \"attributeName\": \"F1\", \"attributeType\": \"TEXT\" }, { \"attributeName\": \"F2\", \"attributeType\": \"NUMERIC\" }, { \"attributeName\": \"F3\", \"attributeType\": \"CATEGORICAL\" }, { \"attributeName\": \"F4\", \"attributeType\": \"NUMERIC\" }, { \"attributeName\": \"F5\", \"attributeType\": \"CATEGORICAL\" }, { \"attributeName\": \"F6\", \"attributeType\": \"TEXT\" }, { \"attributeName\": \"F7\", \"attributeType\": \"WEIGHTED_INT_SEQUENCE\" }, { \"attributeName\": \"F8\", \"attributeType\": \"WEIGHTED_STRING_SEQUENCE\" } ],
\n \"excludedAttributeNames\": [ \"F6\" ] }
"
- }
- },
- "SecurityGroupIds": {
- "target": "com.amazonaws.machinelearning#EDPSecurityGroupIds",
+ "DatabaseCredentials": {
+ "target": "com.amazonaws.machinelearning#RDSDatabaseCredentials",
"traits": {
- "smithy.api#documentation": "The security group IDs to be used to access a VPC-based RDS DB instance. Ensure that there are appropriate ingress rules set up to allow access to the RDS DB instance. This attribute is used by Data Pipeline to carry out the copy operation from Amazon RDS to an Amazon S3 task.
",
+ "smithy.api#documentation": "The AWS Identity and Access Management (IAM) credentials that are used connect to the Amazon RDS database.
",
"smithy.api#required": {}
}
},
@@ -3263,24 +3358,16 @@
"smithy.api#required": {}
}
},
- "SelectSqlQuery": {
- "target": "com.amazonaws.machinelearning#RDSSelectSqlQuery",
- "traits": {
- "smithy.api#documentation": "The query that is used to retrieve the observation data for the DataSource
.
",
- "smithy.api#required": {}
- }
- },
- "DatabaseInformation": {
- "target": "com.amazonaws.machinelearning#RDSDatabase",
+ "DataRearrangement": {
+ "target": "com.amazonaws.machinelearning#DataRearrangement",
"traits": {
- "smithy.api#documentation": "Describes the DatabaseName
and InstanceIdentifier
of an Amazon RDS database.
",
- "smithy.api#required": {}
+ "smithy.api#documentation": "A JSON string that represents the splitting and rearrangement \n processing to be applied to a DataSource
. If the DataRearrangement
\n parameter is not provided, all of the input data is used to create the Datasource
.
\n\n There are multiple parameters that control what data is used to create a datasource:
\n \n \n \n \n percentBegin
\n \n
\n Use percentBegin
to indicate the beginning of the range of the data used to \n create the Datasource.\n If you do not include percentBegin
and percentEnd
, Amazon ML includes \n all of the data when creating the datasource.
\n \n \n \n \n percentEnd
\n \n
\n Use percentEnd
to indicate the end of the range of the data used to create the \n Datasource. If you do not\n include percentBegin
and percentEnd
, Amazon ML \n includes all of the data when creating the datasource.
\n \n \n \n \n complement
\n \n
\n The complement
parameter instructs Amazon ML to use the data that is\n not included in the range of percentBegin
to percentEnd
to create a\n datasource. The complement
parameter is useful if you need to create \n complementary datasources for training and evaluation.\n To create a complementary datasource, use the same\n values for percentBegin
and percentEnd
, along with the\n complement
parameter.
\n\n For example, the following two datasources do not share any data, and can be used to train and evaluate a model. The first datasource has 25 percent of the data, and the second one has 75 percent of the data.
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25, \"complement\":\"true\"}}
\n
\n \n \n \n \n strategy
\n \n
\n To change how Amazon ML splits the data for a datasource, use the strategy
parameter.
\n The default value for the strategy
parameter\n is sequential
, meaning that Amazon ML takes all of the data records between the percentBegin
\n and percentEnd
parameters for the datasource, in the order that the records appear in the input data.
\n\n The following two DataRearrangement
lines are examples of sequentially ordered\n training and evaluation datasources:
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\"}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\", \"complement\":\"true\"}}
\n
\n\n To randomly split the input data into the proportions indicated by the percentBegin and percentEnd \n parameters, set the strategy
parameter to\n random
and provide a string that is used as the seed value for the random data splitting (for \n example, you can use the S3 path to your data as the random seed string). \n If you choose the random split strategy,\n Amazon ML assigns each row of data a pseudo-random number between 0 and 100, and then selects the rows that have an assigned\n number between percentBegin
and percentEnd
. Pseudo-random numbers are assigned \n using both the input seed string value and the byte offset as a seed, so changing the data results in a \n different split. Any existing ordering is preserved.\n The random splitting strategy ensures that variables in the training and evaluation data are distributed similarly. \n It is useful in the cases where the input data may have an implicit sort order, which would otherwise result in \n training and evaluation datasources containing non-similar data records.
\n The following two DataRearrangement
lines are examples of non-sequentially ordered\n training and evaluation datasources:
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"randomSeed\"=\"s3://my_s3_path/bucket/file.csv\"}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"randomSeed\"=\"s3://my_s3_path/bucket/file.csv\", \"complement\":\"true\"}}
\n
\n \n "
}
},
- "DataRearrangement": {
- "target": "com.amazonaws.machinelearning#DataRearrangement",
+ "DataSchema": {
+ "target": "com.amazonaws.machinelearning#DataSchema",
"traits": {
- "smithy.api#documentation": "A JSON string that represents the splitting and rearrangement \n processing to be applied to a DataSource
. If the DataRearrangement
\n parameter is not provided, all of the input data is used to create the Datasource
.
\n\n There are multiple parameters that control what data is used to create a datasource:
\n \n \n \n \n percentBegin
\n \n
\n Use percentBegin
to indicate the beginning of the range of the data used to \n create the Datasource.\n If you do not include percentBegin
and percentEnd
, Amazon ML includes \n all of the data when creating the datasource.
\n \n \n \n \n percentEnd
\n \n
\n Use percentEnd
to indicate the end of the range of the data used to create the \n Datasource. If you do not\n include percentBegin
and percentEnd
, Amazon ML \n includes all of the data when creating the datasource.
\n \n \n \n \n complement
\n \n
\n The complement
parameter instructs Amazon ML to use the data that is\n not included in the range of percentBegin
to percentEnd
to create a\n datasource. The complement
parameter is useful if you need to create \n complementary datasources for training and evaluation.\n To create a complementary datasource, use the same\n values for percentBegin
and percentEnd
, along with the\n complement
parameter.
\n\n For example, the following two datasources do not share any data, and can be used to train and evaluate a model. The first datasource has 25 percent of the data, and the second one has 75 percent of the data.
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25, \"complement\":\"true\"}}
\n
\n \n \n \n \n strategy
\n \n
\n To change how Amazon ML splits the data for a datasource, use the strategy
parameter.
\n The default value for the strategy
parameter\n is sequential
, meaning that Amazon ML takes all of the data records between the percentBegin
\n and percentEnd
parameters for the datasource, in the order that the records appear in the input data.
\n\n The following two DataRearrangement
lines are examples of sequentially ordered\n training and evaluation datasources:
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\"}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\", \"complement\":\"true\"}}
\n
\n\n To randomly split the input data into the proportions indicated by the percentBegin and percentEnd \n parameters, set the strategy
parameter to\n random
and provide a string that is used as the seed value for the random data splitting (for \n example, you can use the S3 path to your data as the random seed string). \n If you choose the random split strategy,\n Amazon ML assigns each row of data a pseudo-random number between 0 and 100, and then selects the rows that have an assigned\n number between percentBegin
and percentEnd
. Pseudo-random numbers are assigned \n using both the input seed string value and the byte offset as a seed, so changing the data results in a \n different split. Any existing ordering is preserved.\n The random splitting strategy ensures that variables in the training and evaluation data are distributed similarly. \n It is useful in the cases where the input data may have an implicit sort order, which would otherwise result in \n training and evaluation datasources containing non-similar data records.
\n The following two DataRearrangement
lines are examples of non-sequentially ordered\n training and evaluation datasources:
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"strategyParams\": {\"randomSeed\":\"RANDOMSEED\"}}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"strategyParams\": {\"randomSeed\":\"RANDOMSEED\"}, \"complement\":\"true\"}}
\n
\n \n "
+ "smithy.api#documentation": "A JSON string that represents the schema for an Amazon RDS\n DataSource
. The DataSchema
\n defines the structure of the observation data in the data file(s)\n referenced in the DataSource
.
\n A DataSchema
is not required if you specify a \n DataSchemaUri
\n
\n Define your DataSchema
as a series of key-value pairs. attributes
\n and excludedVariableNames
have an array of key-value pairs\n for their value. Use the following format to define your DataSchema
.
\n { \"version\": \"1.0\",
\n \"recordAnnotationFieldName\": \"F1\",
\n \"recordWeightFieldName\": \"F2\",
\n \"targetFieldName\": \"F3\",
\n \"dataFormat\": \"CSV\",
\n \"dataFileContainsHeader\": true,
\n \"attributes\": [
\n { \"fieldName\": \"F1\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F2\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F3\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F4\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F5\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F6\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F7\", \"fieldType\": \"WEIGHTED_INT_SEQUENCE\" }, { \"fieldName\": \"F8\", \"fieldType\": \"WEIGHTED_STRING_SEQUENCE\" } ],
\n \"excludedVariableNames\": [ \"F6\" ] }
"
}
},
"DataSchemaUri": {
@@ -3289,10 +3376,17 @@
"smithy.api#documentation": "The Amazon S3 location of the DataSchema
.
"
}
},
- "DatabaseCredentials": {
- "target": "com.amazonaws.machinelearning#RDSDatabaseCredentials",
+ "ResourceRole": {
+ "target": "com.amazonaws.machinelearning#EDPResourceRole",
"traits": {
- "smithy.api#documentation": "The AWS Identity and Access Management (IAM) credentials that are used connect to the Amazon RDS database.
",
+ "smithy.api#documentation": "The role (DataPipelineDefaultResourceRole) assumed by an Amazon Elastic Compute Cloud (Amazon EC2) instance to carry out the copy operation from Amazon RDS to an Amazon S3 task. For more information, see Role templates for data pipelines.
",
+ "smithy.api#required": {}
+ }
+ },
+ "ServiceRole": {
+ "target": "com.amazonaws.machinelearning#EDPServiceRole",
+ "traits": {
+ "smithy.api#documentation": "The role (DataPipelineDefaultRole) assumed by AWS Data Pipeline service to monitor the progress of the copy task from Amazon RDS to Amazon S3. For more information, see Role templates for data pipelines.
",
"smithy.api#required": {}
}
},
@@ -3302,6 +3396,13 @@
"smithy.api#documentation": "The subnet ID to be used to access a VPC-based RDS DB instance. This attribute is used by Data Pipeline to carry out the copy task from Amazon RDS to Amazon S3.
",
"smithy.api#required": {}
}
+ },
+ "SecurityGroupIds": {
+ "target": "com.amazonaws.machinelearning#EDPSecurityGroupIds",
+ "traits": {
+ "smithy.api#documentation": "The security group IDs to be used to access a VPC-based RDS DB instance. Ensure that there are appropriate ingress rules set up to allow access to the RDS DB instance. This attribute is used by Data Pipeline to carry out the copy operation from Amazon RDS to an Amazon S3 task.
",
+ "smithy.api#required": {}
+ }
}
},
"traits": {
@@ -3332,14 +3433,14 @@
"com.amazonaws.machinelearning#RDSDatabaseCredentials": {
"type": "structure",
"members": {
- "Password": {
- "target": "com.amazonaws.machinelearning#RDSDatabasePassword",
+ "Username": {
+ "target": "com.amazonaws.machinelearning#RDSDatabaseUsername",
"traits": {
"smithy.api#required": {}
}
},
- "Username": {
- "target": "com.amazonaws.machinelearning#RDSDatabaseUsername",
+ "Password": {
+ "target": "com.amazonaws.machinelearning#RDSDatabasePassword",
"traits": {
"smithy.api#required": {}
}
@@ -3386,16 +3487,26 @@
"smithy.api#length": {
"min": 1,
"max": 63
- }
+ },
+ "smithy.api#pattern": "[a-z0-9-]+"
}
},
"com.amazonaws.machinelearning#RDSMetadata": {
"type": "structure",
"members": {
- "ServiceRole": {
- "target": "com.amazonaws.machinelearning#EDPServiceRole",
+ "Database": {
+ "target": "com.amazonaws.machinelearning#RDSDatabase",
"traits": {
- "smithy.api#documentation": "The role (DataPipelineDefaultRole) assumed by the Data Pipeline service to monitor the progress of the copy task from Amazon RDS to Amazon S3. For more information, see Role templates for data pipelines.
"
+ "smithy.api#documentation": "The database details required to connect to an Amazon RDS.
"
+ }
+ },
+ "DatabaseUserName": {
+ "target": "com.amazonaws.machinelearning#RDSDatabaseUsername"
+ },
+ "SelectSqlQuery": {
+ "target": "com.amazonaws.machinelearning#RDSSelectSqlQuery",
+ "traits": {
+ "smithy.api#documentation": "The SQL query that is supplied during CreateDataSourceFromRDS . Returns only if Verbose
is true in GetDataSourceInput
.
"
}
},
"ResourceRole": {
@@ -3404,10 +3515,10 @@
"smithy.api#documentation": "The role (DataPipelineDefaultResourceRole) assumed by an Amazon EC2 instance to carry out the copy task from Amazon RDS to Amazon S3. For more information, see Role templates for data pipelines.
"
}
},
- "Database": {
- "target": "com.amazonaws.machinelearning#RDSDatabase",
+ "ServiceRole": {
+ "target": "com.amazonaws.machinelearning#EDPServiceRole",
"traits": {
- "smithy.api#documentation": "The database details required to connect to an Amazon RDS.
"
+ "smithy.api#documentation": "The role (DataPipelineDefaultRole) assumed by the Data Pipeline service to monitor the progress of the copy task from Amazon RDS to Amazon S3. For more information, see Role templates for data pipelines.
"
}
},
"DataPipelineId": {
@@ -3415,15 +3526,6 @@
"traits": {
"smithy.api#documentation": "The ID of the Data Pipeline instance that is used to carry to copy data from Amazon RDS to Amazon S3. You can use the ID to find details about the instance in the Data Pipeline console.
"
}
- },
- "SelectSqlQuery": {
- "target": "com.amazonaws.machinelearning#RDSSelectSqlQuery",
- "traits": {
- "smithy.api#documentation": "The SQL query that is supplied during CreateDataSourceFromRDS . Returns only if Verbose
is true in GetDataSourceInput
.
"
- }
- },
- "DatabaseUserName": {
- "target": "com.amazonaws.machinelearning#RDSDatabaseUsername"
}
},
"traits": {
@@ -3443,22 +3545,16 @@
"com.amazonaws.machinelearning#RealtimeEndpointInfo": {
"type": "structure",
"members": {
- "CreatedAt": {
- "target": "com.amazonaws.machinelearning#EpochTime",
- "traits": {
- "smithy.api#documentation": "The time that the request to create the real-time endpoint for the MLModel
was received. The time is expressed in epoch time.
"
- }
- },
"PeakRequestsPerSecond": {
"target": "com.amazonaws.machinelearning#IntegerType",
"traits": {
"smithy.api#documentation": " The maximum processing rate for the real-time endpoint for MLModel
, measured in incoming requests per second.
"
}
},
- "EndpointStatus": {
- "target": "com.amazonaws.machinelearning#RealtimeEndpointStatus",
+ "CreatedAt": {
+ "target": "com.amazonaws.machinelearning#EpochTime",
"traits": {
- "smithy.api#documentation": " The current status of the real-time endpoint for the MLModel
. This element can have one of the following values:
\n \n \n \n NONE
- Endpoint does not exist or was previously deleted.
\n \n \n \n READY
- Endpoint is ready to be used for real-time predictions.
\n \n \n \n UPDATING
- Updating/creating the endpoint.
\n \n "
+ "smithy.api#documentation": "The time that the request to create the real-time endpoint for the MLModel
was received. The time is expressed in epoch time.
"
}
},
"EndpointUrl": {
@@ -3466,6 +3562,12 @@
"traits": {
"smithy.api#documentation": "The URI that specifies where to send real-time prediction requests for the MLModel
.
\n \n Note: The application must wait until the real-time endpoint is ready before using this URI.
"
}
+ },
+ "EndpointStatus": {
+ "target": "com.amazonaws.machinelearning#RealtimeEndpointStatus",
+ "traits": {
+ "smithy.api#documentation": " The current status of the real-time endpoint for the MLModel
. This element can have one of the following values:
\n \n \n \n NONE
- Endpoint does not exist or was previously deleted.
\n \n \n \n READY
- Endpoint is ready to be used for real-time predictions.
\n \n \n \n UPDATING
- Updating/creating the endpoint.
\n \n "
+ }
}
},
"traits": {
@@ -3523,28 +3625,25 @@
"smithy.api#length": {
"min": 1,
"max": 63
- }
+ },
+ "smithy.api#pattern": "[a-z0-9-]+"
}
},
"com.amazonaws.machinelearning#RedshiftDataSpec": {
"type": "structure",
"members": {
- "DataRearrangement": {
- "target": "com.amazonaws.machinelearning#DataRearrangement",
- "traits": {
- "smithy.api#documentation": "A JSON string that represents the splitting and rearrangement \n processing to be applied to a DataSource
. If the DataRearrangement
\n parameter is not provided, all of the input data is used to create the Datasource
.
\n\n There are multiple parameters that control what data is used to create a datasource:
\n \n \n \n \n percentBegin
\n \n
\n Use percentBegin
to indicate the beginning of the range of the data used to \n create the Datasource.\n If you do not include percentBegin
and percentEnd
, Amazon ML includes \n all of the data when creating the datasource.
\n \n \n \n \n percentEnd
\n \n
\n Use percentEnd
to indicate the end of the range of the data used to create the \n Datasource. If you do not\n include percentBegin
and percentEnd
, Amazon ML \n includes all of the data when creating the datasource.
\n \n \n \n \n complement
\n \n
\n The complement
parameter instructs Amazon ML to use the data that is\n not included in the range of percentBegin
to percentEnd
to create a\n datasource. The complement
parameter is useful if you need to create \n complementary datasources for training and evaluation.\n To create a complementary datasource, use the same\n values for percentBegin
and percentEnd
, along with the\n complement
parameter.
\n\n For example, the following two datasources do not share any data, and can be used to train and evaluate a model. The first datasource has 25 percent of the data, and the second one has 75 percent of the data.
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25, \"complement\":\"true\"}}
\n
\n \n \n \n \n strategy
\n \n
\n To change how Amazon ML splits the data for a datasource, use the strategy
parameter.
\n The default value for the strategy
parameter\n is sequential
, meaning that Amazon ML takes all of the data records between the percentBegin
\n and percentEnd
parameters for the datasource, in the order that the records appear in the input data.
\n\n The following two DataRearrangement
lines are examples of sequentially ordered\n training and evaluation datasources:
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\"}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\", \"complement\":\"true\"}}
\n
\n\n To randomly split the input data into the proportions indicated by the percentBegin and percentEnd \n parameters, set the strategy
parameter to\n random
and provide a string that is used as the seed value for the random data splitting (for \n example, you can use the S3 path to your data as the random seed string). \n If you choose the random split strategy,\n Amazon ML assigns each row of data a pseudo-random number between 0 and 100, and then selects the rows that have an assigned\n number between percentBegin
and percentEnd
. Pseudo-random numbers are assigned \n using both the input seed string value and the byte offset as a seed, so changing the data results in a \n different split. Any existing ordering is preserved.\n The random splitting strategy ensures that variables in the training and evaluation data are distributed similarly. \n It is useful in the cases where the input data may have an implicit sort order, which would otherwise result in \n training and evaluation datasources containing non-similar data records.
\n The following two DataRearrangement
lines are examples of non-sequentially ordered\n training and evaluation datasources:
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"strategyParams\": {\"randomSeed\":\"RANDOMSEED\"}}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"strategyParams\": {\"randomSeed\":\"RANDOMSEED\"}, \"complement\":\"true\"}}
\n
\n \n "
- }
- },
- "DataSchemaUri": {
- "target": "com.amazonaws.machinelearning#S3Url",
+ "DatabaseInformation": {
+ "target": "com.amazonaws.machinelearning#RedshiftDatabase",
"traits": {
- "smithy.api#documentation": "Describes the schema location for an Amazon Redshift DataSource
.
"
+ "smithy.api#documentation": "Describes the DatabaseName
and ClusterIdentifier
for an Amazon Redshift DataSource
.
",
+ "smithy.api#required": {}
}
},
- "DataSchema": {
- "target": "com.amazonaws.machinelearning#DataSchema",
+ "SelectSqlQuery": {
+ "target": "com.amazonaws.machinelearning#RedshiftSelectSqlQuery",
"traits": {
- "smithy.api#documentation": "A JSON string that represents the schema for an Amazon Redshift \n DataSource
. The DataSchema
\n defines the structure of the observation data in the data file(s)\n referenced in the DataSource
.
\n A DataSchema
is not required if you specify a \n DataSchemaUri
.
\n Define your DataSchema
as a series of key-value pairs. attributes
\n and excludedAttributeNames
have an array of key-value pairs\n for their value. Use the following format to define your DataSchema
.
\n { \"version\": \"1.0\",
\n \"recordAnnotationFieldName\": \"F1\",
\n \"recordWeightFieldName\": \"F2\",
\n \"targetAttributeName\": \"F3\",
\n \"dataFormat\": \"CSV\",
\n \"dataFileContainsHeader\": true,
\n \"attributes\": [
\n { \"attributeName\": \"F1\", \"attributeType\": \"TEXT\" }, { \"attributeName\": \"F2\", \"attributeType\": \"NUMERIC\" }, { \"attributeName\": \"F3\", \"attributeType\": \"CATEGORICAL\" }, { \"attributeName\": \"F4\", \"attributeType\": \"NUMERIC\" }, { \"attributeName\": \"F5\", \"attributeType\": \"CATEGORICAL\" }, { \"attributeName\": \"F6\", \"attributeType\": \"TEXT\" }, { \"attributeName\": \"F7\", \"attributeType\": \"WEIGHTED_INT_SEQUENCE\" }, { \"attributeName\": \"F8\", \"attributeType\": \"WEIGHTED_STRING_SEQUENCE\" } ],
\n \"excludedAttributeNames\": [ \"F6\" ] }
"
+ "smithy.api#documentation": "Describes the SQL Query to execute on an Amazon Redshift database for an Amazon Redshift DataSource
.
",
+ "smithy.api#required": {}
}
},
"DatabaseCredentials": {
@@ -3554,13 +3653,6 @@
"smithy.api#required": {}
}
},
- "SelectSqlQuery": {
- "target": "com.amazonaws.machinelearning#RedshiftSelectSqlQuery",
- "traits": {
- "smithy.api#documentation": "Describes the SQL Query to execute on an Amazon Redshift database for an Amazon Redshift DataSource
.
",
- "smithy.api#required": {}
- }
- },
"S3StagingLocation": {
"target": "com.amazonaws.machinelearning#S3Url",
"traits": {
@@ -3568,11 +3660,22 @@
"smithy.api#required": {}
}
},
- "DatabaseInformation": {
- "target": "com.amazonaws.machinelearning#RedshiftDatabase",
+ "DataRearrangement": {
+ "target": "com.amazonaws.machinelearning#DataRearrangement",
"traits": {
- "smithy.api#documentation": "Describes the DatabaseName
and ClusterIdentifier
for an Amazon Redshift DataSource
.
",
- "smithy.api#required": {}
+ "smithy.api#documentation": "A JSON string that represents the splitting and rearrangement \n processing to be applied to a DataSource
. If the DataRearrangement
\n parameter is not provided, all of the input data is used to create the Datasource
.
\n\n There are multiple parameters that control what data is used to create a datasource:
\n \n \n \n \n percentBegin
\n \n
\n Use percentBegin
to indicate the beginning of the range of the data used to \n create the Datasource.\n If you do not include percentBegin
and percentEnd
, Amazon ML includes \n all of the data when creating the datasource.
\n \n \n \n \n percentEnd
\n \n
\n Use percentEnd
to indicate the end of the range of the data used to create the \n Datasource. If you do not\n include percentBegin
and percentEnd
, Amazon ML \n includes all of the data when creating the datasource.
\n \n \n \n \n complement
\n \n
\n The complement
parameter instructs Amazon ML to use the data that is\n not included in the range of percentBegin
to percentEnd
to create a\n datasource. The complement
parameter is useful if you need to create \n complementary datasources for training and evaluation.\n To create a complementary datasource, use the same\n values for percentBegin
and percentEnd
, along with the\n complement
parameter.
\n\n For example, the following two datasources do not share any data, and can be used to train and evaluate a model. The first datasource has 25 percent of the data, and the second one has 75 percent of the data.
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25, \"complement\":\"true\"}}
\n
\n \n \n \n \n strategy
\n \n
\n To change how Amazon ML splits the data for a datasource, use the strategy
parameter.
\n The default value for the strategy
parameter\n is sequential
, meaning that Amazon ML takes all of the data records between the percentBegin
\n and percentEnd
parameters for the datasource, in the order that the records appear in the input data.
\n\n The following two DataRearrangement
lines are examples of sequentially ordered\n training and evaluation datasources:
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\"}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\", \"complement\":\"true\"}}
\n
\n\n To randomly split the input data into the proportions indicated by the percentBegin and percentEnd \n parameters, set the strategy
parameter to\n random
and provide a string that is used as the seed value for the random data splitting (for \n example, you can use the S3 path to your data as the random seed string). \n If you choose the random split strategy,\n Amazon ML assigns each row of data a pseudo-random number between 0 and 100, and then selects the rows that have an assigned\n number between percentBegin
and percentEnd
. Pseudo-random numbers are assigned \n using both the input seed string value and the byte offset as a seed, so changing the data results in a \n different split. Any existing ordering is preserved.\n The random splitting strategy ensures that variables in the training and evaluation data are distributed similarly. \n It is useful in the cases where the input data may have an implicit sort order, which would otherwise result in \n training and evaluation datasources containing non-similar data records.
\n The following two DataRearrangement
lines are examples of non-sequentially ordered\n training and evaluation datasources:
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"randomSeed\"=\"s3://my_s3_path/bucket/file.csv\"}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"randomSeed\"=\"s3://my_s3_path/bucket/file.csv\", \"complement\":\"true\"}}
\n
\n \n "
+ }
+ },
+ "DataSchema": {
+ "target": "com.amazonaws.machinelearning#DataSchema",
+ "traits": {
+ "smithy.api#documentation": "A JSON string that represents the schema for an Amazon Redshift \n DataSource
. The DataSchema
\n defines the structure of the observation data in the data file(s)\n referenced in the DataSource
.
\n A DataSchema
is not required if you specify a \n DataSchemaUri
.
\n Define your DataSchema
as a series of key-value pairs. attributes
\n and excludedVariableNames
have an array of key-value pairs\n for their value. Use the following format to define your DataSchema
.
\n { \"version\": \"1.0\",
\n \"recordAnnotationFieldName\": \"F1\",
\n \"recordWeightFieldName\": \"F2\",
\n \"targetFieldName\": \"F3\",
\n \"dataFormat\": \"CSV\",
\n \"dataFileContainsHeader\": true,
\n \"attributes\": [
\n { \"fieldName\": \"F1\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F2\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F3\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F4\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F5\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F6\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F7\", \"fieldType\": \"WEIGHTED_INT_SEQUENCE\" }, { \"fieldName\": \"F8\", \"fieldType\": \"WEIGHTED_STRING_SEQUENCE\" } ],
\n \"excludedVariableNames\": [ \"F6\" ] }
"
+ }
+ },
+ "DataSchemaUri": {
+ "target": "com.amazonaws.machinelearning#S3Url",
+ "traits": {
+ "smithy.api#documentation": "Describes the schema location for an Amazon Redshift DataSource
.
"
}
}
},
@@ -3583,14 +3686,14 @@
"com.amazonaws.machinelearning#RedshiftDatabase": {
"type": "structure",
"members": {
- "ClusterIdentifier": {
- "target": "com.amazonaws.machinelearning#RedshiftClusterIdentifier",
+ "DatabaseName": {
+ "target": "com.amazonaws.machinelearning#RedshiftDatabaseName",
"traits": {
"smithy.api#required": {}
}
},
- "DatabaseName": {
- "target": "com.amazonaws.machinelearning#RedshiftDatabaseName",
+ "ClusterIdentifier": {
+ "target": "com.amazonaws.machinelearning#RedshiftClusterIdentifier",
"traits": {
"smithy.api#required": {}
}
@@ -3603,14 +3706,14 @@
"com.amazonaws.machinelearning#RedshiftDatabaseCredentials": {
"type": "structure",
"members": {
- "Password": {
- "target": "com.amazonaws.machinelearning#RedshiftDatabasePassword",
+ "Username": {
+ "target": "com.amazonaws.machinelearning#RedshiftDatabaseUsername",
"traits": {
"smithy.api#required": {}
}
},
- "Username": {
- "target": "com.amazonaws.machinelearning#RedshiftDatabaseUsername",
+ "Password": {
+ "target": "com.amazonaws.machinelearning#RedshiftDatabasePassword",
"traits": {
"smithy.api#required": {}
}
@@ -3626,8 +3729,9 @@
"smithy.api#documentation": "The name of a database hosted on an Amazon Redshift cluster.
",
"smithy.api#length": {
"min": 1,
- "max": 127
- }
+ "max": 64
+ },
+ "smithy.api#pattern": "[a-z0-9]+"
}
},
"com.amazonaws.machinelearning#RedshiftDatabasePassword": {
@@ -3653,12 +3757,12 @@
"com.amazonaws.machinelearning#RedshiftMetadata": {
"type": "structure",
"members": {
- "DatabaseUserName": {
- "target": "com.amazonaws.machinelearning#RedshiftDatabaseUsername"
- },
"RedshiftDatabase": {
"target": "com.amazonaws.machinelearning#RedshiftDatabase"
},
+ "DatabaseUserName": {
+ "target": "com.amazonaws.machinelearning#RedshiftDatabaseUsername"
+ },
"SelectSqlQuery": {
"target": "com.amazonaws.machinelearning#RedshiftSelectSqlQuery",
"traits": {
@@ -3683,11 +3787,11 @@
"com.amazonaws.machinelearning#ResourceNotFoundException": {
"type": "structure",
"members": {
- "code": {
- "target": "com.amazonaws.machinelearning#ErrorCode"
- },
"message": {
"target": "com.amazonaws.machinelearning#ErrorMessage"
+ },
+ "code": {
+ "target": "com.amazonaws.machinelearning#ErrorCode"
}
},
"traits": {
@@ -3709,18 +3813,6 @@
"com.amazonaws.machinelearning#S3DataSpec": {
"type": "structure",
"members": {
- "DataRearrangement": {
- "target": "com.amazonaws.machinelearning#DataRearrangement",
- "traits": {
- "smithy.api#documentation": "A JSON string that represents the splitting and rearrangement \n processing to be applied to a DataSource
. If the DataRearrangement
\n parameter is not provided, all of the input data is used to create the Datasource
.
\n\n There are multiple parameters that control what data is used to create a datasource:
\n \n \n \n \n percentBegin
\n \n
\n Use percentBegin
to indicate the beginning of the range of the data used to \n create the Datasource.\n If you do not include percentBegin
and percentEnd
, Amazon ML includes \n all of the data when creating the datasource.
\n \n \n \n \n percentEnd
\n \n
\n Use percentEnd
to indicate the end of the range of the data used to create the \n Datasource. If you do not\n include percentBegin
and percentEnd
, Amazon ML \n includes all of the data when creating the datasource.
\n \n \n \n \n complement
\n \n
\n The complement
parameter instructs Amazon ML to use the data that is\n not included in the range of percentBegin
to percentEnd
to create a\n datasource. The complement
parameter is useful if you need to create \n complementary datasources for training and evaluation.\n To create a complementary datasource, use the same\n values for percentBegin
and percentEnd
, along with the\n complement
parameter.
\n\n For example, the following two datasources do not share any data, and can be used to train and evaluate a model. The first datasource has 25 percent of the data, and the second one has 75 percent of the data.
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25, \"complement\":\"true\"}}
\n
\n \n \n \n \n strategy
\n \n
\n To change how Amazon ML splits the data for a datasource, use the strategy
parameter.
\n The default value for the strategy
parameter\n is sequential
, meaning that Amazon ML takes all of the data records between the percentBegin
\n and percentEnd
parameters for the datasource, in the order that the records appear in the input data.
\n\n The following two DataRearrangement
lines are examples of sequentially ordered\n training and evaluation datasources:
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\"}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\", \"complement\":\"true\"}}
\n
\n\n To randomly split the input data into the proportions indicated by the percentBegin and percentEnd \n parameters, set the strategy
parameter to\n random
and provide a string that is used as the seed value for the random data splitting (for \n example, you can use the S3 path to your data as the random seed string). \n If you choose the random split strategy,\n Amazon ML assigns each row of data a pseudo-random number between 0 and 100, and then selects the rows that have an assigned\n number between percentBegin
and percentEnd
. Pseudo-random numbers are assigned \n using both the input seed string value and the byte offset as a seed, so changing the data results in a \n different split. Any existing ordering is preserved.\n The random splitting strategy ensures that variables in the training and evaluation data are distributed similarly. \n It is useful in the cases where the input data may have an implicit sort order, which would otherwise result in \n training and evaluation datasources containing non-similar data records.
\n The following two DataRearrangement
lines are examples of non-sequentially ordered\n training and evaluation datasources:
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"strategyParams\": { \"randomSeed\":\"RANDOMSEED\"}}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"strategyParams\": {\"randomSeed\":\"RANDOMSEED\"}, \"complement\":\"true\"}}
\n
\n \n "
- }
- },
- "DataSchemaLocationS3": {
- "target": "com.amazonaws.machinelearning#S3Url",
- "traits": {
- "smithy.api#documentation": "Describes the schema location in Amazon S3. You must provide either the \n DataSchema
or the DataSchemaLocationS3
.
"
- }
- },
"DataLocationS3": {
"target": "com.amazonaws.machinelearning#S3Url",
"traits": {
@@ -3728,10 +3820,22 @@
"smithy.api#required": {}
}
},
+ "DataRearrangement": {
+ "target": "com.amazonaws.machinelearning#DataRearrangement",
+ "traits": {
+ "smithy.api#documentation": "A JSON string that represents the splitting and rearrangement \n processing to be applied to a DataSource
. If the DataRearrangement
\n parameter is not provided, all of the input data is used to create the Datasource
.
\n\n There are multiple parameters that control what data is used to create a datasource:
\n \n \n \n \n percentBegin
\n \n
\n Use percentBegin
to indicate the beginning of the range of the data used to \n create the Datasource.\n If you do not include percentBegin
and percentEnd
, Amazon ML includes \n all of the data when creating the datasource.
\n \n \n \n \n percentEnd
\n \n
\n Use percentEnd
to indicate the end of the range of the data used to create the \n Datasource. If you do not\n include percentBegin
and percentEnd
, Amazon ML \n includes all of the data when creating the datasource.
\n \n \n \n \n complement
\n \n
\n The complement
parameter instructs Amazon ML to use the data that is\n not included in the range of percentBegin
to percentEnd
to create a\n datasource. The complement
parameter is useful if you need to create \n complementary datasources for training and evaluation.\n To create a complementary datasource, use the same\n values for percentBegin
and percentEnd
, along with the\n complement
parameter.
\n\n For example, the following two datasources do not share any data, and can be used to train and evaluate a model. The first datasource has 25 percent of the data, and the second one has 75 percent of the data.
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":0, \"percentEnd\":25, \"complement\":\"true\"}}
\n
\n \n \n \n \n strategy
\n \n
\n To change how Amazon ML splits the data for a datasource, use the strategy
parameter.
\n The default value for the strategy
parameter\n is sequential
, meaning that Amazon ML takes all of the data records between the percentBegin
\n and percentEnd
parameters for the datasource, in the order that the records appear in the input data.
\n\n The following two DataRearrangement
lines are examples of sequentially ordered\n training and evaluation datasources:
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\"}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"sequential\", \"complement\":\"true\"}}
\n
\n\n To randomly split the input data into the proportions indicated by the percentBegin and percentEnd \n parameters, set the strategy
parameter to\n random
and provide a string that is used as the seed value for the random data splitting (for \n example, you can use the S3 path to your data as the random seed string). \n If you choose the random split strategy,\n Amazon ML assigns each row of data a pseudo-random number between 0 and 100, and then selects the rows that have an assigned\n number between percentBegin
and percentEnd
. Pseudo-random numbers are assigned \n using both the input seed string value and the byte offset as a seed, so changing the data results in a \n different split. Any existing ordering is preserved.\n The random splitting strategy ensures that variables in the training and evaluation data are distributed similarly. \n It is useful in the cases where the input data may have an implicit sort order, which would otherwise result in \n training and evaluation datasources containing non-similar data records.
\n The following two DataRearrangement
lines are examples of non-sequentially ordered\n training and evaluation datasources:
\n Datasource for evaluation: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"randomSeed\"=\"s3://my_s3_path/bucket/file.csv\"}}
\n
\n Datasource for training: {\"splitting\":{\"percentBegin\":70, \"percentEnd\":100, \"strategy\":\"random\", \"randomSeed\"=\"s3://my_s3_path/bucket/file.csv\", \"complement\":\"true\"}}
\n
\n \n "
+ }
+ },
"DataSchema": {
"target": "com.amazonaws.machinelearning#DataSchema",
"traits": {
- "smithy.api#documentation": " A JSON string that represents the schema for an Amazon S3 \n DataSource
. The DataSchema
\n defines the structure of the observation data in the data file(s) \n referenced in the DataSource
.
\n You must provide either the DataSchema
or the DataSchemaLocationS3
.
\n Define your DataSchema
as a series of key-value pairs. attributes
\n and excludedAttributeNames
have an array of key-value pairs\n for their value. Use the following format to define your DataSchema
.
\n { \"version\": \"1.0\",
\n \"recordAnnotationFieldName\": \"F1\",
\n \"recordWeightFieldName\": \"F2\",
\n \"targetAttributeName\": \"F3\",
\n \"dataFormat\": \"CSV\",
\n \"dataFileContainsHeader\": true,
\n \"attributes\": [
\n { \"attributeName\": \"F1\", \"attributeType\": \"TEXT\" }, { \"attributeName\": \"F2\", \"attributeType\": \"NUMERIC\" }, { \"attributeName\": \"F3\", \"attributeType\": \"CATEGORICAL\" }, { \"attributeName\": \"F4\", \"attributeType\": \"NUMERIC\" }, { \"attributeName\": \"F5\", \"attributeType\": \"CATEGORICAL\" }, { \"attributeName\": \"F6\", \"attributeType\": \"TEXT\" }, { \"attributeName\": \"F7\", \"attributeType\": \"WEIGHTED_INT_SEQUENCE\" }, { \"attributeName\": \"F8\", \"attributeType\": \"WEIGHTED_STRING_SEQUENCE\" } ],
\n \"excludedAttributeNames\": [ \"F6\" ] }
"
+ "smithy.api#documentation": " A JSON string that represents the schema for an Amazon S3 \n DataSource
. The DataSchema
\n defines the structure of the observation data in the data file(s) \n referenced in the DataSource
.
\n You must provide either the DataSchema
or the DataSchemaLocationS3
.
\n Define your DataSchema
as a series of key-value pairs. attributes
\n and excludedVariableNames
have an array of key-value pairs\n for their value. Use the following format to define your DataSchema
.
\n { \"version\": \"1.0\",
\n \"recordAnnotationFieldName\": \"F1\",
\n \"recordWeightFieldName\": \"F2\",
\n \"targetFieldName\": \"F3\",
\n \"dataFormat\": \"CSV\",
\n \"dataFileContainsHeader\": true,
\n \"attributes\": [
\n { \"fieldName\": \"F1\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F2\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F3\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F4\", \"fieldType\": \"NUMERIC\" }, { \"fieldName\": \"F5\", \"fieldType\": \"CATEGORICAL\" }, { \"fieldName\": \"F6\", \"fieldType\": \"TEXT\" }, { \"fieldName\": \"F7\", \"fieldType\": \"WEIGHTED_INT_SEQUENCE\" }, { \"fieldName\": \"F8\", \"fieldType\": \"WEIGHTED_STRING_SEQUENCE\" } ],
\n \"excludedVariableNames\": [ \"F6\" ] }
"
+ }
+ },
+ "DataSchemaLocationS3": {
+ "target": "com.amazonaws.machinelearning#S3Url",
+ "traits": {
+ "smithy.api#documentation": "Describes the schema location in Amazon S3. You must provide either the \n DataSchema
or the DataSchemaLocationS3
.
"
}
}
},
@@ -3796,17 +3900,17 @@
"com.amazonaws.machinelearning#Tag": {
"type": "structure",
"members": {
- "Value": {
- "target": "com.amazonaws.machinelearning#TagValue",
- "traits": {
- "smithy.api#documentation": "An optional string, typically used to describe or define the tag. Valid characters include Unicode letters, digits, white space, _, ., /, =, +, -, %, and @.
"
- }
- },
"Key": {
"target": "com.amazonaws.machinelearning#TagKey",
"traits": {
"smithy.api#documentation": "A unique identifier for the tag. Valid characters include Unicode letters, digits, white space, _, ., /, =, +, -, %, and @.
"
}
+ },
+ "Value": {
+ "target": "com.amazonaws.machinelearning#TagValue",
+ "traits": {
+ "smithy.api#documentation": "An optional string, typically used to describe or define the tag. Valid characters include Unicode letters, digits, white space, _, ., /, =, +, -, %, and @.
"
+ }
}
},
"traits": {
@@ -3843,7 +3947,6 @@
}
},
"traits": {
- "smithy.api#documentation": "The limit in the number of tags has been exceeded.
",
"smithy.api#error": "client"
}
},
@@ -3983,17 +4086,17 @@
"com.amazonaws.machinelearning#UpdateDataSourceInput": {
"type": "structure",
"members": {
- "DataSourceName": {
- "target": "com.amazonaws.machinelearning#EntityName",
+ "DataSourceId": {
+ "target": "com.amazonaws.machinelearning#EntityId",
"traits": {
- "smithy.api#documentation": "A new user-supplied name or description of the DataSource
that will replace the current description.
",
+ "smithy.api#documentation": "The ID assigned to the DataSource
during creation.
",
"smithy.api#required": {}
}
},
- "DataSourceId": {
- "target": "com.amazonaws.machinelearning#EntityId",
+ "DataSourceName": {
+ "target": "com.amazonaws.machinelearning#EntityName",
"traits": {
- "smithy.api#documentation": "The ID assigned to the DataSource
during creation.
",
+ "smithy.api#documentation": "A new user-supplied name or description of the DataSource
that will replace the current description.
",
"smithy.api#required": {}
}
}
@@ -4158,9 +4261,6 @@
"smithy.api#pattern": "https://[a-zA-Z0-9-.]*\\.amazon(aws)?\\.com[/]?"
}
},
- "com.amazonaws.machinelearning#VipURLUnvalidated": {
- "type": "string"
- },
"com.amazonaws.machinelearning#floatLabel": {
"type": "float",
"traits": {
diff --git a/codegen/sdk-codegen/aws-models/macie2.2020-01-01.json b/codegen/sdk-codegen/aws-models/macie2.2020-01-01.json
index 366a59ed183..eb97891f2d6 100644
--- a/codegen/sdk-codegen/aws-models/macie2.2020-01-01.json
+++ b/codegen/sdk-codegen/aws-models/macie2.2020-01-01.json
@@ -973,7 +973,7 @@
"columnName": {
"target": "com.amazonaws.macie2#__string",
"traits": {
- "smithy.api#documentation": "The name of the column that contains the data, if available.
",
+ "smithy.api#documentation": "The name of the column that contains the data, if available. This value is also null if Amazon Macie detects sensitive data in the name of any column in the file.
",
"smithy.api#jsonName": "columnName"
}
},
@@ -2986,7 +2986,7 @@
"status": {
"target": "com.amazonaws.macie2#MacieStatus",
"traits": {
- "smithy.api#documentation": "Specifies the status for the account. To enable Amazon Macie and start all Macie activities for the account, set this value to ENABLED.
",
+ "smithy.api#documentation": "Specifies the new status for the account. To enable Amazon Macie and start all Macie activities for the account, set this value to ENABLED.
",
"smithy.api#jsonName": "status"
}
}
@@ -3375,7 +3375,7 @@
"com.amazonaws.macie2#FindingPublishingFrequency": {
"type": "string",
"traits": {
- "smithy.api#documentation": "The frequency with which Amazon Macie publishes updates to policy findings for an account. This includes publishing updates to AWS Security Hub and Amazon EventBridge (formerly called Amazon CloudWatch Events). Valid values are:
",
+ "smithy.api#documentation": "The frequency with which Amazon Macie publishes updates to policy findings for an account. This includes publishing updates to AWS Security Hub and Amazon EventBridge (formerly called Amazon CloudWatch Events). For more information, see Monitoring and processing findings in the Amazon Macie User Guide . Valid values are:
",
"smithy.api#enum": [
{
"value": "FIFTEEN_MINUTES",
@@ -4165,6 +4165,62 @@
}
}
},
+ "com.amazonaws.macie2#GetFindingsPublicationConfiguration": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.macie2#GetFindingsPublicationConfigurationRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.macie2#GetFindingsPublicationConfigurationResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.macie2#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.macie2#ConflictException"
+ },
+ {
+ "target": "com.amazonaws.macie2#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.macie2#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.macie2#ServiceQuotaExceededException"
+ },
+ {
+ "target": "com.amazonaws.macie2#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.macie2#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Retrieves the configuration settings for publishing findings to AWS Security Hub.
",
+ "smithy.api#http": {
+ "method": "GET",
+ "uri": "/findings-publication-configuration",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.macie2#GetFindingsPublicationConfigurationRequest": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.macie2#GetFindingsPublicationConfigurationResponse": {
+ "type": "structure",
+ "members": {
+ "securityHubConfiguration": {
+ "target": "com.amazonaws.macie2#SecurityHubConfiguration",
+ "traits": {
+ "smithy.api#documentation": "The configuration settings that determine which findings are published to AWS Security Hub.
",
+ "smithy.api#jsonName": "securityHubConfiguration"
+ }
+ }
+ }
+ },
"com.amazonaws.macie2#GetFindingsRequest": {
"type": "structure",
"members": {
@@ -6200,6 +6256,9 @@
{
"target": "com.amazonaws.macie2#GetFindingsFilter"
},
+ {
+ "target": "com.amazonaws.macie2#GetFindingsPublicationConfiguration"
+ },
{
"target": "com.amazonaws.macie2#GetFindingStatistics"
},
@@ -6248,6 +6307,9 @@
{
"target": "com.amazonaws.macie2#PutClassificationExportConfiguration"
},
+ {
+ "target": "com.amazonaws.macie2#PutFindingsPublicationConfiguration"
+ },
{
"target": "com.amazonaws.macie2#TagResource"
},
@@ -6478,7 +6540,7 @@
"lineRanges": {
"target": "com.amazonaws.macie2#Ranges",
"traits": {
- "smithy.api#documentation": "An array of objects, one for each occurrence of sensitive data in a Microsoft Word document or non-binary text file, such as an HTML, JSON, TXT, or XML file. Each object specifies the line that contains the data, and the position of the data on that line.
This value is often null for file types that are supported by Cell, Page, or Record objects. Exceptions are the locations of: data in unstructured sections of an otherwise structured file, such as a comment in a file; and, data in a malformed file that Amazon Macie analyzes as plain text.
",
+ "smithy.api#documentation": "An array of objects, one for each occurrence of sensitive data in a Microsoft Word document or non-binary text file, such as an HTML, JSON, TXT, or XML file. Each object specifies the line that contains the data, and the position of the data on that line.
This value is often null for file types that are supported by Cell, Page, or Record objects. Exceptions are the locations of data in: unstructured sections of an otherwise structured file, such as a comment in a file; a malformed file that Amazon Macie analyzes as plain text; and, a CSV or TSV file that has any column names that contain sensitive data.
",
"smithy.api#jsonName": "lineRanges"
}
},
@@ -6648,6 +6710,70 @@
}
}
},
+ "com.amazonaws.macie2#PutFindingsPublicationConfiguration": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.macie2#PutFindingsPublicationConfigurationRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.macie2#PutFindingsPublicationConfigurationResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.macie2#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.macie2#ConflictException"
+ },
+ {
+ "target": "com.amazonaws.macie2#InternalServerException"
+ },
+ {
+ "target": "com.amazonaws.macie2#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.macie2#ServiceQuotaExceededException"
+ },
+ {
+ "target": "com.amazonaws.macie2#ThrottlingException"
+ },
+ {
+ "target": "com.amazonaws.macie2#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Updates the configuration settings for publishing findings to AWS Security Hub.
",
+ "smithy.api#http": {
+ "method": "PUT",
+ "uri": "/findings-publication-configuration",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.macie2#PutFindingsPublicationConfigurationRequest": {
+ "type": "structure",
+ "members": {
+ "clientToken": {
+ "target": "com.amazonaws.macie2#__string",
+ "traits": {
+ "smithy.api#documentation": "A unique, case-sensitive token that you provide to ensure the idempotency of the request.
",
+ "smithy.api#idempotencyToken": {},
+ "smithy.api#jsonName": "clientToken"
+ }
+ },
+ "securityHubConfiguration": {
+ "target": "com.amazonaws.macie2#SecurityHubConfiguration",
+ "traits": {
+ "smithy.api#documentation": "The configuration settings that determine which findings to publish to AWS Security Hub.
",
+ "smithy.api#jsonName": "securityHubConfiguration"
+ }
+ }
+ }
+ },
+ "com.amazonaws.macie2#PutFindingsPublicationConfigurationResponse": {
+ "type": "structure",
+ "members": {}
+ },
"com.amazonaws.macie2#Range": {
"type": "structure",
"members": {
@@ -6692,7 +6818,7 @@
"jsonPath": {
"target": "com.amazonaws.macie2#__string",
"traits": {
- "smithy.api#documentation": "The path, as a JSONPath expression, to the field in the record that contains the data.
If the name of an element exceeds 20 characters, Amazon Macie truncates the name by removing characters from the beginning of the name. If the resulting full path exceeds 250 characters, Macie also truncates the path, starting with the first element in the path, until the path contains 250 or fewer characters.
",
+ "smithy.api#documentation": "The path, as a JSONPath expression, to the field in the record that contains the data. If Amazon Macie detects sensitive data in the name of any element in the path, Macie omits this field.
If the name of an element exceeds 20 characters, Macie truncates the name by removing characters from the beginning of the name. If the resulting full path exceeds 250 characters, Macie also truncates the path, starting with the first element in the path, until the path contains 250 or fewer characters.
",
"smithy.api#jsonName": "jsonPath"
}
},
@@ -7135,6 +7261,30 @@
"smithy.api#documentation": "Specifies one or more property- and tag-based conditions that refine the scope of a classification job. These conditions define criteria that determine which objects a job analyzes. Exclude conditions take precedence over include conditions.
"
}
},
+ "com.amazonaws.macie2#SecurityHubConfiguration": {
+ "type": "structure",
+ "members": {
+ "publishClassificationFindings": {
+ "target": "com.amazonaws.macie2#__boolean",
+ "traits": {
+ "smithy.api#documentation": "Specifies whether to publish sensitive data findings to AWS Security Hub. If you set this value to true, Amazon Macie automatically publishes all sensitive data findings that weren't suppressed by a findings filter. The default value is false.
",
+ "smithy.api#jsonName": "publishClassificationFindings",
+ "smithy.api#required": {}
+ }
+ },
+ "publishPolicyFindings": {
+ "target": "com.amazonaws.macie2#__boolean",
+ "traits": {
+ "smithy.api#documentation": "Specifies whether to publish policy findings to AWS Security Hub. If you set this value to true, Amazon Macie automatically publishes all new and updated policy findings that weren't suppressed by a findings filter. The default value is true.
",
+ "smithy.api#jsonName": "publishPolicyFindings",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Specifies configuration settings that determine which findings are published to AWS Security Hub automatically. For information about how Macie publishes findings to Security Hub, see Amazon Macie integration with Security Hub in the Amazon Macie User Guide .
"
+ }
+ },
"com.amazonaws.macie2#SensitiveData": {
"type": "list",
"member": {
@@ -7932,7 +8082,7 @@
"jobStatus": {
"target": "com.amazonaws.macie2#JobStatus",
"traits": {
- "smithy.api#documentation": "The new status for the job. Valid values are:
CANCELLED - Stops the job permanently and cancels it. This value is valid only if the job's current status is IDLE, PAUSED, RUNNING, or USER_PAUSED.
If you specify this value and the job's current status is RUNNING, Amazon Macie immediately begins to stop all processing tasks for the job. You can't resume or restart a job after you cancel it.
RUNNING - Resumes the job. This value is valid only if the job's current status is USER_PAUSED.
If you paused the job while it was actively running and you specify this value less than 30 days after you paused the job, Macie immediately resumes processing from the point where you paused the job. Otherwise, Macie resumes the job according to the schedule and other settings for the job.
USER_PAUSED - Pauses the job temporarily. This value is valid only if the job's current status is IDLE or RUNNING. If you specify this value and the job's current status is RUNNING, Macie immediately begins to pause all processing tasks for the job.
If you pause a one-time job and you don't resume it within 30 days, the job expires and Macie cancels the job. If you pause a recurring job when its status is RUNNING and you don't resume it within 30 days, the job run expires and Macie cancels the run. To check the expiration date, refer to the UserPausedDetails.jobExpiresAt property.
",
+ "smithy.api#documentation": "The new status for the job. Valid values are:
CANCELLED - Stops the job permanently and cancels it. This value is valid only if the job's current status is IDLE, PAUSED, RUNNING, or USER_PAUSED.
If you specify this value and the job's current status is RUNNING, Amazon Macie immediately begins to stop all processing tasks for the job. You can't resume or restart a job after you cancel it.
RUNNING - Resumes the job. This value is valid only if the job's current status is USER_PAUSED.
If you paused the job while it was actively running and you specify this value less than 30 days after you paused the job, Macie immediately resumes processing from the point where you paused the job. Otherwise, Macie resumes the job according to the schedule and other settings for the job.
USER_PAUSED - Pauses the job temporarily. This value is valid only if the job's current status is IDLE, PAUSED, or RUNNING. If you specify this value and the job's current status is RUNNING, Macie immediately begins to pause all processing tasks for the job.
If you pause a one-time job and you don't resume it within 30 days, the job expires and Macie cancels the job. If you pause a recurring job when its status is RUNNING and you don't resume it within 30 days, the job run expires and Macie cancels the run. To check the expiration date, refer to the UserPausedDetails.jobExpiresAt property.
",
"smithy.api#jsonName": "jobStatus",
"smithy.api#required": {}
}
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 a749fe7f29e..80cb61c5cd9 100644
--- a/codegen/sdk-codegen/aws-models/medialive.2017-10-14.json
+++ b/codegen/sdk-codegen/aws-models/medialive.2017-10-14.json
@@ -19596,6 +19596,13 @@
"smithy.api#jsonName": "colorSpace"
}
},
+ "ColorSpaceSettings": {
+ "target": "com.amazonaws.medialive#VideoSelectorColorSpaceSettings",
+ "traits": {
+ "smithy.api#documentation": "Color space settings",
+ "smithy.api#jsonName": "colorSpaceSettings"
+ }
+ },
"ColorSpaceUsage": {
"target": "com.amazonaws.medialive#VideoSelectorColorSpaceUsage",
"traits": {
@@ -19624,6 +19631,14 @@
"value": "FOLLOW",
"name": "FOLLOW"
},
+ {
+ "value": "HDR10",
+ "name": "HDR10"
+ },
+ {
+ "value": "HLG_2020",
+ "name": "HLG_2020"
+ },
{
"value": "REC_601",
"name": "REC_601"
@@ -19635,6 +19650,20 @@
]
}
},
+ "com.amazonaws.medialive#VideoSelectorColorSpaceSettings": {
+ "type": "structure",
+ "members": {
+ "Hdr10Settings": {
+ "target": "com.amazonaws.medialive#Hdr10Settings",
+ "traits": {
+ "smithy.api#jsonName": "hdr10Settings"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Video Selector Color Space Settings"
+ }
+ },
"com.amazonaws.medialive#VideoSelectorColorSpaceUsage": {
"type": "string",
"traits": {
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 3da9616c386..e03cc6c575c 100644
--- a/codegen/sdk-codegen/aws-models/pinpoint.2016-12-01.json
+++ b/codegen/sdk-codegen/aws-models/pinpoint.2016-12-01.json
@@ -10569,6 +10569,12 @@
"traits": {
"smithy.api#documentation": "The maximum number of messages that the journey can send each second.
"
}
+ },
+ "EndpointReentryInterval": {
+ "target": "com.amazonaws.pinpoint#__string",
+ "traits": {
+ "smithy.api#documentation": "Minimum time that must pass before an endpoint can re-enter a given journey. The duration should use an ISO 8601 format, such as PT1H.
"
+ }
}
},
"traits": {
@@ -10685,6 +10691,18 @@
"smithy.api#documentation": "This object is not used or supported.
",
"smithy.api#jsonName": "tags"
}
+ },
+ "WaitForQuietTime": {
+ "target": "com.amazonaws.pinpoint#__boolean",
+ "traits": {
+ "smithy.api#documentation": "Specifies whether endpoints in quiet hours should enter a wait till the end of their quiet hours.
"
+ }
+ },
+ "RefreshOnSegmentUpdate": {
+ "target": "com.amazonaws.pinpoint#__boolean",
+ "traits": {
+ "smithy.api#documentation": "Specifies whether a journey should be refreshed on segment update.
"
+ }
}
},
"traits": {
@@ -10761,7 +10779,7 @@
"State": {
"target": "com.amazonaws.pinpoint#State",
"traits": {
- "smithy.api#documentation": "The status of the journey. Currently, the only supported value is CANCELLED.
If you cancel a journey, Amazon Pinpoint continues to perform activities that are currently in progress, until those activities are complete. Amazon Pinpoint also continues to collect and aggregate analytics data for those activities, until they are complete, and any activities that were complete when you cancelled the journey.
After you cancel a journey, you can't add, change, or remove any activities from the journey. In addition, Amazon Pinpoint stops evaluating the journey and doesn't perform any activities that haven't started.
"
+ "smithy.api#documentation": "The status of the journey. Currently, Supported values are ACTIVE, PAUSED, and CANCELLED
If you cancel a journey, Amazon Pinpoint continues to perform activities that are currently in progress, until those activities are complete. Amazon Pinpoint also continues to collect and aggregate analytics data for those activities, until they are complete, and any activities that were complete when you cancelled the journey.
After you cancel a journey, you can't add, change, or remove any activities from the journey. In addition, Amazon Pinpoint stops evaluating the journey and doesn't perform any activities that haven't started.
When the journey is paused, Amazon Pinpoint continues to perform activities that are currently in progress, until those activities are complete. Endpoints will stop entering journeys when the journey is paused and will resume entering the journey after the journey is resumed. For wait activities, wait time is paused when the journey is paused. Currently, PAUSED only supports journeys with a segment refresh interval.
"
}
}
},
@@ -14286,6 +14304,10 @@
{
"value": "CLOSED",
"name": "CLOSED"
+ },
+ {
+ "value": "PAUSED",
+ "name": "PAUSED"
}
]
}
@@ -17112,7 +17134,19 @@
"State": {
"target": "com.amazonaws.pinpoint#State",
"traits": {
- "smithy.api#documentation": "The status of the journey. Valid values are:
DRAFT - Saves the journey and doesn't publish it.
ACTIVE - Saves and publishes the journey. Depending on the journey's schedule, the journey starts running immediately or at the scheduled start time. If a journey's status is ACTIVE, you can't add, change, or remove activities from it.
The CANCELLED, COMPLETED, and CLOSED values are not supported in requests to create or update a journey. To cancel a journey, use the Journey State resource.
"
+ "smithy.api#documentation": "The status of the journey. Valid values are:
DRAFT - Saves the journey and doesn't publish it.
ACTIVE - Saves and publishes the journey. Depending on the journey's schedule, the journey starts running immediately or at the scheduled start time. If a journey's status is ACTIVE, you can't add, change, or remove activities from it.
PAUSED, CANCELLED, COMPLETED, and CLOSED states are not supported in requests to create or update a journey. To cancel, pause, or resume a journey, use the Journey State resource.
"
+ }
+ },
+ "WaitForQuietTime": {
+ "target": "com.amazonaws.pinpoint#__boolean",
+ "traits": {
+ "smithy.api#documentation": "Specifies whether endpoints in quiet hours should enter a wait till the end of their quiet hours.
"
+ }
+ },
+ "RefreshOnSegmentUpdate": {
+ "target": "com.amazonaws.pinpoint#__boolean",
+ "traits": {
+ "smithy.api#documentation": "Specifies whether a journey should be refreshed on segment update.
"
}
}
},
diff --git a/codegen/sdk-codegen/aws-models/pricing.2017-10-15.json b/codegen/sdk-codegen/aws-models/pricing.2017-10-15.json
index dd505b11949..39b981b5804 100644
--- a/codegen/sdk-codegen/aws-models/pricing.2017-10-15.json
+++ b/codegen/sdk-codegen/aws-models/pricing.2017-10-15.json
@@ -48,7 +48,8 @@
"sdkId": "Pricing",
"arnNamespace": "pricing",
"cloudFormationName": "Pricing",
- "cloudTrailEventSource": "pricing.amazonaws.com"
+ "cloudTrailEventSource": "pricing.amazonaws.com",
+ "endpointPrefix": "api.pricing"
},
"aws.auth#sigv4": {
"name": "pricing"
@@ -130,16 +131,22 @@
"com.amazonaws.pricing#DescribeServicesRequest": {
"type": "structure",
"members": {
+ "ServiceCode": {
+ "target": "com.amazonaws.pricing#String",
+ "traits": {
+ "smithy.api#documentation": "The code for the service whose information you want to retrieve, such as AmazonEC2
.\n You can use \n the ServiceCode
to filter the results in a GetProducts
call.\n To retrieve a list of all services, leave this blank.
"
+ }
+ },
"FormatVersion": {
"target": "com.amazonaws.pricing#String",
"traits": {
"smithy.api#documentation": "The format version that you want the response to be in.
\n Valid values are: aws_v1
\n
"
}
},
- "ServiceCode": {
+ "NextToken": {
"target": "com.amazonaws.pricing#String",
"traits": {
- "smithy.api#documentation": "The code for the service whose information you want to retrieve, such as AmazonEC2
.\n You can use \n the ServiceCode
to filter the results in a GetProducts
call.\n To retrieve a list of all services, leave this blank.
"
+ "smithy.api#documentation": "The pagination token that indicates the next set of results that you want to retrieve.
"
}
},
"MaxResults": {
@@ -148,22 +155,16 @@
"smithy.api#box": {},
"smithy.api#documentation": "The maximum number of results that you want returned in the response.
"
}
- },
- "NextToken": {
- "target": "com.amazonaws.pricing#String",
- "traits": {
- "smithy.api#documentation": "The pagination token that indicates the next set of results that you want to retrieve.
"
- }
}
}
},
"com.amazonaws.pricing#DescribeServicesResponse": {
"type": "structure",
"members": {
- "NextToken": {
- "target": "com.amazonaws.pricing#String",
+ "Services": {
+ "target": "com.amazonaws.pricing#ServiceList",
"traits": {
- "smithy.api#documentation": "The pagination token for the next set of retreivable results.
"
+ "smithy.api#documentation": "The service metadata for the service or services in the response.
"
}
},
"FormatVersion": {
@@ -172,10 +173,10 @@
"smithy.api#documentation": "The format version of the response. For example, aws_v1
.
"
}
},
- "Services": {
- "target": "com.amazonaws.pricing#ServiceList",
+ "NextToken": {
+ "target": "com.amazonaws.pricing#String",
"traits": {
- "smithy.api#documentation": "The service metadata for the service or services in the response.
"
+ "smithy.api#documentation": "The pagination token for the next set of retreivable results.
"
}
}
}
@@ -196,10 +197,10 @@
"com.amazonaws.pricing#Filter": {
"type": "structure",
"members": {
- "Value": {
- "target": "com.amazonaws.pricing#String",
+ "Type": {
+ "target": "com.amazonaws.pricing#FilterType",
"traits": {
- "smithy.api#documentation": "The service code or attribute value that you want to filter by. If you are filtering by \n service code this is the actual service code, such as AmazonEC2
. If you are \n filtering by attribute name, this is the attribute value that you want the returned products\n to match, such as a Provisioned IOPS
volume.
",
+ "smithy.api#documentation": "The type of filter that you want to use.
\n Valid values are: TERM_MATCH
. TERM_MATCH
returns only \n products that match both the given filter field and the given value.
",
"smithy.api#required": {}
}
},
@@ -210,10 +211,10 @@
"smithy.api#required": {}
}
},
- "Type": {
- "target": "com.amazonaws.pricing#FilterType",
+ "Value": {
+ "target": "com.amazonaws.pricing#String",
"traits": {
- "smithy.api#documentation": "The type of filter that you want to use.
\n Valid values are: TERM_MATCH
. TERM_MATCH
returns only \n products that match both the given filter field and the given value.
",
+ "smithy.api#documentation": "The service code or attribute value that you want to filter by. If you are filtering by \n service code this is the actual service code, such as AmazonEC2
. If you are \n filtering by attribute name, this is the attribute value that you want the returned products\n to match, such as a Provisioned IOPS
volume.
",
"smithy.api#required": {}
}
}
@@ -276,6 +277,13 @@
"com.amazonaws.pricing#GetAttributeValuesRequest": {
"type": "structure",
"members": {
+ "ServiceCode": {
+ "target": "com.amazonaws.pricing#String",
+ "traits": {
+ "smithy.api#documentation": "The service code for the service whose attributes you want to retrieve. For example, if you want \n the retrieve an EC2 attribute, use AmazonEC2
.
",
+ "smithy.api#required": {}
+ }
+ },
"AttributeName": {
"target": "com.amazonaws.pricing#String",
"traits": {
@@ -283,11 +291,10 @@
"smithy.api#required": {}
}
},
- "ServiceCode": {
+ "NextToken": {
"target": "com.amazonaws.pricing#String",
"traits": {
- "smithy.api#documentation": "The service code for the service whose attributes you want to retrieve. For example, if you want \n the retrieve an EC2 attribute, use AmazonEC2
.
",
- "smithy.api#required": {}
+ "smithy.api#documentation": "The pagination token that indicates the next set of results that you want to retrieve.
"
}
},
"MaxResults": {
@@ -296,29 +303,23 @@
"smithy.api#box": {},
"smithy.api#documentation": "The maximum number of results to return in response.
"
}
- },
- "NextToken": {
- "target": "com.amazonaws.pricing#String",
- "traits": {
- "smithy.api#documentation": "The pagination token that indicates the next set of results that you want to retrieve.
"
- }
}
}
},
"com.amazonaws.pricing#GetAttributeValuesResponse": {
"type": "structure",
"members": {
- "NextToken": {
- "target": "com.amazonaws.pricing#String",
- "traits": {
- "smithy.api#documentation": "The pagination token that indicates the next set of results to retrieve.
"
- }
- },
"AttributeValues": {
"target": "com.amazonaws.pricing#AttributeValueList",
"traits": {
"smithy.api#documentation": "The list of values for an attribute. For example, Throughput Optimized HDD
and \n Provisioned IOPS
are two available values for the AmazonEC2
\n volumeType
.
"
}
+ },
+ "NextToken": {
+ "target": "com.amazonaws.pricing#String",
+ "traits": {
+ "smithy.api#documentation": "The pagination token that indicates the next set of results to retrieve.
"
+ }
}
}
},
@@ -359,16 +360,10 @@
"com.amazonaws.pricing#GetProductsRequest": {
"type": "structure",
"members": {
- "NextToken": {
- "target": "com.amazonaws.pricing#String",
- "traits": {
- "smithy.api#documentation": "The pagination token that indicates the next set of results that you want to retrieve.
"
- }
- },
- "FormatVersion": {
+ "ServiceCode": {
"target": "com.amazonaws.pricing#String",
"traits": {
- "smithy.api#documentation": "The format version that you want the response to be in.
\n Valid values are: aws_v1
\n
"
+ "smithy.api#documentation": "The code for the service whose products you want to retrieve.
"
}
},
"Filters": {
@@ -377,10 +372,16 @@
"smithy.api#documentation": "The list of filters that limit the returned products. only products that match all filters\n are returned.
"
}
},
- "ServiceCode": {
+ "FormatVersion": {
"target": "com.amazonaws.pricing#String",
"traits": {
- "smithy.api#documentation": "The code for the service whose products you want to retrieve.
"
+ "smithy.api#documentation": "The format version that you want the response to be in.
\n Valid values are: aws_v1
\n
"
+ }
+ },
+ "NextToken": {
+ "target": "com.amazonaws.pricing#String",
+ "traits": {
+ "smithy.api#documentation": "The pagination token that indicates the next set of results that you want to retrieve.
"
}
},
"MaxResults": {
@@ -395,18 +396,18 @@
"com.amazonaws.pricing#GetProductsResponse": {
"type": "structure",
"members": {
- "PriceList": {
- "target": "com.amazonaws.pricing#PriceList",
- "traits": {
- "smithy.api#documentation": "The list of products that match your filters. The list contains both the product metadata and \n the price information.
"
- }
- },
"FormatVersion": {
"target": "com.amazonaws.pricing#String",
"traits": {
"smithy.api#documentation": "The format version of the response. For example, aws_v1.
"
}
},
+ "PriceList": {
+ "target": "com.amazonaws.pricing#PriceList",
+ "traits": {
+ "smithy.api#documentation": "The list of products that match your filters. The list contains both the product metadata and \n the price information.
"
+ }
+ },
"NextToken": {
"target": "com.amazonaws.pricing#String",
"traits": {
diff --git a/codegen/sdk-codegen/aws-models/redshift.2012-12-01.json b/codegen/sdk-codegen/aws-models/redshift.2012-12-01.json
index 1e2871c9d9e..06898cdb45c 100644
--- a/codegen/sdk-codegen/aws-models/redshift.2012-12-01.json
+++ b/codegen/sdk-codegen/aws-models/redshift.2012-12-01.json
@@ -94,6 +94,19 @@
}
}
},
+ "com.amazonaws.redshift#AccessToClusterDeniedFault": {
+ "type": "structure",
+ "members": {
+ "message": {
+ "target": "com.amazonaws.redshift#ExceptionMessage"
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "You are not authorized to access the cluster.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 400
+ }
+ },
"com.amazonaws.redshift#AccessToSnapshotDeniedFault": {
"type": "structure",
"members": {
@@ -275,6 +288,21 @@
"smithy.api#httpError": 400
}
},
+ "com.amazonaws.redshift#AuthorizationStatus": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "Authorized",
+ "name": "AUTHORIZED"
+ },
+ {
+ "value": "Revoking",
+ "name": "REVOKING"
+ }
+ ]
+ }
+ },
"com.amazonaws.redshift#AuthorizeClusterSecurityGroupIngress": {
"type": "operation",
"input": {
@@ -342,6 +370,62 @@
}
}
},
+ "com.amazonaws.redshift#AuthorizeEndpointAccess": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.redshift#AuthorizeEndpointAccessMessage"
+ },
+ "output": {
+ "target": "com.amazonaws.redshift#EndpointAuthorization"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.redshift#ClusterNotFoundFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#EndpointAuthorizationAlreadyExistsFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#EndpointAuthorizationsPerClusterLimitExceededFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#InvalidAuthorizationStateFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#InvalidClusterStateFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#UnsupportedOperationFault"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Grants access to a cluster.
"
+ }
+ },
+ "com.amazonaws.redshift#AuthorizeEndpointAccessMessage": {
+ "type": "structure",
+ "members": {
+ "ClusterIdentifier": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The cluster identifier of the cluster to grant access to.
"
+ }
+ },
+ "Account": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The AWS account ID to grant access to.
",
+ "smithy.api#required": {}
+ }
+ },
+ "VpcIds": {
+ "target": "com.amazonaws.redshift#VpcIdentifierList",
+ "traits": {
+ "smithy.api#documentation": "The virtual private cloud (VPC) identifiers to grant access to.
"
+ }
+ }
+ }
+ },
"com.amazonaws.redshift#AuthorizeSnapshotAccess": {
"type": "operation",
"input": {
@@ -2450,6 +2534,87 @@
}
}
},
+ "com.amazonaws.redshift#CreateEndpointAccess": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.redshift#CreateEndpointAccessMessage"
+ },
+ "output": {
+ "target": "com.amazonaws.redshift#EndpointAccess"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.redshift#AccessToClusterDeniedFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#ClusterNotFoundFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#ClusterSubnetGroupNotFoundFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#EndpointAlreadyExistsFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#EndpointsPerAuthorizationLimitExceededFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#EndpointsPerClusterLimitExceededFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#InvalidClusterSecurityGroupStateFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#InvalidClusterStateFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#UnauthorizedOperation"
+ },
+ {
+ "target": "com.amazonaws.redshift#UnsupportedOperationFault"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Creates a Redshift-managed VPC endpoint.
"
+ }
+ },
+ "com.amazonaws.redshift#CreateEndpointAccessMessage": {
+ "type": "structure",
+ "members": {
+ "ClusterIdentifier": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The cluster identifier of the cluster to access.
"
+ }
+ },
+ "ResourceOwner": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The AWS account ID of the owner of the cluster. This is only required if the cluster is in another AWS account.
"
+ }
+ },
+ "EndpointName": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The Redshift-managed VPC endpoint name.
\n An endpoint name must contain 1-30 characters.\n Valid characters are A-Z, a-z, 0-9, and hyphen(-).\n The first character must be a letter.\n The name can't contain two consecutive hyphens or end with a hyphen.
",
+ "smithy.api#required": {}
+ }
+ },
+ "SubnetGroupName": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The subnet group from which Amazon Redshift chooses the subnet to deploy the endpoint.
",
+ "smithy.api#required": {}
+ }
+ },
+ "VpcSecurityGroupIds": {
+ "target": "com.amazonaws.redshift#VpcSecurityGroupIdList",
+ "traits": {
+ "smithy.api#documentation": "The security group that defines the ports, protocols, and sources for inbound traffic that you are authorizing into your endpoint.
"
+ }
+ }
+ }
+ },
"com.amazonaws.redshift#CreateEventSubscription": {
"type": "operation",
"input": {
@@ -3426,6 +3591,47 @@
"smithy.api#documentation": "
"
}
},
+ "com.amazonaws.redshift#DeleteEndpointAccess": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.redshift#DeleteEndpointAccessMessage"
+ },
+ "output": {
+ "target": "com.amazonaws.redshift#EndpointAccess"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.redshift#ClusterNotFoundFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#EndpointNotFoundFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#InvalidClusterSecurityGroupStateFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#InvalidClusterStateFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#InvalidEndpointStateFault"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Deletes a Redshift-managed VPC endpoint.
"
+ }
+ },
+ "com.amazonaws.redshift#DeleteEndpointAccessMessage": {
+ "type": "structure",
+ "members": {
+ "EndpointName": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The Redshift-managed VPC endpoint to delete.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
"com.amazonaws.redshift#DeleteEventSubscription": {
"type": "operation",
"input": {
@@ -4415,6 +4621,125 @@
}
}
},
+ "com.amazonaws.redshift#DescribeEndpointAccess": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.redshift#DescribeEndpointAccessMessage"
+ },
+ "output": {
+ "target": "com.amazonaws.redshift#EndpointAccessList"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.redshift#ClusterNotFoundFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#EndpointNotFoundFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#InvalidClusterStateFault"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Describes a Redshift-managed VPC endpoint.
"
+ }
+ },
+ "com.amazonaws.redshift#DescribeEndpointAccessMessage": {
+ "type": "structure",
+ "members": {
+ "ClusterIdentifier": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The cluster identifier associated with the described endpoint.
"
+ }
+ },
+ "ResourceOwner": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The AWS account ID of the owner of the cluster.
"
+ }
+ },
+ "EndpointName": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The name of the endpoint to be described.
"
+ }
+ },
+ "VpcId": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The virtual private cloud (VPC) identifier with access to the cluster.
"
+ }
+ },
+ "MaxRecords": {
+ "target": "com.amazonaws.redshift#IntegerOptional",
+ "traits": {
+ "smithy.api#documentation": "Reserved for Amazon Redshift internal use.
"
+ }
+ },
+ "Marker": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "Reserved for Amazon Redshift internal use.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.redshift#DescribeEndpointAuthorization": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.redshift#DescribeEndpointAuthorizationMessage"
+ },
+ "output": {
+ "target": "com.amazonaws.redshift#EndpointAuthorizationList"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.redshift#ClusterNotFoundFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#UnsupportedOperationFault"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Describes an endpoint authorization.
"
+ }
+ },
+ "com.amazonaws.redshift#DescribeEndpointAuthorizationMessage": {
+ "type": "structure",
+ "members": {
+ "ClusterIdentifier": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The cluster identifier of the cluster to access.
"
+ }
+ },
+ "Account": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The AWS account ID of either the cluster owner (grantor) or grantee. \n If Grantee
parameter is true, then the Account
value is of the grantor.
"
+ }
+ },
+ "Grantee": {
+ "target": "com.amazonaws.redshift#BooleanOptional",
+ "traits": {
+ "smithy.api#documentation": "Indicates whether to check authorization from a grantor or grantee point of view. \n If true, Amazon Redshift returns endpoint authorizations that you've been granted.\n If false (default), checks authorization from a grantor point of view.
"
+ }
+ },
+ "MaxRecords": {
+ "target": "com.amazonaws.redshift#IntegerOptional",
+ "traits": {
+ "smithy.api#documentation": "Reserved for Amazon Redshift internal use.
"
+ }
+ },
+ "Marker": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "Reserved for Amazon Redshift internal use.
"
+ }
+ }
+ }
+ },
"com.amazonaws.redshift#DescribeEventCategories": {
"type": "operation",
"input": {
@@ -5697,83 +6022,347 @@
{
"target": "com.amazonaws.redshift#UnknownSnapshotCopyRegionFault"
}
- ],
+ ],
+ "traits": {
+ "smithy.api#documentation": "Enables the automatic copy of snapshots from one region to another region for a\n specified cluster.
"
+ }
+ },
+ "com.amazonaws.redshift#EnableSnapshotCopyMessage": {
+ "type": "structure",
+ "members": {
+ "ClusterIdentifier": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The unique identifier of the source cluster to copy snapshots from.
\n Constraints: Must be the valid name of an existing cluster that does not already\n have cross-region snapshot copy enabled.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DestinationRegion": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The destination AWS Region that you want to copy snapshots to.
\n Constraints: Must be the name of a valid AWS Region. For more information, see\n Regions and Endpoints in the Amazon Web Services General Reference.\n
",
+ "smithy.api#required": {}
+ }
+ },
+ "RetentionPeriod": {
+ "target": "com.amazonaws.redshift#IntegerOptional",
+ "traits": {
+ "smithy.api#documentation": "The number of days to retain automated snapshots in the destination region after\n they are copied from the source region.
\n Default: 7.
\n Constraints: Must be at least 1 and no more than 35.
"
+ }
+ },
+ "SnapshotCopyGrantName": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The name of the snapshot copy grant to use when snapshots of an AWS KMS-encrypted\n cluster are copied to the destination region.
"
+ }
+ },
+ "ManualSnapshotRetentionPeriod": {
+ "target": "com.amazonaws.redshift#IntegerOptional",
+ "traits": {
+ "smithy.api#documentation": "The number of days to retain newly copied snapshots in the destination AWS Region\n after they are copied from the source AWS Region. If the value is -1, the manual\n snapshot is retained indefinitely.
\n The value must be either -1 or an integer between 1 and 3,653.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "
"
+ }
+ },
+ "com.amazonaws.redshift#EnableSnapshotCopyResult": {
+ "type": "structure",
+ "members": {
+ "Cluster": {
+ "target": "com.amazonaws.redshift#Cluster"
+ }
+ }
+ },
+ "com.amazonaws.redshift#Endpoint": {
+ "type": "structure",
+ "members": {
+ "Address": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The DNS address of the Cluster.
"
+ }
+ },
+ "Port": {
+ "target": "com.amazonaws.redshift#Integer",
+ "traits": {
+ "smithy.api#documentation": "The port that the database engine is listening on.
"
+ }
+ },
+ "VpcEndpoints": {
+ "target": "com.amazonaws.redshift#VpcEndpointsList",
+ "traits": {
+ "smithy.api#documentation": "Describes a connection endpoint.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Describes a connection endpoint.
"
+ }
+ },
+ "com.amazonaws.redshift#EndpointAccess": {
+ "type": "structure",
+ "members": {
+ "ClusterIdentifier": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The cluster identifier of the cluster associated with the endpoint.
"
+ }
+ },
+ "ResourceOwner": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The AWS account ID of the owner of the cluster.
"
+ }
+ },
+ "SubnetGroupName": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The subnet group name where Amazon Redshift chooses to deploy the endpoint.
"
+ }
+ },
+ "EndpointStatus": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The status of the endpoint.
"
+ }
+ },
+ "EndpointName": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The name of the endpoint.
"
+ }
+ },
+ "EndpointCreateTime": {
+ "target": "com.amazonaws.redshift#TStamp",
+ "traits": {
+ "smithy.api#documentation": "The time (UTC) that the endpoint was created.
"
+ }
+ },
+ "Port": {
+ "target": "com.amazonaws.redshift#Integer",
+ "traits": {
+ "smithy.api#documentation": "The port number on which the cluster accepts incoming connections.
"
+ }
+ },
+ "Address": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The DNS address of the endpoint.
"
+ }
+ },
+ "VpcSecurityGroups": {
+ "target": "com.amazonaws.redshift#VpcSecurityGroupMembershipList",
+ "traits": {
+ "smithy.api#documentation": "The security groups associated with the endpoint.
"
+ }
+ },
+ "VpcEndpoint": {
+ "target": "com.amazonaws.redshift#VpcEndpoint"
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Describes a Redshift-managed VPC endpoint.
"
+ }
+ },
+ "com.amazonaws.redshift#EndpointAccessList": {
+ "type": "structure",
+ "members": {
+ "EndpointAccessList": {
+ "target": "com.amazonaws.redshift#EndpointAccesses",
+ "traits": {
+ "smithy.api#documentation": "The list of endpoints with access to the cluster.
"
+ }
+ },
+ "Marker": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "Reserved for Amazon Redshift internal use.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.redshift#EndpointAccesses": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.redshift#EndpointAccess"
+ }
+ },
+ "com.amazonaws.redshift#EndpointAlreadyExistsFault": {
+ "type": "structure",
+ "members": {
+ "message": {
+ "target": "com.amazonaws.redshift#ExceptionMessage"
+ }
+ },
"traits": {
- "smithy.api#documentation": "Enables the automatic copy of snapshots from one region to another region for a\n specified cluster.
"
+ "smithy.api#documentation": "The account already has a Redshift-managed VPC endpoint with the given identifier.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 400
}
},
- "com.amazonaws.redshift#EnableSnapshotCopyMessage": {
+ "com.amazonaws.redshift#EndpointAuthorization": {
"type": "structure",
"members": {
- "ClusterIdentifier": {
+ "Grantor": {
"target": "com.amazonaws.redshift#String",
"traits": {
- "smithy.api#documentation": "The unique identifier of the source cluster to copy snapshots from.
\n Constraints: Must be the valid name of an existing cluster that does not already\n have cross-region snapshot copy enabled.
",
- "smithy.api#required": {}
+ "smithy.api#documentation": "The AWS account ID of the cluster owner.
"
}
},
- "DestinationRegion": {
+ "Grantee": {
"target": "com.amazonaws.redshift#String",
"traits": {
- "smithy.api#documentation": "The destination AWS Region that you want to copy snapshots to.
\n Constraints: Must be the name of a valid AWS Region. For more information, see\n Regions and Endpoints in the Amazon Web Services General Reference.\n
",
- "smithy.api#required": {}
+ "smithy.api#documentation": "The AWS account ID of the grantee of the cluster.
"
}
},
- "RetentionPeriod": {
- "target": "com.amazonaws.redshift#IntegerOptional",
+ "ClusterIdentifier": {
+ "target": "com.amazonaws.redshift#String",
"traits": {
- "smithy.api#documentation": "The number of days to retain automated snapshots in the destination region after\n they are copied from the source region.
\n Default: 7.
\n Constraints: Must be at least 1 and no more than 35.
"
+ "smithy.api#documentation": "The cluster identifier.
"
}
},
- "SnapshotCopyGrantName": {
+ "AuthorizeTime": {
+ "target": "com.amazonaws.redshift#TStamp",
+ "traits": {
+ "smithy.api#documentation": "The time (UTC) when the authorization was created.
"
+ }
+ },
+ "ClusterStatus": {
"target": "com.amazonaws.redshift#String",
"traits": {
- "smithy.api#documentation": "The name of the snapshot copy grant to use when snapshots of an AWS KMS-encrypted\n cluster are copied to the destination region.
"
+ "smithy.api#documentation": "The status of the cluster.
"
}
},
- "ManualSnapshotRetentionPeriod": {
- "target": "com.amazonaws.redshift#IntegerOptional",
+ "Status": {
+ "target": "com.amazonaws.redshift#AuthorizationStatus",
"traits": {
- "smithy.api#documentation": "The number of days to retain newly copied snapshots in the destination AWS Region\n after they are copied from the source AWS Region. If the value is -1, the manual\n snapshot is retained indefinitely.
\n The value must be either -1 or an integer between 1 and 3,653.
"
+ "smithy.api#documentation": "The status of the authorization action.
"
+ }
+ },
+ "AllowedAllVPCs": {
+ "target": "com.amazonaws.redshift#Boolean",
+ "traits": {
+ "smithy.api#documentation": "Indicates whether all VPCs in the grantee account are allowed access to the cluster.
"
+ }
+ },
+ "AllowedVPCs": {
+ "target": "com.amazonaws.redshift#VpcIdentifierList",
+ "traits": {
+ "smithy.api#documentation": "The VPCs allowed access to the cluster.
"
+ }
+ },
+ "EndpointCount": {
+ "target": "com.amazonaws.redshift#Integer",
+ "traits": {
+ "smithy.api#documentation": "The number of Redshift-managed VPC endpoints created for the authorization.
"
}
}
},
"traits": {
- "smithy.api#documentation": "
"
+ "smithy.api#documentation": "Describes an endpoint authorization for authorizing Redshift-managed VPC endpoint access to a cluster across AWS accounts.
"
}
},
- "com.amazonaws.redshift#EnableSnapshotCopyResult": {
+ "com.amazonaws.redshift#EndpointAuthorizationAlreadyExistsFault": {
"type": "structure",
"members": {
- "Cluster": {
- "target": "com.amazonaws.redshift#Cluster"
+ "message": {
+ "target": "com.amazonaws.redshift#ExceptionMessage"
}
+ },
+ "traits": {
+ "smithy.api#documentation": "The authorization already exists for this endpoint.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 400
}
},
- "com.amazonaws.redshift#Endpoint": {
+ "com.amazonaws.redshift#EndpointAuthorizationList": {
"type": "structure",
"members": {
- "Address": {
- "target": "com.amazonaws.redshift#String",
- "traits": {
- "smithy.api#documentation": "The DNS address of the Cluster.
"
- }
- },
- "Port": {
- "target": "com.amazonaws.redshift#Integer",
+ "EndpointAuthorizationList": {
+ "target": "com.amazonaws.redshift#EndpointAuthorizations",
"traits": {
- "smithy.api#documentation": "The port that the database engine is listening on.
"
+ "smithy.api#documentation": "The authorizations to an endpoint.
"
}
},
- "VpcEndpoints": {
- "target": "com.amazonaws.redshift#VpcEndpointsList",
+ "Marker": {
+ "target": "com.amazonaws.redshift#String",
"traits": {
- "smithy.api#documentation": "Describes a connection endpoint.
"
+ "smithy.api#documentation": "Reserved for Amazon Redshift internal use.
"
}
}
+ }
+ },
+ "com.amazonaws.redshift#EndpointAuthorizationNotFoundFault": {
+ "type": "structure",
+ "members": {
+ "message": {
+ "target": "com.amazonaws.redshift#ExceptionMessage"
+ }
},
"traits": {
- "smithy.api#documentation": "Describes a connection endpoint.
"
+ "smithy.api#documentation": "The authorization for this endpoint can't be found.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 404
+ }
+ },
+ "com.amazonaws.redshift#EndpointAuthorizations": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.redshift#EndpointAuthorization"
+ }
+ },
+ "com.amazonaws.redshift#EndpointAuthorizationsPerClusterLimitExceededFault": {
+ "type": "structure",
+ "members": {
+ "message": {
+ "target": "com.amazonaws.redshift#ExceptionMessage"
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The number of endpoint authorizations per cluster has exceeded its limit.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 400
+ }
+ },
+ "com.amazonaws.redshift#EndpointNotFoundFault": {
+ "type": "structure",
+ "members": {
+ "message": {
+ "target": "com.amazonaws.redshift#ExceptionMessage"
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The endpoint name doesn't refer to an existing endpoint.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 404
+ }
+ },
+ "com.amazonaws.redshift#EndpointsPerAuthorizationLimitExceededFault": {
+ "type": "structure",
+ "members": {
+ "message": {
+ "target": "com.amazonaws.redshift#ExceptionMessage"
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The number of Redshift-managed VPC endpoints per authorization has exceeded its limit.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 400
+ }
+ },
+ "com.amazonaws.redshift#EndpointsPerClusterLimitExceededFault": {
+ "type": "structure",
+ "members": {
+ "message": {
+ "target": "com.amazonaws.redshift#ExceptionMessage"
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The number of Redshift-managed VPC endpoints per cluster has exceeded its limit.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 400
}
},
"com.amazonaws.redshift#Event": {
@@ -6564,6 +7153,19 @@
"smithy.api#box": {}
}
},
+ "com.amazonaws.redshift#InvalidAuthorizationStateFault": {
+ "type": "structure",
+ "members": {
+ "message": {
+ "target": "com.amazonaws.redshift#ExceptionMessage"
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The status of the authorization is not valid.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 400
+ }
+ },
"com.amazonaws.redshift#InvalidClusterParameterGroupStateFault": {
"type": "structure",
"members": {
@@ -6681,6 +7283,19 @@
"smithy.api#httpError": 400
}
},
+ "com.amazonaws.redshift#InvalidEndpointStateFault": {
+ "type": "structure",
+ "members": {
+ "message": {
+ "target": "com.amazonaws.redshift#ExceptionMessage"
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The status of the endpoint is not valid.
",
+ "smithy.api#error": "client",
+ "smithy.api#httpError": 400
+ }
+ },
"com.amazonaws.redshift#InvalidHsmClientCertificateStateFault": {
"type": "structure",
"members": {
@@ -7618,6 +8233,56 @@
}
}
},
+ "com.amazonaws.redshift#ModifyEndpointAccess": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.redshift#ModifyEndpointAccessMessage"
+ },
+ "output": {
+ "target": "com.amazonaws.redshift#EndpointAccess"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.redshift#ClusterNotFoundFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#EndpointNotFoundFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#InvalidClusterSecurityGroupStateFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#InvalidClusterStateFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#InvalidEndpointStateFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#UnauthorizedOperation"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Modifies a Redshift-managed VPC endpoint.
"
+ }
+ },
+ "com.amazonaws.redshift#ModifyEndpointAccessMessage": {
+ "type": "structure",
+ "members": {
+ "EndpointName": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The endpoint to be modified.
",
+ "smithy.api#required": {}
+ }
+ },
+ "VpcSecurityGroupIds": {
+ "target": "com.amazonaws.redshift#VpcSecurityGroupIdList",
+ "traits": {
+ "smithy.api#documentation": "The complete list of VPC security groups associated with the endpoint after the endpoint is modified.
"
+ }
+ }
+ }
+ },
"com.amazonaws.redshift#ModifyEventSubscription": {
"type": "operation",
"input": {
@@ -8590,6 +9255,9 @@
{
"target": "com.amazonaws.redshift#AuthorizeClusterSecurityGroupIngress"
},
+ {
+ "target": "com.amazonaws.redshift#AuthorizeEndpointAccess"
+ },
{
"target": "com.amazonaws.redshift#AuthorizeSnapshotAccess"
},
@@ -8620,6 +9288,9 @@
{
"target": "com.amazonaws.redshift#CreateClusterSubnetGroup"
},
+ {
+ "target": "com.amazonaws.redshift#CreateEndpointAccess"
+ },
{
"target": "com.amazonaws.redshift#CreateEventSubscription"
},
@@ -8659,6 +9330,9 @@
{
"target": "com.amazonaws.redshift#DeleteClusterSubnetGroup"
},
+ {
+ "target": "com.amazonaws.redshift#DeleteEndpointAccess"
+ },
{
"target": "com.amazonaws.redshift#DeleteEventSubscription"
},
@@ -8716,6 +9390,12 @@
{
"target": "com.amazonaws.redshift#DescribeDefaultClusterParameters"
},
+ {
+ "target": "com.amazonaws.redshift#DescribeEndpointAccess"
+ },
+ {
+ "target": "com.amazonaws.redshift#DescribeEndpointAuthorization"
+ },
{
"target": "com.amazonaws.redshift#DescribeEventCategories"
},
@@ -8812,6 +9492,9 @@
{
"target": "com.amazonaws.redshift#ModifyClusterSubnetGroup"
},
+ {
+ "target": "com.amazonaws.redshift#ModifyEndpointAccess"
+ },
{
"target": "com.amazonaws.redshift#ModifyEventSubscription"
},
@@ -8854,6 +9537,9 @@
{
"target": "com.amazonaws.redshift#RevokeClusterSecurityGroupIngress"
},
+ {
+ "target": "com.amazonaws.redshift#RevokeEndpointAccess"
+ },
{
"target": "com.amazonaws.redshift#RevokeSnapshotAccess"
},
@@ -10022,6 +10708,70 @@
}
}
},
+ "com.amazonaws.redshift#RevokeEndpointAccess": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.redshift#RevokeEndpointAccessMessage"
+ },
+ "output": {
+ "target": "com.amazonaws.redshift#EndpointAuthorization"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.redshift#ClusterNotFoundFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#EndpointAuthorizationNotFoundFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#EndpointNotFoundFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#InvalidAuthorizationStateFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#InvalidClusterSecurityGroupStateFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#InvalidClusterStateFault"
+ },
+ {
+ "target": "com.amazonaws.redshift#InvalidEndpointStateFault"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Revokes access to a cluster.
"
+ }
+ },
+ "com.amazonaws.redshift#RevokeEndpointAccessMessage": {
+ "type": "structure",
+ "members": {
+ "ClusterIdentifier": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The cluster to revoke access from.
"
+ }
+ },
+ "Account": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#documentation": "The AWS account ID whose access is to be revoked.
"
+ }
+ },
+ "VpcIds": {
+ "target": "com.amazonaws.redshift#VpcIdentifierList",
+ "traits": {
+ "smithy.api#documentation": "The virtual private cloud (VPC) identifiers for which access is to be revoked.
"
+ }
+ },
+ "Force": {
+ "target": "com.amazonaws.redshift#Boolean",
+ "traits": {
+ "smithy.api#documentation": "Indicates whether to force the revoke action. \n If true, the Redshift-managed VPC endpoints associated with the endpoint authorization are also deleted.
"
+ }
+ }
+ }
+ },
"com.amazonaws.redshift#RevokeSnapshotAccess": {
"type": "operation",
"input": {
@@ -11894,7 +12644,7 @@
}
},
"traits": {
- "smithy.api#documentation": "The connection endpoint for connecting an Amazon Redshift cluster through the proxy.
"
+ "smithy.api#documentation": "The connection endpoint for connecting to an Amazon Redshift cluster through the proxy.
"
}
},
"com.amazonaws.redshift#VpcEndpointsList": {
@@ -11906,6 +12656,15 @@
}
}
},
+ "com.amazonaws.redshift#VpcIdentifierList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.redshift#String",
+ "traits": {
+ "smithy.api#xmlName": "VpcIdentifier"
+ }
+ }
+ },
"com.amazonaws.redshift#VpcSecurityGroupIdList": {
"type": "list",
"member": {
diff --git a/codegen/sdk-codegen/aws-models/rekognition.2016-06-27.json b/codegen/sdk-codegen/aws-models/rekognition.2016-06-27.json
index d72f90635cb..6b51c5b805f 100644
--- a/codegen/sdk-codegen/aws-models/rekognition.2016-06-27.json
+++ b/codegen/sdk-codegen/aws-models/rekognition.2016-06-27.json
@@ -440,7 +440,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Compares a face in the source input image with\n each of the 100 largest faces detected in the target input image.\n
\n \n If the source image contains multiple faces, the service detects the largest face\n and compares it with each face detected in the target image.
\n \n\n\n You pass the input and target images either as base64-encoded image bytes or as\n references to images in an Amazon S3 bucket. If you use the\n AWS\n CLI to call Amazon Rekognition operations, passing image bytes isn't\n supported. The image must be formatted as a PNG or JPEG file.
\n In response, the operation returns an array of face matches ordered by similarity score\n in descending order. For each face match, the response provides a bounding box of the face,\n facial landmarks, pose details (pitch, role, and yaw), quality (brightness and sharpness), and\n confidence value (indicating the level of confidence that the bounding box contains a face).\n The response also provides a similarity score, which indicates how closely the faces match.
\n\n \n By default, only faces with a similarity score of greater than or equal to 80% are\n returned in the response. You can change this value by specifying the\n SimilarityThreshold
parameter.
\n \n\n \n CompareFaces
also returns an array of faces that don't match the source image. \n For each face, it returns a bounding box, confidence value, landmarks, pose details, and quality.\n The response also returns information about the face in the source image, including the bounding box\n of the face and confidence value.
\n \n The QualityFilter
input parameter allows you to filter out detected faces\n that don’t meet a required quality bar. The quality bar is based on a\n variety of common use cases. Use QualityFilter
to set the quality bar\n by specifying LOW
, MEDIUM
, or HIGH
.\n If you do not want to filter detected faces, specify NONE
. The default value is NONE
.
\n\n If the image doesn't contain Exif metadata, CompareFaces
returns orientation information for the\n source and target images. Use these values to display the images with the correct image orientation.
\n If no faces are detected in the source or target images, CompareFaces
returns an \n InvalidParameterException
error.
\n\n\n \n This is a stateless API operation. That is, data returned by this operation doesn't persist.
\n \n\n \n For an example, see Comparing Faces in Images in the Amazon Rekognition Developer Guide.
\n This operation requires permissions to perform the rekognition:CompareFaces
\n action.
"
+ "smithy.api#documentation": "Compares a face in the source input image with\n each of the 100 largest faces detected in the target input image.\n
\n \n If the source image contains multiple faces, the service detects the largest face\n and compares it with each face detected in the target image.
\n \n \n \n CompareFaces uses machine learning algorithms, which are probabilistic. \n A false negative is an incorrect prediction that\n a face in the target image has a low similarity confidence score when compared to the face\n in the source image. To reduce the probability of false negatives, \n we recommend that you compare the target image against multiple source images.\n If you plan to use CompareFaces
to make a decision that impacts an individual's rights,\n privacy, or access to services, we recommend that you pass the result to a human for review and further\n validation before taking action.
\n \n\n\n You pass the input and target images either as base64-encoded image bytes or as\n references to images in an Amazon S3 bucket. If you use the\n AWS\n CLI to call Amazon Rekognition operations, passing image bytes isn't\n supported. The image must be formatted as a PNG or JPEG file.
\n In response, the operation returns an array of face matches ordered by similarity score\n in descending order. For each face match, the response provides a bounding box of the face,\n facial landmarks, pose details (pitch, role, and yaw), quality (brightness and sharpness), and\n confidence value (indicating the level of confidence that the bounding box contains a face).\n The response also provides a similarity score, which indicates how closely the faces match.
\n\n \n By default, only faces with a similarity score of greater than or equal to 80% are\n returned in the response. You can change this value by specifying the\n SimilarityThreshold
parameter.
\n \n\n \n CompareFaces
also returns an array of faces that don't match the source image. \n For each face, it returns a bounding box, confidence value, landmarks, pose details, and quality.\n The response also returns information about the face in the source image, including the bounding box\n of the face and confidence value.
\n \n The QualityFilter
input parameter allows you to filter out detected faces\n that don’t meet a required quality bar. The quality bar is based on a\n variety of common use cases. Use QualityFilter
to set the quality bar\n by specifying LOW
, MEDIUM
, or HIGH
.\n If you do not want to filter detected faces, specify NONE
. The default value is NONE
.
\n\n If the image doesn't contain Exif metadata, CompareFaces
returns orientation information for the\n source and target images. Use these values to display the images with the correct image orientation.
\n If no faces are detected in the source or target images, CompareFaces
returns an \n InvalidParameterException
error.
\n\n\n \n This is a stateless API operation. That is, data returned by this operation doesn't persist.
\n \n\n \n For an example, see Comparing Faces in Images in the Amazon Rekognition Developer Guide.
\n This operation requires permissions to perform the rekognition:CompareFaces
\n action.
"
}
},
"com.amazonaws.rekognition#CompareFacesMatch": {
@@ -717,6 +717,9 @@
{
"target": "com.amazonaws.rekognition#ResourceAlreadyExistsException"
},
+ {
+ "target": "com.amazonaws.rekognition#ServiceQuotaExceededException"
+ },
{
"target": "com.amazonaws.rekognition#ThrottlingException"
}
@@ -734,6 +737,12 @@
"smithy.api#documentation": "ID for the collection that you are creating.
",
"smithy.api#required": {}
}
+ },
+ "Tags": {
+ "target": "com.amazonaws.rekognition#TagMap",
+ "traits": {
+ "smithy.api#documentation": "\n A set of tags (key-value pairs) that you want to attach to the collection.\n
"
+ }
}
}
},
@@ -848,6 +857,9 @@
{
"target": "com.amazonaws.rekognition#ResourceNotFoundException"
},
+ {
+ "target": "com.amazonaws.rekognition#ServiceQuotaExceededException"
+ },
{
"target": "com.amazonaws.rekognition#ThrottlingException"
}
@@ -893,6 +905,12 @@
"smithy.api#documentation": "The dataset to use for testing.
",
"smithy.api#required": {}
}
+ },
+ "Tags": {
+ "target": "com.amazonaws.rekognition#TagMap",
+ "traits": {
+ "smithy.api#documentation": "\n A set of tags (key-value pairs) that you want to attach to the model.\n
"
+ }
}
}
},
@@ -934,6 +952,9 @@
{
"target": "com.amazonaws.rekognition#ResourceInUseException"
},
+ {
+ "target": "com.amazonaws.rekognition#ServiceQuotaExceededException"
+ },
{
"target": "com.amazonaws.rekognition#ThrottlingException"
}
@@ -979,6 +1000,12 @@
"smithy.api#documentation": "ARN of the IAM role that allows access to the stream processor.
",
"smithy.api#required": {}
}
+ },
+ "Tags": {
+ "target": "com.amazonaws.rekognition#TagMap",
+ "traits": {
+ "smithy.api#documentation": "\n A set of tags (key-value pairs) that you want to attach to the stream processor.\n
"
+ }
}
}
},
@@ -2227,7 +2254,7 @@
"MinConfidence": {
"target": "com.amazonaws.rekognition#Percent",
"traits": {
- "smithy.api#documentation": "Sets confidence of word detection. Words with detection confidence below this will be excluded \n from the result. Values should be between 0.5 and 1 as Text in Video will not return any result below \n 0.5.
"
+ "smithy.api#documentation": "Sets the confidence of word detection. Words with detection confidence below this will be excluded \n from the result. Values should be between 50 and 100 as Text in Video will not return any result below \n 50.
"
}
},
"MinBoundingBoxHeight": {
@@ -3958,7 +3985,7 @@
}
},
"traits": {
- "smithy.api#documentation": "The input image size exceeds the allowed limit. For more information, see \n Limits in Amazon Rekognition in the Amazon Rekognition Developer Guide.
",
+ "smithy.api#documentation": "The input image size exceeds the allowed limit. If you are calling\n DetectProtectiveEquipment, the image size or resolution exceeds the allowed limit. For more information, see \n Limits in Amazon Rekognition in the Amazon Rekognition Developer Guide.
",
"smithy.api#error": "client"
}
},
@@ -4777,6 +4804,61 @@
}
}
},
+ "com.amazonaws.rekognition#ListTagsForResource": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.rekognition#ListTagsForResourceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.rekognition#ListTagsForResourceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.rekognition#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.rekognition#InternalServerError"
+ },
+ {
+ "target": "com.amazonaws.rekognition#InvalidParameterException"
+ },
+ {
+ "target": "com.amazonaws.rekognition#ProvisionedThroughputExceededException"
+ },
+ {
+ "target": "com.amazonaws.rekognition#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.rekognition#ThrottlingException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "\n Returns a list of tags in an Amazon Rekognition collection, stream processor, or Custom Labels model.\n
"
+ }
+ },
+ "com.amazonaws.rekognition#ListTagsForResourceRequest": {
+ "type": "structure",
+ "members": {
+ "ResourceArn": {
+ "target": "com.amazonaws.rekognition#ResourceArn",
+ "traits": {
+ "smithy.api#documentation": "\n Amazon Resource Name (ARN) of the model, collection, or stream processor that contains the tags that you want a list of.\n
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.rekognition#ListTagsForResourceResponse": {
+ "type": "structure",
+ "members": {
+ "Tags": {
+ "target": "com.amazonaws.rekognition#TagMap",
+ "traits": {
+ "smithy.api#documentation": "\n A list of key-value tags assigned to the resource.\n
"
+ }
+ }
+ }
+ },
"com.amazonaws.rekognition#MaxFaces": {
"type": "integer",
"traits": {
@@ -5479,7 +5561,7 @@
"PersonsWithoutRequiredEquipment": {
"target": "com.amazonaws.rekognition#ProtectiveEquipmentPersonIds",
"traits": {
- "smithy.api#documentation": "An array of IDs for persons who are not wearing all of the types of PPE specified in the RequiredEquipmentTypes field of\n the detected personal protective equipment.\n
"
+ "smithy.api#documentation": "An array of IDs for persons who are not wearing all of the types of PPE specified in the RequiredEquipmentTypes
field of\n the detected personal protective equipment.\n
"
}
},
"PersonsIndeterminate": {
@@ -5809,6 +5891,9 @@
{
"target": "com.amazonaws.rekognition#ListStreamProcessors"
},
+ {
+ "target": "com.amazonaws.rekognition#ListTagsForResource"
+ },
{
"target": "com.amazonaws.rekognition#RecognizeCelebrities"
},
@@ -5853,6 +5938,12 @@
},
{
"target": "com.amazonaws.rekognition#StopStreamProcessor"
+ },
+ {
+ "target": "com.amazonaws.rekognition#TagResource"
+ },
+ {
+ "target": "com.amazonaws.rekognition#UntagResource"
}
],
"traits": {
@@ -5898,6 +5989,15 @@
"smithy.api#error": "client"
}
},
+ "com.amazonaws.rekognition#ResourceArn": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 20,
+ "max": 2048
+ }
+ }
+ },
"com.amazonaws.rekognition#ResourceInUseException": {
"type": "structure",
"members": {
@@ -6376,7 +6476,7 @@
}
},
"traits": {
- "smithy.api#documentation": "
\n \n \n The size of the collection exceeds the allowed limit. For more information, see \n Limits in Amazon Rekognition in the Amazon Rekognition Developer Guide.
",
+ "smithy.api#documentation": "
\n \n \n The size of the collection or tag list exceeds the allowed limit. For more information, see \n Limits in Amazon Rekognition in the Amazon Rekognition Developer Guide.
",
"smithy.api#error": "client"
}
},
@@ -7586,6 +7686,111 @@
"smithy.api#mediaType": "application/json"
}
},
+ "com.amazonaws.rekognition#TagKey": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 128
+ },
+ "smithy.api#pattern": "^(?!aws:)[\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*$"
+ }
+ },
+ "com.amazonaws.rekognition#TagKeyList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.rekognition#TagKey"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 200
+ }
+ }
+ },
+ "com.amazonaws.rekognition#TagMap": {
+ "type": "map",
+ "key": {
+ "target": "com.amazonaws.rekognition#TagKey"
+ },
+ "value": {
+ "target": "com.amazonaws.rekognition#TagValue"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 200
+ }
+ }
+ },
+ "com.amazonaws.rekognition#TagResource": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.rekognition#TagResourceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.rekognition#TagResourceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.rekognition#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.rekognition#InternalServerError"
+ },
+ {
+ "target": "com.amazonaws.rekognition#InvalidParameterException"
+ },
+ {
+ "target": "com.amazonaws.rekognition#ProvisionedThroughputExceededException"
+ },
+ {
+ "target": "com.amazonaws.rekognition#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.rekognition#ServiceQuotaExceededException"
+ },
+ {
+ "target": "com.amazonaws.rekognition#ThrottlingException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "\n Adds one or more key-value tags to an Amazon Rekognition collection, stream processor, or Custom Labels model. For more information, see Tagging AWS Resources .\n
"
+ }
+ },
+ "com.amazonaws.rekognition#TagResourceRequest": {
+ "type": "structure",
+ "members": {
+ "ResourceArn": {
+ "target": "com.amazonaws.rekognition#ResourceArn",
+ "traits": {
+ "smithy.api#documentation": "\n Amazon Resource Name (ARN) of the model, collection, or stream processor that you want to assign the tags to.\n
",
+ "smithy.api#required": {}
+ }
+ },
+ "Tags": {
+ "target": "com.amazonaws.rekognition#TagMap",
+ "traits": {
+ "smithy.api#documentation": "\n The key-value tags to assign to the resource.\n
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.rekognition#TagResourceResponse": {
+ "type": "structure",
+ "members": {}
+ },
+ "com.amazonaws.rekognition#TagValue": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 256
+ },
+ "smithy.api#pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$"
+ }
+ },
"com.amazonaws.rekognition#TechnicalCueSegment": {
"type": "structure",
"members": {
@@ -7873,6 +8078,61 @@
"target": "com.amazonaws.rekognition#UnindexedFace"
}
},
+ "com.amazonaws.rekognition#UntagResource": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.rekognition#UntagResourceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.rekognition#UntagResourceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.rekognition#AccessDeniedException"
+ },
+ {
+ "target": "com.amazonaws.rekognition#InternalServerError"
+ },
+ {
+ "target": "com.amazonaws.rekognition#InvalidParameterException"
+ },
+ {
+ "target": "com.amazonaws.rekognition#ProvisionedThroughputExceededException"
+ },
+ {
+ "target": "com.amazonaws.rekognition#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.rekognition#ThrottlingException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "\n Removes one or more tags from an Amazon Rekognition collection, stream processor, or Custom Labels model.\n
"
+ }
+ },
+ "com.amazonaws.rekognition#UntagResourceRequest": {
+ "type": "structure",
+ "members": {
+ "ResourceArn": {
+ "target": "com.amazonaws.rekognition#ResourceArn",
+ "traits": {
+ "smithy.api#documentation": "\n Amazon Resource Name (ARN) of the model, collection, or stream processor that you want to remove the tags from.\n
",
+ "smithy.api#required": {}
+ }
+ },
+ "TagKeys": {
+ "target": "com.amazonaws.rekognition#TagKeyList",
+ "traits": {
+ "smithy.api#documentation": "\n A list of the tags that you want to remove.\n
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.rekognition#UntagResourceResponse": {
+ "type": "structure",
+ "members": {}
+ },
"com.amazonaws.rekognition#Url": {
"type": "string"
},
diff --git a/codegen/sdk-codegen/aws-models/route53.2013-04-01.json b/codegen/sdk-codegen/aws-models/route53.2013-04-01.json
index 38e4949d47a..d6a9060a9e3 100644
--- a/codegen/sdk-codegen/aws-models/route53.2013-04-01.json
+++ b/codegen/sdk-codegen/aws-models/route53.2013-04-01.json
@@ -5727,7 +5727,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Lists the resource record sets in a specified hosted zone.
\n\t\t \n ListResourceRecordSets
returns up to 100 resource record sets at a time in ASCII order, \n\t\t\tbeginning at a position specified by the name
and type
elements.
\n\t\t\n\t\t \n Sort order \n
\n\t\t\t \n ListResourceRecordSets
sorts results first by DNS name with the labels reversed, for example:
\n\t\t\t \n com.example.www.
\n
\n\t\t\t Note the trailing dot, which can change the sort order when the record name contains characters that appear before \n\t\t\t\t.
(decimal 46) in the ASCII table. These characters include the following: ! \" # $ % & ' ( ) * + , -
\n
\n\t\t\t When multiple records have the same DNS name, ListResourceRecordSets
sorts results by the record type.
\n\t\t\n\t\t \n Specifying where to start listing records \n
\n\t\t\t You can use the name and type elements to specify the resource record set that the list begins with:
\n\t\t\t \n If you do not specify Name or Type \n \n The results begin with the first resource record set that the hosted zone contains.
\n \n If you specify Name but not Type \n \n The results begin with the first resource record set in the list whose name is greater than or equal to \n\t\t\t\t\t\tName
.
\n \n If you specify Type but not Name \n \n Amazon Route 53 returns the InvalidInput
error.
\n \n If you specify both Name and Type \n \n The results begin with the first resource record set in the list whose name is greater than or equal to \n\t\t\t\t\t\tName
, and whose type is greater than or equal to Type
.
\n \n \n\t\t\n\t\t \n Resource record sets that are PENDING \n
\n\t\t\t This action returns the most current version of the records. This includes records that are PENDING
, \n\t\t\t\tand that are not yet available on all Route 53 DNS servers.
\n\t\t\n\t\t \n Changing resource record sets \n
\n\t\t\t To ensure that you get an accurate listing of the resource record sets for a hosted zone at a point in time, \n\t\t\t\tdo not submit a ChangeResourceRecordSets
request while you're paging through the results of a \n\t\t\t\tListResourceRecordSets
request. If you do, some pages may display results without the latest changes \n\t\t\t\twhile other pages display results with the latest changes.
\n\t\t\n\t\t \n Displaying the next page of results \n
\n\t\t\t If a ListResourceRecordSets
command returns more than one page of results, the value of IsTruncated
\n\t\t\t\tis true
. To display the next page of results, get the values of NextRecordName
, NextRecordType
, \n\t\t\t\tand NextRecordIdentifier
(if any) from the response. Then submit another ListResourceRecordSets
request, and \n\t\t\t\tspecify those values for StartRecordName
, StartRecordType
, and StartRecordIdentifier
.
",
+ "smithy.api#documentation": "Lists the resource record sets in a specified hosted zone.
\n\t\t \n ListResourceRecordSets
returns up to 300 resource record sets at a time in ASCII order, \n\t\t\tbeginning at a position specified by the name
and type
elements.
\n\t\t\n\t\t \n Sort order \n
\n\t\t\t \n ListResourceRecordSets
sorts results first by DNS name with the labels reversed, for example:
\n\t\t\t \n com.example.www.
\n
\n\t\t\t Note the trailing dot, which can change the sort order when the record name contains characters that appear before \n\t\t\t\t.
(decimal 46) in the ASCII table. These characters include the following: ! \" # $ % & ' ( ) * + , -
\n
\n\t\t\t When multiple records have the same DNS name, ListResourceRecordSets
sorts results by the record type.
\n\t\t\n\t\t \n Specifying where to start listing records \n
\n\t\t\t You can use the name and type elements to specify the resource record set that the list begins with:
\n\t\t\t \n If you do not specify Name or Type \n \n The results begin with the first resource record set that the hosted zone contains.
\n \n If you specify Name but not Type \n \n The results begin with the first resource record set in the list whose name is greater than or equal to \n\t\t\t\t\t\tName
.
\n \n If you specify Type but not Name \n \n Amazon Route 53 returns the InvalidInput
error.
\n \n If you specify both Name and Type \n \n The results begin with the first resource record set in the list whose name is greater than or equal to \n\t\t\t\t\t\tName
, and whose type is greater than or equal to Type
.
\n \n \n\t\t\n\t\t \n Resource record sets that are PENDING \n
\n\t\t\t This action returns the most current version of the records. This includes records that are PENDING
, \n\t\t\t\tand that are not yet available on all Route 53 DNS servers.
\n\t\t\n\t\t \n Changing resource record sets \n
\n\t\t\t To ensure that you get an accurate listing of the resource record sets for a hosted zone at a point in time, \n\t\t\t\tdo not submit a ChangeResourceRecordSets
request while you're paging through the results of a \n\t\t\t\tListResourceRecordSets
request. If you do, some pages may display results without the latest changes \n\t\t\t\twhile other pages display results with the latest changes.
\n\t\t\n\t\t \n Displaying the next page of results \n
\n\t\t\t If a ListResourceRecordSets
command returns more than one page of results, the value of IsTruncated
\n\t\t\t\tis true
. To display the next page of results, get the values of NextRecordName
, NextRecordType
, \n\t\t\t\tand NextRecordIdentifier
(if any) from the response. Then submit another ListResourceRecordSets
request, and \n\t\t\t\tspecify those values for StartRecordName
, StartRecordType
, and StartRecordIdentifier
.
",
"smithy.api#http": {
"method": "GET",
"uri": "/2013-04-01/hostedzone/{HostedZoneId}/rrset",
diff --git a/codegen/sdk-codegen/aws-models/s3.2006-03-01.json b/codegen/sdk-codegen/aws-models/s3.2006-03-01.json
index 27b4996021c..691b5b1d68f 100644
--- a/codegen/sdk-codegen/aws-models/s3.2006-03-01.json
+++ b/codegen/sdk-codegen/aws-models/s3.2006-03-01.json
@@ -43,7 +43,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will\n wait before permanently removing all parts of the upload. For more information, see \n Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Policy in the\n Amazon Simple Storage Service Developer Guide .
"
+ "smithy.api#documentation": "Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will\n wait before permanently removing all parts of the upload. For more information, see \n Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Policy in the\n Amazon S3 User Guide .
"
}
},
"com.amazonaws.s3#AbortMultipartUpload": {
@@ -85,7 +85,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name to which the upload was taking place.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name to which the upload was taking place.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -135,7 +135,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Configures the transfer acceleration state for an Amazon S3 bucket. For more information, see\n Amazon S3\n Transfer Acceleration in the Amazon Simple Storage Service Developer\n Guide .
"
+ "smithy.api#documentation": "Configures the transfer acceleration state for an Amazon S3 bucket. For more information, see\n Amazon S3\n Transfer Acceleration in the Amazon S3 User Guide .
"
}
},
"com.amazonaws.s3#AcceptRanges": {
@@ -766,7 +766,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Specifies the lifecycle configuration for objects in an Amazon S3 bucket. For more\n information, see Object Lifecycle Management \n in the Amazon Simple Storage Service Developer Guide .
"
+ "smithy.api#documentation": "Specifies the lifecycle configuration for objects in an Amazon S3 bucket. For more\n information, see Object Lifecycle Management \n in the Amazon S3 User Guide .
"
}
},
"com.amazonaws.s3#BucketLocationConstraint": {
@@ -959,7 +959,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Describes the cross-origin access configuration for objects in an Amazon S3 bucket. For more\n information, see Enabling\n Cross-Origin Resource Sharing in the Amazon Simple Storage Service Developer\n Guide .
"
+ "smithy.api#documentation": "Describes the cross-origin access configuration for objects in an Amazon S3 bucket. For more\n information, see Enabling\n Cross-Origin Resource Sharing in the Amazon S3 User Guide .
"
}
},
"com.amazonaws.s3#CORSRule": {
@@ -1168,7 +1168,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The name of the bucket that contains the newly created object.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
"
+ "smithy.api#documentation": "The name of the bucket that contains the newly created object.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
"
}
},
"Key": {
@@ -1504,7 +1504,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The name of the destination bucket.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The name of the destination bucket.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -2011,7 +2011,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The name of the bucket to which the multipart upload was initiated.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The name of the bucket to which the multipart upload was initiated.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#xmlName": "Bucket"
}
},
@@ -2090,7 +2090,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The name of the bucket to which to initiate the upload
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The name of the bucket to which to initiate the upload
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -2307,24 +2307,24 @@
"Mode": {
"target": "com.amazonaws.s3#ObjectLockRetentionMode",
"traits": {
- "smithy.api#documentation": "The default Object Lock retention mode you want to apply to new objects placed in the\n specified bucket.
"
+ "smithy.api#documentation": "The default Object Lock retention mode you want to apply to new objects placed in the\n specified bucket. Must be used with either Days
or Years
.
"
}
},
"Days": {
"target": "com.amazonaws.s3#Days",
"traits": {
- "smithy.api#documentation": "The number of days that you want to specify for the default retention period.
"
+ "smithy.api#documentation": "The number of days that you want to specify for the default retention period. Must be\n used with Mode
.
"
}
},
"Years": {
"target": "com.amazonaws.s3#Years",
"traits": {
- "smithy.api#documentation": "The number of years that you want to specify for the default retention period.
"
+ "smithy.api#documentation": "The number of years that you want to specify for the default retention period. Must be\n used with Mode
.
"
}
}
},
"traits": {
- "smithy.api#documentation": "The container element for specifying the default Object Lock retention settings for new\n objects placed in the specified bucket.
"
+ "smithy.api#documentation": "The container element for specifying the default Object Lock retention settings for new\n objects placed in the specified bucket.
\n \n \n \n The DefaultRetention
settings require both a mode and a\n period.
\n \n \n The DefaultRetention
period can be either Days
\n or Years
but you must select one. You cannot specify Days
\n and Years
at the same time.
\n \n \n "
}
},
"com.amazonaws.s3#Delete": {
@@ -2667,7 +2667,7 @@
"target": "com.amazonaws.s3#DeleteBucketPolicyRequest"
},
"traits": {
- "smithy.api#documentation": "This implementation of the DELETE action uses the policy subresource to delete the\n policy of a specified bucket. If you are using an identity other than the root user of the\n AWS account that owns the bucket, the calling identity must have the\n DeleteBucketPolicy
permissions on the specified bucket and belong to the\n bucket owner's account to use this operation.
\n\n If you don't have DeleteBucketPolicy
permissions, Amazon S3 returns a 403\n Access Denied
error. If you have the correct permissions, but you're not using an\n identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not\n Allowed
error.
\n\n\n \n As a security precaution, the root user of the AWS account that owns a bucket can\n always use this operation, even if the policy explicitly denies the root user the\n ability to perform this action.
\n \n\n For more information about bucket policies, see Using Bucket Policies and\n UserPolicies .
\n The following operations are related to DeleteBucketPolicy
\n
\n ",
+ "smithy.api#documentation": "This implementation of the DELETE action uses the policy subresource to delete the\n policy of a specified bucket. If you are using an identity other than the root user of the\n AWS account that owns the bucket, the calling identity must have the\n DeleteBucketPolicy
permissions on the specified bucket and belong to the\n bucket owner's account to use this operation.
\n\n If you don't have DeleteBucketPolicy
permissions, Amazon S3 returns a 403\n Access Denied
error. If you have the correct permissions, but you're not using an\n identity that belongs to the bucket owner's account, Amazon S3 returns a 405 Method Not\n Allowed
error.
\n\n \n As a security precaution, the root user of the AWS account that owns a bucket can\n always use this operation, even if the policy explicitly denies the root user the\n ability to perform this action.
\n \n\n For more information about bucket policies, see Using Bucket Policies and\n UserPolicies .
\n The following operations are related to DeleteBucketPolicy
\n
\n ",
"smithy.api#http": {
"method": "DELETE",
"uri": "/{Bucket}?policy",
@@ -2905,7 +2905,7 @@
"target": "com.amazonaws.s3#DeleteObjectOutput"
},
"traits": {
- "smithy.api#documentation": "Removes the null version (if there is one) of an object and inserts a delete marker,\n which becomes the latest version of the object. If there isn't a null version, Amazon S3 does\n not remove any objects.
\n\n To remove a specific version, you must be the bucket owner and you must use the version\n Id subresource. Using this subresource permanently deletes the version. If the object\n deleted is a delete marker, Amazon S3 sets the response header,\n x-amz-delete-marker
, to true.
\n\n If the object you want to delete is in a bucket where the bucket versioning\n configuration is MFA Delete enabled, you must include the x-amz-mfa
request\n header in the DELETE versionId
request. Requests that include\n x-amz-mfa
must use HTTPS.
\n\n For more information about MFA Delete, see Using MFA Delete . To see sample requests that use versioning, see Sample Request .
\n\n You can delete objects by explicitly calling DELETE Object or configure its\n lifecycle (PutBucketLifecycle ) to\n enable Amazon S3 to remove them for you. If you want to block users or accounts from removing or\n deleting objects from your bucket, you must deny them the s3:DeleteObject
,\n s3:DeleteObjectVersion
, and s3:PutLifeCycleConfiguration
\n actions.
\n\n The following action is related to DeleteObject
:
\n ",
+ "smithy.api#documentation": "Removes the null version (if there is one) of an object and inserts a delete marker,\n which becomes the latest version of the object. If there isn't a null version, Amazon S3 does\n not remove any objects but will still respond that the command was successful.
\n\n To remove a specific version, you must be the bucket owner and you must use the version\n Id subresource. Using this subresource permanently deletes the version. If the object\n deleted is a delete marker, Amazon S3 sets the response header,\n x-amz-delete-marker
, to true.
\n\n If the object you want to delete is in a bucket where the bucket versioning\n configuration is MFA Delete enabled, you must include the x-amz-mfa
request\n header in the DELETE versionId
request. Requests that include\n x-amz-mfa
must use HTTPS.
\n\n For more information about MFA Delete, see Using MFA Delete . To see sample requests that use versioning, see Sample Request .
\n\n You can delete objects by explicitly calling DELETE Object or configure its\n lifecycle (PutBucketLifecycle ) to\n enable Amazon S3 to remove them for you. If you want to block users or accounts from removing or\n deleting objects from your bucket, you must deny them the s3:DeleteObject
,\n s3:DeleteObjectVersion
, and s3:PutLifeCycleConfiguration
\n actions.
\n\n The following action is related to DeleteObject
:
\n ",
"smithy.api#http": {
"method": "DELETE",
"uri": "/{Bucket}/{Key+}?x-id=DeleteObject",
@@ -2944,7 +2944,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name of the bucket containing the object.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name of the bucket containing the object.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -3028,7 +3028,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name containing the objects from which to remove the tags.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name containing the objects from which to remove the tags.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -3107,7 +3107,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name containing the objects to delete.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name containing the objects to delete.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -3585,7 +3585,7 @@
"Name": {
"target": "com.amazonaws.s3#FilterRuleName",
"traits": {
- "smithy.api#documentation": "The object key name prefix or suffix identifying one or more objects to which the\n filtering rule applies. The maximum length is 1,024 characters. Overlapping prefixes and\n suffixes are not supported. For more information, see Configuring Event Notifications \n in the Amazon Simple Storage Service Developer Guide .
"
+ "smithy.api#documentation": "The object key name prefix or suffix identifying one or more objects to which the\n filtering rule applies. The maximum length is 1,024 characters. Overlapping prefixes and\n suffixes are not supported. For more information, see Configuring Event Notifications \n in the Amazon S3 User Guide .
"
}
},
"Value": {
@@ -4718,7 +4718,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name that contains the object for which to get the ACL information.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name that contains the object for which to get the ACL information.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -4788,7 +4788,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name containing the object whose Legal Hold status you want to retrieve.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name containing the object whose Legal Hold status you want to retrieve.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -4858,7 +4858,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket whose Object Lock configuration you want to retrieve.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket whose Object Lock configuration you want to retrieve.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -5106,7 +5106,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name containing the object.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name containing the object.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -5284,7 +5284,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name containing the object whose retention settings you want to retrieve.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name containing the object whose retention settings you want to retrieve.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -5361,7 +5361,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name containing the object for which to get the tagging information.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name containing the object for which to get the tagging information.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -5673,7 +5673,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -5766,7 +5766,7 @@
"Restore": {
"target": "com.amazonaws.s3#Restore",
"traits": {
- "smithy.api#documentation": "If the object is an archived object (an object whose storage class is GLACIER), the\n response includes this header if either the archive restoration is in progress (see RestoreObject or an archive copy is already restored.
\n\n If an archive copy is already restored, the header value indicates when Amazon S3 is\n scheduled to delete the object copy. For example:
\n\n \n x-amz-restore: ongoing-request=\"false\", expiry-date=\"Fri, 23 Dec 2012 00:00:00\n GMT\"
\n
\n\n If the object restoration is in progress, the header returns the value\n ongoing-request=\"true\"
.
\n\n For more information about archiving objects, see Transitioning Objects: General Considerations .
",
+ "smithy.api#documentation": "If the object is an archived object (an object whose storage class is GLACIER), the\n response includes this header if either the archive restoration is in progress (see RestoreObject or an archive copy is already restored.
\n\n If an archive copy is already restored, the header value indicates when Amazon S3 is\n scheduled to delete the object copy. For example:
\n\n \n x-amz-restore: ongoing-request=\"false\", expiry-date=\"Fri, 21 Dec 2012 00:00:00\n GMT\"
\n
\n\n If the object restoration is in progress, the header returns the value\n ongoing-request=\"true\"
.
\n\n For more information about archiving objects, see Transitioning Objects: General Considerations .
",
"smithy.api#httpHeader": "x-amz-restore"
}
},
@@ -5959,7 +5959,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The name of the bucket containing the object.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The name of the bucket containing the object.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -6657,7 +6657,7 @@
"Events": {
"target": "com.amazonaws.s3#EventList",
"traits": {
- "smithy.api#documentation": "The Amazon S3 bucket event for which to invoke the AWS Lambda function. For more information,\n see Supported\n Event Types in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The Amazon S3 bucket event for which to invoke the AWS Lambda function. For more information,\n see Supported\n Event Types in the Amazon S3 User Guide .
",
"smithy.api#required": {},
"smithy.api#xmlFlattened": {},
"smithy.api#xmlName": "Event"
@@ -6725,11 +6725,14 @@
"target": "com.amazonaws.s3#Prefix",
"traits": {
"smithy.api#deprecated": {},
- "smithy.api#documentation": "Prefix identifying one or more objects to which the rule applies. This is\n No longer used; use Filter
instead.
\n \n Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints .
\n "
+ "smithy.api#documentation": "Prefix identifying one or more objects to which the rule applies. This is\n no longer used; use Filter
instead.
\n \n Replacement must be made for object keys containing special characters (such as carriage returns) when using \n XML requests. For more information, see \n XML related object key constraints .
\n "
}
},
"Filter": {
- "target": "com.amazonaws.s3#LifecycleRuleFilter"
+ "target": "com.amazonaws.s3#LifecycleRuleFilter",
+ "traits": {
+ "smithy.api#documentation": "The Filter
is used to identify objects that a Lifecycle Rule applies to. A\n Filter
must have exactly one of Prefix
, Tag
, or\n And
specified. Filter
is required if the LifecycleRule
\n does not containt a Prefix
element.
"
+ }
},
"Status": {
"target": "com.amazonaws.s3#ExpirationStatus",
@@ -7243,7 +7246,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The name of the bucket to which the multipart upload was initiated.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The name of the bucket to which the multipart upload was initiated.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -7307,7 +7310,7 @@
"target": "com.amazonaws.s3#ListObjectVersionsOutput"
},
"traits": {
- "smithy.api#documentation": "Returns metadata about all versions of the objects in a bucket. You can also use request\n parameters as selection criteria to return metadata about a subset of all the object\n versions.
\n \n A 200 OK response can contain valid or invalid XML. Make sure to design your\n application to parse the contents of the response and handle it appropriately.
\n \n To use this operation, you must have READ access to the bucket.
\n This action is not supported by Amazon S3 on Outposts.
\n The following operations are related to\n ListObjectVersions
:
\n ",
+ "smithy.api#documentation": "Returns metadata about all versions of the objects in a bucket. You can also use request\n parameters as selection criteria to return metadata about a subset of all the object\n versions.
\n \n \n To use this operation, you must have permissions to perform the \n s3:ListBucketVersions
action. Be aware of the name difference.\n
\n \n \n A 200 OK response can contain valid or invalid XML. Make sure to design your\n application to parse the contents of the response and handle it appropriately.
\n \n To use this operation, you must have READ access to the bucket.
\n This action is not supported by Amazon S3 on Outposts.
\n The following operations are related to\n ListObjectVersions
:
\n ",
"smithy.api#http": {
"method": "GET",
"uri": "/{Bucket}?versions",
@@ -7559,7 +7562,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The name of the bucket containing the objects.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The name of the bucket containing the objects.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -7660,7 +7663,7 @@
"Name": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
"
+ "smithy.api#documentation": "The bucket name.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
"
}
},
"Prefix": {
@@ -7726,7 +7729,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "Bucket name to list.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "Bucket name to list.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -7918,7 +7921,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The name of the bucket to which the parts are being uploaded.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The name of the bucket to which the parts are being uploaded.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -8338,7 +8341,7 @@
"NoncurrentDays": {
"target": "com.amazonaws.s3#Days",
"traits": {
- "smithy.api#documentation": "Specifies the number of days an object is noncurrent before Amazon S3 can perform the\n associated action. For information about the noncurrent days calculations, see How\n Amazon S3 Calculates How Long an Object Has Been Noncurrent in the\n Amazon Simple Storage Service Developer Guide .
"
+ "smithy.api#documentation": "Specifies the number of days an object is noncurrent before Amazon S3 can perform the\n associated action. For information about the noncurrent days calculations, see How\n Amazon S3 Calculates How Long an Object Has Been Noncurrent in the\n Amazon S3 User Guide .
"
}
},
"StorageClass": {
@@ -8409,7 +8412,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Specifies object key name filtering rules. For information about key name filtering, see\n Configuring\n Event Notifications in the Amazon Simple Storage Service Developer\n Guide .
"
+ "smithy.api#documentation": "Specifies object key name filtering rules. For information about key name filtering, see\n Configuring\n Event Notifications in the Amazon S3 User Guide .
"
}
},
"com.amazonaws.s3#NotificationId": {
@@ -8552,13 +8555,13 @@
"ObjectLockEnabled": {
"target": "com.amazonaws.s3#ObjectLockEnabled",
"traits": {
- "smithy.api#documentation": "Indicates whether this bucket has an Object Lock configuration enabled.
"
+ "smithy.api#documentation": "Indicates whether this bucket has an Object Lock configuration enabled.\n Enable ObjectLockEnabled
when you apply ObjectLockConfiguration
\n to a bucket.
"
}
},
"Rule": {
"target": "com.amazonaws.s3#ObjectLockRule",
"traits": {
- "smithy.api#documentation": "The Object Lock rule in place for the specified object.
"
+ "smithy.api#documentation": "Specifies the Object Lock rule for the specified object. Enable the this rule when you apply\n ObjectLockConfiguration
to a bucket. Bucket settings require both a mode and a period.\n The period can be either Days
or Years
but you must select one.\n You cannot specify Days
and Years
at the same time.
"
}
}
},
@@ -8671,7 +8674,7 @@
"DefaultRetention": {
"target": "com.amazonaws.s3#DefaultRetention",
"traits": {
- "smithy.api#documentation": "The default retention period that you want to apply to new objects placed in the\n specified bucket.
"
+ "smithy.api#documentation": "The default Object Lock retention mode and period that you want to apply to new objects\n placed in the specified bucket. Bucket settings require both a mode and a period.\n The period can be either Days
or Years
but you must select one.\n You cannot specify Days
and Years
at the same time.
"
}
}
},
@@ -9389,7 +9392,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "Specifies default encryption for a bucket using server-side encryption with Amazon S3-managed\n keys (SSE-S3) or customer master keys stored in AWS KMS (SSE-KMS). For information about\n the Amazon S3 default encryption feature, see Amazon S3 Default Bucket Encryption \n in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "Specifies default encryption for a bucket using server-side encryption with Amazon S3-managed\n keys (SSE-S3) or customer master keys stored in AWS KMS (SSE-KMS). For information about\n the Amazon S3 default encryption feature, see Amazon S3 Default Bucket Encryption \n in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -10072,7 +10075,7 @@
"target": "com.amazonaws.s3#PutObjectOutput"
},
"traits": {
- "smithy.api#documentation": "Adds an object to a bucket. You must have WRITE permissions on a bucket to add an object\n to it.
\n\n\n Amazon S3 never adds partial objects; if you receive a success response, Amazon S3 added the\n entire object to the bucket.
\n\n Amazon S3 is a distributed system. If it receives multiple write requests for the same object\n simultaneously, it overwrites all but the last object written. Amazon S3 does not provide object\n locking; if you need this, make sure to build it into your application layer or use\n versioning instead.
\n\n To ensure that data is not corrupted traversing the network, use the\n Content-MD5
header. When you use this header, Amazon S3 checks the object\n against the provided MD5 value and, if they do not match, returns an error. Additionally,\n you can calculate the MD5 while putting an object to Amazon S3 and compare the returned ETag to\n the calculated MD5 value.
\n \n The Content-MD5
header is required for any request to upload an object\n with a retention period configured using Amazon S3 Object Lock. For more information about\n Amazon S3 Object Lock, see Amazon S3 Object Lock Overview \n in the Amazon Simple Storage Service Developer Guide .
\n \n\n\n \n Server-side Encryption \n
\n You can optionally request server-side encryption. With server-side encryption, Amazon S3 encrypts \n your data as it writes it to disks in its data centers and decrypts the data\n when you access it. You have the option to provide your own encryption key or use AWS\n managed encryption keys (SSE-S3 or SSE-KMS). For more information, see Using Server-Side\n Encryption .
\n If you request server-side encryption using AWS Key Management Service (SSE-KMS), you can enable \n an S3 Bucket Key at the object-level. For more information, see Amazon S3 Bucket Keys in the \n Amazon S3 User Guide .
\n \n Access Control List (ACL)-Specific Request\n Headers \n
\n You can use headers to grant ACL- based permissions. By default, all objects are\n private. Only the owner has full access control. When adding a new object, you can grant\n permissions to individual AWS accounts or to predefined groups defined by Amazon S3. These\n permissions are then added to the ACL on the object. For more information, see Access Control List\n (ACL) Overview and Managing ACLs Using the REST\n API .
\n\n \n Storage Class Options \n
\n By default, Amazon S3 uses the STANDARD Storage Class to store newly created objects. The\n STANDARD storage class provides high durability and high availability. Depending on\n performance needs, you can specify a different Storage Class. Amazon S3 on Outposts only uses\n the OUTPOSTS Storage Class. For more information, see Storage Classes in the Amazon S3\n Service Developer Guide .
\n\n\n \n Versioning \n
\n If you enable versioning for a bucket, Amazon S3 automatically generates a unique version ID\n for the object being stored. Amazon S3 returns this ID in the response. When you enable\n versioning for a bucket, if Amazon S3 receives multiple write requests for the same object\n simultaneously, it stores all of the objects.
\n For more information about versioning, see Adding Objects to\n Versioning Enabled Buckets . For information about returning the versioning state\n of a bucket, see GetBucketVersioning .
\n\n\n \n Related Resources \n
\n ",
+ "smithy.api#documentation": "Adds an object to a bucket. You must have WRITE permissions on a bucket to add an object\n to it.
\n\n\n Amazon S3 never adds partial objects; if you receive a success response, Amazon S3 added the\n entire object to the bucket.
\n\n Amazon S3 is a distributed system. If it receives multiple write requests for the same object\n simultaneously, it overwrites all but the last object written. Amazon S3 does not provide object\n locking; if you need this, make sure to build it into your application layer or use\n versioning instead.
\n\n To ensure that data is not corrupted traversing the network, use the\n Content-MD5
header. When you use this header, Amazon S3 checks the object\n against the provided MD5 value and, if they do not match, returns an error. Additionally,\n you can calculate the MD5 while putting an object to Amazon S3 and compare the returned ETag to\n the calculated MD5 value.
\n \n The Content-MD5
header is required for any request to upload an object\n with a retention period configured using Amazon S3 Object Lock. For more information about\n Amazon S3 Object Lock, see Amazon S3 Object Lock Overview \n in the Amazon S3 User Guide .
\n \n\n\n \n Server-side Encryption \n
\n You can optionally request server-side encryption. With server-side encryption, Amazon S3 encrypts \n your data as it writes it to disks in its data centers and decrypts the data\n when you access it. You have the option to provide your own encryption key or use AWS\n managed encryption keys (SSE-S3 or SSE-KMS). For more information, see Using Server-Side\n Encryption .
\n If you request server-side encryption using AWS Key Management Service (SSE-KMS), you can enable \n an S3 Bucket Key at the object-level. For more information, see Amazon S3 Bucket Keys in the \n Amazon S3 User Guide .
\n \n Access Control List (ACL)-Specific Request\n Headers \n
\n You can use headers to grant ACL- based permissions. By default, all objects are\n private. Only the owner has full access control. When adding a new object, you can grant\n permissions to individual AWS accounts or to predefined groups defined by Amazon S3. These\n permissions are then added to the ACL on the object. For more information, see Access Control List\n (ACL) Overview and Managing ACLs Using the REST\n API .
\n\n \n Storage Class Options \n
\n By default, Amazon S3 uses the STANDARD Storage Class to store newly created objects. The\n STANDARD storage class provides high durability and high availability. Depending on\n performance needs, you can specify a different Storage Class. Amazon S3 on Outposts only uses\n the OUTPOSTS Storage Class. For more information, see Storage Classes in the Amazon S3\n Service Developer Guide .
\n\n\n \n Versioning \n
\n If you enable versioning for a bucket, Amazon S3 automatically generates a unique version ID\n for the object being stored. Amazon S3 returns this ID in the response. When you enable\n versioning for a bucket, if Amazon S3 receives multiple write requests for the same object\n simultaneously, it stores all of the objects.
\n For more information about versioning, see Adding Objects to\n Versioning Enabled Buckets . For information about returning the versioning state\n of a bucket, see GetBucketVersioning .
\n\n\n \n Related Resources \n
\n ",
"smithy.api#http": {
"method": "PUT",
"uri": "/{Bucket}/{Key+}?x-id=PutObject",
@@ -10134,7 +10137,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name that contains the object to which you want to attach the ACL.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name that contains the object to which you want to attach the ACL.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -10184,7 +10187,7 @@
"Key": {
"target": "com.amazonaws.s3#ObjectKey",
"traits": {
- "smithy.api#documentation": "Key for which the PUT action was initiated.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "Key for which the PUT action was initiated.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -10220,7 +10223,7 @@
"target": "com.amazonaws.s3#PutObjectLegalHoldOutput"
},
"traits": {
- "smithy.api#documentation": "Applies a Legal Hold configuration to the specified object.
\n This action is not supported by Amazon S3 on Outposts.
\n \n Related Resources \n
\n ",
+ "smithy.api#documentation": "Applies a Legal Hold configuration to the specified object. For more information, see\n Locking\n Objects .
\n This action is not supported by Amazon S3 on Outposts.
",
"smithy.api#http": {
"method": "PUT",
"uri": "/{Bucket}/{Key+}?legal-hold",
@@ -10246,7 +10249,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name containing the object that you want to place a Legal Hold on.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name containing the object that you want to place a Legal Hold on.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -10304,7 +10307,7 @@
"target": "com.amazonaws.s3#PutObjectLockConfigurationOutput"
},
"traits": {
- "smithy.api#documentation": "Places an Object Lock configuration on the specified bucket. The rule specified in the\n Object Lock configuration will be applied by default to every new object placed in the\n specified bucket.
\n \n \n DefaultRetention
requires either Days or Years. You can't specify both\n at the same time.
\n \n \n Related Resources \n
\n ",
+ "smithy.api#documentation": "Places an Object Lock configuration on the specified bucket. The rule specified in the\n Object Lock configuration will be applied by default to every new object placed in the\n specified bucket. For more information, see Locking Objects .\n
\n \n \n \n The DefaultRetention
settings require both a mode and a\n period.
\n \n \n The DefaultRetention
period can be either Days
\n or Years
but you must select one. You cannot specify Days
\n and Years
at the same time.
\n \n \n You can only enable Object Lock for new buckets. If you want to turn on\n Object Lock for an existing bucket, contact AWS Support.
\n \n \n ",
"smithy.api#http": {
"method": "PUT",
"uri": "/{Bucket}?object-lock",
@@ -10465,7 +10468,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name to which the PUT action was initiated.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name to which the PUT action was initiated.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -10684,7 +10687,7 @@
"target": "com.amazonaws.s3#PutObjectRetentionOutput"
},
"traits": {
- "smithy.api#documentation": "Places an Object Retention configuration on an object.
\n This action is not supported by Amazon S3 on Outposts.
\n \n Related Resources \n
\n ",
+ "smithy.api#documentation": "Places an Object Retention configuration on an object. For more information, see Locking Objects .\n
\n This action is not supported by Amazon S3 on Outposts.
",
"smithy.api#http": {
"method": "PUT",
"uri": "/{Bucket}/{Key+}?retention",
@@ -10710,7 +10713,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name that contains the object you want to apply this Object Retention\n configuration to.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name that contains the object you want to apply this Object Retention\n configuration to.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -10802,7 +10805,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name containing the object.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name containing the object.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -10888,7 +10891,7 @@
"PublicAccessBlockConfiguration": {
"target": "com.amazonaws.s3#PublicAccessBlockConfiguration",
"traits": {
- "smithy.api#documentation": "The PublicAccessBlock
configuration that you want to apply to this Amazon S3\n bucket. You can enable the configuration options in any combination. For more information\n about when Amazon S3 considers a bucket or object public, see The Meaning of \"Public\" in the Amazon Simple Storage Service Developer\n Guide .
",
+ "smithy.api#documentation": "The PublicAccessBlock
configuration that you want to apply to this Amazon S3\n bucket. You can enable the configuration options in any combination. For more information\n about when Amazon S3 considers a bucket or object public, see The Meaning of \"Public\" in the Amazon S3 User Guide .
",
"smithy.api#httpPayload": {},
"smithy.api#required": {}
}
@@ -11091,7 +11094,7 @@
"Role": {
"target": "com.amazonaws.s3#Role",
"traits": {
- "smithy.api#documentation": "The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that\n Amazon S3 assumes when replicating objects. For more information, see How to Set Up\n Replication in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that\n Amazon S3 assumes when replicating objects. For more information, see How to Set Up\n Replication in the Amazon S3 User Guide .
",
"smithy.api#required": {}
}
},
@@ -11121,7 +11124,7 @@
"Priority": {
"target": "com.amazonaws.s3#Priority",
"traits": {
- "smithy.api#documentation": "The priority indicates which rule has precedence whenever two or more replication rules\n conflict. Amazon S3 will attempt to replicate objects according to all replication rules.\n However, if there are two or more rules with the same destination bucket, then objects will\n be replicated according to the rule with the highest priority. The higher the number, the\n higher the priority.
\n For more information, see Replication in the\n Amazon Simple Storage Service Developer Guide .
"
+ "smithy.api#documentation": "The priority indicates which rule has precedence whenever two or more replication rules\n conflict. Amazon S3 will attempt to replicate objects according to all replication rules.\n However, if there are two or more rules with the same destination bucket, then objects will\n be replicated according to the rule with the highest priority. The higher the number, the\n higher the priority.
\n For more information, see Replication in the\n Amazon S3 User Guide .
"
}
},
"Prefix": {
@@ -11440,7 +11443,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name containing the object to restore.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name containing the object to restore.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -12565,7 +12568,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The bucket name.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The bucket name.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -12767,7 +12770,7 @@
"Bucket": {
"target": "com.amazonaws.s3#BucketName",
"traits": {
- "smithy.api#documentation": "The name of the bucket to which the multipart upload was initiated.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon Simple Storage Service Developer Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon Simple Storage Service Developer Guide .
",
+ "smithy.api#documentation": "The name of the bucket to which the multipart upload was initiated.
\n When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName -AccountId .s3-accesspoint.Region .amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using Access Points in the Amazon S3 User Guide .
\n When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName -AccountId .outpostID .s3-outposts.Region .amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts in the Amazon S3 User Guide .
",
"smithy.api#httpLabel": {},
"smithy.api#required": {}
}
@@ -12927,7 +12930,7 @@
"smithy.api#auth": [
"aws.auth#sigv4"
],
- "smithy.api#documentation": "Passes transformed\n objects to a GetObject
operation when using Object Lambda Access Points. For information about\n Object Lambda Access Points, see Transforming objects with\n Object Lambda Access Points in the Amazon S3 User Guide .
\n This operation supports metadata that can be returned by GetObject , in addition to\n RequestRoute
, RequestToken
, StatusCode
,\n ErrorCode
, and ErrorMessage
. The GetObject
\n response metadata is supported so that the WriteGetObjectResponse
caller,\n typically an AWS Lambda function, can provide the same metadata when it internally invokes\n GetObject
. When WriteGetObjectResponse
is called by a\n customer-owned Lambda function, the metadata returned to the end user\n GetObject
call might differ from what Amazon S3 would normally return.
",
+ "smithy.api#documentation": "Passes transformed\n objects to a GetObject
operation when using Object Lambda Access Points. For information about\n Object Lambda Access Points, see Transforming objects with\n Object Lambda Access Points in the Amazon S3 User Guide .
\n This operation supports metadata that can be returned by GetObject , in addition to\n RequestRoute
, RequestToken
, StatusCode
,\n ErrorCode
, and ErrorMessage
. The GetObject
\n response metadata is supported so that the WriteGetObjectResponse
caller,\n typically an AWS Lambda function, can provide the same metadata when it internally invokes\n GetObject
. When WriteGetObjectResponse
is called by a\n customer-owned Lambda function, the metadata returned to the end user\n GetObject
call might differ from what Amazon S3 would normally return.
\n AWS provides some prebuilt Lambda functions that you can use with S3 Object Lambda to detect and redact\n personally identifiable information (PII) and decompress S3 objects. These Lambda functions\n are available in the AWS Serverless Application Repository, and can be selected through the AWS Management Console when you create your\n Object Lambda Access Point.
\n Example 1: PII Access Control - This Lambda function uses Amazon Comprehend, a natural language processing (NLP) service using machine learning to find insights and relationships in text. It automatically detects personally identifiable information (PII) such as names, addresses, dates, credit card numbers, and social security numbers from documents in your Amazon S3 bucket.
\n Example 2: PII Redaction - This Lambda function uses Amazon Comprehend, a natural language processing (NLP) service using machine learning to find insights and relationships in text. It automatically redacts personally identifiable information (PII) such as names, addresses, dates, credit card numbers, and social security numbers from documents in your Amazon S3 bucket.
\n Example 3: Decompression - The Lambda function S3ObjectLambdaDecompression, is equipped to decompress objects stored in S3 in one of six compressed file formats including bzip2, gzip, snappy, zlib, zstandard and ZIP.
\n For information on how to view and use these functions, see Using AWS built Lambda functions in the Amazon S3 User Guide .
",
"smithy.api#endpoint": {
"hostPrefix": "{RequestRoute}."
},
@@ -12975,7 +12978,7 @@
"ErrorCode": {
"target": "com.amazonaws.s3#ErrorCode",
"traits": {
- "smithy.api#documentation": "A string that uniquely identifies an error condition. Returned in the tag\n of the error XML response for a corresponding GetObject
call. Cannot be used\n with a successful StatusCode
header or when the transformed object is provided\n in the body.
",
+ "smithy.api#documentation": "A string that uniquely identifies an error condition. Returned in the tag\n of the error XML response for a corresponding GetObject
call. Cannot be used\n with a successful StatusCode
header or when the transformed object is provided\n in the body. All error codes from S3 are sentence-cased. Regex value is \"^[A-Z][a-zA-Z]+$\".
",
"smithy.api#httpHeader": "x-amz-fwd-error-code"
}
},
diff --git a/codegen/sdk-codegen/aws-models/s3control.2018-08-20.json b/codegen/sdk-codegen/aws-models/s3control.2018-08-20.json
index 2518a1572d3..06ab9e47927 100644
--- a/codegen/sdk-codegen/aws-models/s3control.2018-08-20.json
+++ b/codegen/sdk-codegen/aws-models/s3control.2018-08-20.json
@@ -628,7 +628,10 @@
}
},
"PublicAccessBlockConfiguration": {
- "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration"
+ "target": "com.amazonaws.s3control#PublicAccessBlockConfiguration",
+ "traits": {
+ "smithy.api#documentation": "\n The PublicAccessBlock
configuration that you want to apply to the access point.\n
"
+ }
}
}
},
@@ -3649,6 +3652,10 @@
"method": "GET",
"uri": "/v20180820/storagelens",
"code": 200
+ },
+ "smithy.api#paginated": {
+ "inputToken": "NextToken",
+ "outputToken": "NextToken"
}
}
},
@@ -3984,7 +3991,7 @@
"Actions": {
"target": "com.amazonaws.s3control#ObjectLambdaTransformationConfigurationActionsList",
"traits": {
- "smithy.api#documentation": "A container for the action of an Object Lambda Access Point configuration.
",
+ "smithy.api#documentation": "A container for the action of an Object Lambda Access Point configuration. Valid input is GetObject
.
",
"smithy.api#required": {}
}
},
diff --git a/codegen/sdk-codegen/aws-models/sagemaker.2017-07-24.json b/codegen/sdk-codegen/aws-models/sagemaker.2017-07-24.json
index 1e18970434e..d39104e5143 100644
--- a/codegen/sdk-codegen/aws-models/sagemaker.2017-07-24.json
+++ b/codegen/sdk-codegen/aws-models/sagemaker.2017-07-24.json
@@ -1591,6 +1591,12 @@
"traits": {
"smithy.api#documentation": "The failure reason.
"
}
+ },
+ "CandidateProperties": {
+ "target": "com.amazonaws.sagemaker#CandidateProperties",
+ "traits": {
+ "smithy.api#documentation": "The AutoML candidate's properties.
"
+ }
}
},
"traits": {
@@ -1638,26 +1644,26 @@
"DataSource": {
"target": "com.amazonaws.sagemaker#AutoMLDataSource",
"traits": {
- "smithy.api#documentation": "The data source.
",
+ "smithy.api#documentation": "The data source for an AutoML channel.
",
"smithy.api#required": {}
}
},
"CompressionType": {
"target": "com.amazonaws.sagemaker#CompressionType",
"traits": {
- "smithy.api#documentation": "You can use Gzip or None. The default value is None.
"
+ "smithy.api#documentation": "You can use Gzip
or None
. The default value is\n None
.
"
}
},
"TargetAttributeName": {
"target": "com.amazonaws.sagemaker#TargetAttributeName",
"traits": {
- "smithy.api#documentation": "The name of the target variable in supervised learning, a.k.a. 'y'.
",
+ "smithy.api#documentation": "The name of the target variable in supervised learning, usually represented by\n 'y'.
",
"smithy.api#required": {}
}
}
},
"traits": {
- "smithy.api#documentation": "Similar to Channel. A channel is a named input source that training algorithms can\n consume. Refer to Channel for detailed descriptions.
"
+ "smithy.api#documentation": "A channel is a named input source that training algorithms can consume. For more\n information, see .
"
}
},
"com.amazonaws.sagemaker#AutoMLContainerDefinition": {
@@ -1666,26 +1672,26 @@
"Image": {
"target": "com.amazonaws.sagemaker#ContainerImage",
"traits": {
- "smithy.api#documentation": "The ECR path of the container. Refer to ContainerDefinition for more details.
",
+ "smithy.api#documentation": "The ECR path of the container. For more information, see .
",
"smithy.api#required": {}
}
},
"ModelDataUrl": {
"target": "com.amazonaws.sagemaker#Url",
"traits": {
- "smithy.api#documentation": "The location of the model artifacts. Refer to ContainerDefinition for more\n details.
",
+ "smithy.api#documentation": "The location of the model artifacts. For more information, see .
",
"smithy.api#required": {}
}
},
"Environment": {
"target": "com.amazonaws.sagemaker#EnvironmentMap",
"traits": {
- "smithy.api#documentation": "Environment variables to set in the container. Refer to ContainerDefinition for more\n details.
"
+ "smithy.api#documentation": "Environment variables to set in the container. For more information, see .
"
}
}
},
"traits": {
- "smithy.api#documentation": "A list of container definitions that describe the different containers that make up one\n AutoML candidate. Refer to ContainerDefinition for more details.
"
+ "smithy.api#documentation": "A list of container definitions that describe the different containers that make up an\n AutoML candidate. For more information, see .
"
}
},
"com.amazonaws.sagemaker#AutoMLContainerDefinitions": {
@@ -1784,7 +1790,7 @@
"MaxAutoMLJobRuntimeInSeconds": {
"target": "com.amazonaws.sagemaker#MaxAutoMLJobRuntimeInSeconds",
"traits": {
- "smithy.api#documentation": "The maximum time, in seconds, an AutoML job is allowed to wait for a trial to complete.\n It must be equal to or greater than MaxRuntimePerTrainingJobInSeconds.
"
+ "smithy.api#documentation": "The maximum time, in seconds, an AutoML job is allowed to wait for a trial to complete.\n It must be equal to or greater than MaxRuntimePerTrainingJobInSeconds
.
"
}
}
},
@@ -1798,7 +1804,7 @@
"CompletionCriteria": {
"target": "com.amazonaws.sagemaker#AutoMLJobCompletionCriteria",
"traits": {
- "smithy.api#documentation": "How long a job is allowed to run, or how many candidates a job is allowed to\n generate.
"
+ "smithy.api#documentation": "How long an AutoML job is allowed to run, or how many candidates a job is allowed to\n generate.
"
}
},
"SecurityConfig": {
@@ -1809,7 +1815,7 @@
}
},
"traits": {
- "smithy.api#documentation": "A collection of settings used for a job.
"
+ "smithy.api#documentation": "A collection of settings used for an AutoML job.
"
}
},
"com.amazonaws.sagemaker#AutoMLJobName": {
@@ -1828,7 +1834,7 @@
"MetricName": {
"target": "com.amazonaws.sagemaker#AutoMLMetricEnum",
"traits": {
- "smithy.api#documentation": "The name of the objective metric used to measure the predictive quality of a machine\n learning system. This metric is optimized during training to provide the best estimate for\n model parameter values from data.
\n Here are the options:
\n \n \n \n MSE
: The mean squared error (MSE) is\n the average of the squared differences between the predicted and actual values. It is\n used for regression. MSE values are always positive, the better a model is at\n predicting the actual values the smaller the MSE value. When the data contains\n outliers, they tend to dominate the MSE which might cause subpar prediction\n performance.
\n \n \n \n Accuracy
: The ratio of the number\n correctly classified items to the total number (correctly and incorrectly)\n classified. It is used for binary and multiclass classification. Measures how close\n the predicted class values are to the actual values. Accuracy values vary between\n zero and one, one being perfect accuracy and zero perfect inaccuracy.
\n \n \n \n F1
: The F1 score is the harmonic\n mean of the precision and recall. It is used for binary classification into classes\n traditionally referred to as positive and negative. Predictions are said to be true\n when they match their actual (correct) class; false when they do not. Precision is\n the ratio of the true positive predictions to all positive predictions (including the\n false positives) in a data set and measures the quality of the prediction when it\n predicts the positive class. Recall (or sensitivity) is the ratio of the true\n positive predictions to all actual positive instances and measures how completely a\n model predicts the actual class members in a data set. The standard F1 score weighs\n precision and recall equally. But which metric is paramount typically depends on\n specific aspects of a problem. F1 scores vary between zero and one, one being the\n best possible performance and zero the worst.
\n \n \n \n AUC
: The area under the curve (AUC)\n metric is used to compare and evaluate binary classification by algorithms such as\n logistic regression that return probabilities. A threshold is needed to map the\n probabilities into classifications. The relevant curve is the receiver operating\n characteristic curve that plots the true positive rate (TPR) of predictions (or\n recall) against the false positive rate (FPR) as a function of the threshold value,\n above which a prediction is considered positive. Increasing the threshold results in\n fewer false positives but more false negatives. AUC is the area under this receiver\n operating characteristic curve and so provides an aggregated measure of the model\n performance across all possible classification thresholds. The AUC score can also be\n interpreted as the probability that a randomly selected positive data point is more\n likely to be predicted positive than a randomly selected negative example. AUC scores\n vary between zero and one, one being perfect accuracy and one half not better than a\n random classifier. Values less that one half predict worse than a random predictor\n and such consistently bad predictors can be inverted to obtain better than random\n predictors.
\n \n \n \n F1macro
: The F1macro score applies\n F1 scoring to multiclass classification. In this context, you have multiple classes\n to predict. You just calculate the precision and recall for each class as you did for\n the positive class in binary classification. Then used these values to calculate the\n F1 score for each class and average them to obtain the F1macro score. F1macro scores\n vary between zero and one, one being the best possible performance and zero the\n worst.
\n \n \n If you do not specify a metric explicitly, the default behavior is to automatically\n use:
\n ",
+ "smithy.api#documentation": "The name of the objective metric used to measure the predictive quality of a machine\n learning system. This metric is optimized during training to provide the best estimate for\n model parameter values from data.
\n Here are the options:
\n \n \n \n MSE
: The mean squared error (MSE) is the average of the squared\n differences between the predicted and actual values. It is used for regression. MSE\n values are always positive, the better a model is at predicting the actual values the\n smaller the MSE value. When the data contains outliers, they tend to dominate the MSE\n which might cause subpar prediction performance.
\n \n \n \n Accuracy
: The ratio of the number correctly classified items to the\n total number (correctly and incorrectly) classified. It is used for binary and\n multiclass classification. Measures how close the predicted class values are to the\n actual values. Accuracy values vary between zero and one, one being perfect accuracy\n and zero perfect inaccuracy.
\n \n \n \n F1
: The F1 score is the harmonic mean of the precision and recall. It\n is used for binary classification into classes traditionally referred to as positive\n and negative. Predictions are said to be true when they match their actual (correct)\n class; false when they do not. Precision is the ratio of the true positive\n predictions to all positive predictions (including the false positives) in a data set\n and measures the quality of the prediction when it predicts the positive class.\n Recall (or sensitivity) is the ratio of the true positive predictions to all actual\n positive instances and measures how completely a model predicts the actual class\n members in a data set. The standard F1 score weighs precision and recall equally. But\n which metric is paramount typically depends on specific aspects of a problem. F1\n scores vary between zero and one, one being the best possible performance and zero\n the worst.
\n \n \n \n AUC
: The area under the curve (AUC) metric is used to compare and\n evaluate binary classification by algorithms such as logistic regression that return\n probabilities. A threshold is needed to map the probabilities into classifications.\n The relevant curve is the receiver operating characteristic curve that plots the true\n positive rate (TPR) of predictions (or recall) against the false positive rate (FPR)\n as a function of the threshold value, above which a prediction is considered\n positive. Increasing the threshold results in fewer false positives but more false\n negatives. AUC is the area under this receiver operating characteristic curve and so\n provides an aggregated measure of the model performance across all possible\n classification thresholds. The AUC score can also be interpreted as the probability\n that a randomly selected positive data point is more likely to be predicted positive\n than a randomly selected negative example. AUC scores vary between zero and one, one\n being perfect accuracy and one half not better than a random classifier. Values less\n that one half predict worse than a random predictor and such consistently bad\n predictors can be inverted to obtain better than random predictors.
\n \n \n \n F1macro
: The F1macro score applies F1 scoring to multiclass\n classification. In this context, you have multiple classes to predict. You just\n calculate the precision and recall for each class as you did for the positive class\n in binary classification. Then used these values to calculate the F1 score for each\n class and average them to obtain the F1macro score. F1macro scores vary between zero\n and one, one being the best possible performance and zero the worst.
\n \n \n If you do not specify a metric explicitly, the default behavior is to automatically\n use:
\n ",
"smithy.api#required": {}
}
}
@@ -1895,6 +1901,18 @@
{
"value": "CandidateDefinitionsGenerated",
"name": "CANDIDATE_DEFINITIONS_GENERATED"
+ },
+ {
+ "value": "GeneratingExplainabilityReport",
+ "name": "GENERATING_EXPLAINABILITY_REPORT"
+ },
+ {
+ "value": "Completed",
+ "name": "COMPLETED"
+ },
+ {
+ "value": "ExplainabilityError",
+ "name": "EXPLAINABILITY_ERROR"
}
]
}
@@ -1938,35 +1956,35 @@
"AutoMLJobName": {
"target": "com.amazonaws.sagemaker#AutoMLJobName",
"traits": {
- "smithy.api#documentation": "The name of the object you are requesting.
",
+ "smithy.api#documentation": "The name of the AutoML you are requesting.
",
"smithy.api#required": {}
}
},
"AutoMLJobArn": {
"target": "com.amazonaws.sagemaker#AutoMLJobArn",
"traits": {
- "smithy.api#documentation": "The ARN of the job.
",
+ "smithy.api#documentation": "The ARN of the AutoML job.
",
"smithy.api#required": {}
}
},
"AutoMLJobStatus": {
"target": "com.amazonaws.sagemaker#AutoMLJobStatus",
"traits": {
- "smithy.api#documentation": "The job's status.
",
+ "smithy.api#documentation": "The status of the AutoML job.
",
"smithy.api#required": {}
}
},
"AutoMLJobSecondaryStatus": {
"target": "com.amazonaws.sagemaker#AutoMLJobSecondaryStatus",
"traits": {
- "smithy.api#documentation": "The job's secondary status.
",
+ "smithy.api#documentation": "The secondary status of the AutoML job.
",
"smithy.api#required": {}
}
},
"CreationTime": {
"target": "com.amazonaws.sagemaker#Timestamp",
"traits": {
- "smithy.api#documentation": "When the job was created.
",
+ "smithy.api#documentation": "When the AutoML job was created.
",
"smithy.api#required": {}
}
},
@@ -1979,19 +1997,25 @@
"LastModifiedTime": {
"target": "com.amazonaws.sagemaker#Timestamp",
"traits": {
- "smithy.api#documentation": "When the job was last modified.
",
+ "smithy.api#documentation": "When the AutoML job was last modified.
",
"smithy.api#required": {}
}
},
"FailureReason": {
"target": "com.amazonaws.sagemaker#AutoMLFailureReason",
"traits": {
- "smithy.api#documentation": "The failure reason of a job.
"
+ "smithy.api#documentation": "The failure reason of an AutoML job.
"
+ }
+ },
+ "PartialFailureReasons": {
+ "target": "com.amazonaws.sagemaker#AutoMLPartialFailureReasons",
+ "traits": {
+ "smithy.api#documentation": "The list of reasons for partial failures within an AutoML job.
"
}
}
},
"traits": {
- "smithy.api#documentation": "Provides a summary about a job.
"
+ "smithy.api#documentation": "Provides a summary about an AutoML job.
"
}
},
"com.amazonaws.sagemaker#AutoMLMaxResults": {
@@ -2061,6 +2085,32 @@
"smithy.api#documentation": "The output data configuration.
"
}
},
+ "com.amazonaws.sagemaker#AutoMLPartialFailureReason": {
+ "type": "structure",
+ "members": {
+ "PartialFailureMessage": {
+ "target": "com.amazonaws.sagemaker#AutoMLFailureReason",
+ "traits": {
+ "smithy.api#documentation": "The message containing the reason for a partial failure of an AutoML job.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The reason for a partial failure of an AutoML job.
"
+ }
+ },
+ "com.amazonaws.sagemaker#AutoMLPartialFailureReasons": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.sagemaker#AutoMLPartialFailureReason"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 5
+ }
+ }
+ },
"com.amazonaws.sagemaker#AutoMLS3DataSource": {
"type": "structure",
"members": {
@@ -2303,6 +2353,21 @@
"smithy.api#documentation": "Details on the cache hit of a pipeline execution step.
"
}
},
+ "com.amazonaws.sagemaker#CandidateArtifactLocations": {
+ "type": "structure",
+ "members": {
+ "Explainability": {
+ "target": "com.amazonaws.sagemaker#ExplainabilityLocation",
+ "traits": {
+ "smithy.api#documentation": "The S3 prefix to the explainability artifacts generated for the AutoML candidate.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Location of artifacts for an AutoML candidate job.
"
+ }
+ },
"com.amazonaws.sagemaker#CandidateDefinitionNotebookLocation": {
"type": "string",
"traits": {
@@ -2320,6 +2385,20 @@
}
}
},
+ "com.amazonaws.sagemaker#CandidateProperties": {
+ "type": "structure",
+ "members": {
+ "CandidateArtifactLocations": {
+ "target": "com.amazonaws.sagemaker#CandidateArtifactLocations",
+ "traits": {
+ "smithy.api#documentation": "The S3 prefix to the artifacts generated for an AutoML candidate.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The properties of an AutoML candidate job.
"
+ }
+ },
"com.amazonaws.sagemaker#CandidateSortBy": {
"type": "string",
"traits": {
@@ -3787,7 +3866,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates a running App for the specified UserProfile. Supported Apps are JupyterServer\n \n and KernelGateway. This operation is automatically invoked by Amazon SageMaker Studio\n upon access to the associated Domain, and when new kernel configurations are selected by the user.\n \n A user may have multiple Apps active simultaneously.
"
+ "smithy.api#documentation": "Creates a running app for the specified UserProfile. Supported apps are\n JupyterServer
and KernelGateway
. This operation is automatically\n invoked by Amazon SageMaker Studio upon access to the associated Domain, and when new kernel\n configurations are selected by the user. A user may have multiple Apps active simultaneously.
"
}
},
"com.amazonaws.sagemaker#CreateAppImageConfig": {
@@ -3862,7 +3941,7 @@
"AppType": {
"target": "com.amazonaws.sagemaker#AppType",
"traits": {
- "smithy.api#documentation": "The type of app.
",
+ "smithy.api#documentation": "The type of app. Supported apps are JupyterServer
and\n KernelGateway
. TensorBoard
is not supported.
",
"smithy.api#required": {}
}
},
@@ -3983,7 +4062,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Creates an Autopilot job.
\n Find the best performing model after you run an Autopilot job by calling . Deploy that model by following the steps described in\n Step 6.1:\n Deploy the Model to Amazon SageMaker Hosting Services .
\n For information about how to use Autopilot, see Automate Model\n Development with Amazon SageMaker Autopilot .
"
+ "smithy.api#documentation": "Creates an Autopilot job.
\n Find the best performing model after you run an Autopilot job by calling .
\n For information about how to use Autopilot, see Automate Model\n Development with Amazon SageMaker Autopilot .
"
}
},
"com.amazonaws.sagemaker#CreateAutoMLJobRequest": {
@@ -3992,40 +4071,40 @@
"AutoMLJobName": {
"target": "com.amazonaws.sagemaker#AutoMLJobName",
"traits": {
- "smithy.api#documentation": "Identifies an Autopilot job. Must be unique to your account and is case-insensitive.
",
+ "smithy.api#documentation": "Identifies an Autopilot job. The name must be unique to your account and is\n case-insensitive.
",
"smithy.api#required": {}
}
},
"InputDataConfig": {
"target": "com.amazonaws.sagemaker#AutoMLInputDataConfig",
"traits": {
- "smithy.api#documentation": "Similar to InputDataConfig supported by Tuning. Format(s) supported: CSV. Minimum of 500\n rows.
",
+ "smithy.api#documentation": "An array of channel objects that describes the input data and its location. Each channel\n is a named input source. Similar to InputDataConfig
supported by . Format(s) supported: CSV. Minimum\n of 500 rows.
",
"smithy.api#required": {}
}
},
"OutputDataConfig": {
"target": "com.amazonaws.sagemaker#AutoMLOutputDataConfig",
"traits": {
- "smithy.api#documentation": "Similar to OutputDataConfig supported by Tuning. Format(s) supported: CSV.
",
+ "smithy.api#documentation": "Provides information about encryption and the Amazon S3 output path needed to store\n artifacts from an AutoML job. Format(s) supported: CSV.
",
"smithy.api#required": {}
}
},
"ProblemType": {
"target": "com.amazonaws.sagemaker#ProblemType",
"traits": {
- "smithy.api#documentation": "Defines the kind of preprocessing and algorithms intended for the candidates. Options\n include: BinaryClassification, MulticlassClassification, and Regression.
"
+ "smithy.api#documentation": "Defines the type of supervised learning available for the candidates. Options include:\n BinaryClassification, MulticlassClassification, and Regression. For more information, see\n \n Amazon SageMaker Autopilot problem types and algorithm support .
"
}
},
"AutoMLJobObjective": {
"target": "com.amazonaws.sagemaker#AutoMLJobObjective",
"traits": {
- "smithy.api#documentation": "Defines the objective of a an AutoML job. You provide a AutoMLJobObjective$MetricName and Autopilot infers whether to minimize or\n maximize it. If a metric is not specified, the most commonly used ObjectiveMetric for\n problem type is automaically selected.
"
+ "smithy.api#documentation": "Defines the objective metric used to measure the predictive quality of an AutoML job.\n You provide a AutoMLJobObjective$MetricName and Autopilot infers whether to\n minimize or maximize it.
"
}
},
"AutoMLJobConfig": {
"target": "com.amazonaws.sagemaker#AutoMLJobConfig",
"traits": {
- "smithy.api#documentation": "Contains CompletionCriteria and SecurityConfig.
"
+ "smithy.api#documentation": "Contains CompletionCriteria and SecurityConfig settings for the AutoML job.
"
}
},
"RoleArn": {
@@ -4038,7 +4117,7 @@
"GenerateCandidateDefinitionsOnly": {
"target": "com.amazonaws.sagemaker#GenerateCandidateDefinitionsOnly",
"traits": {
- "smithy.api#documentation": "Generates possible candidates without training a model. A candidate is a combination of\n data preprocessors, algorithms, and algorithm parameter settings.
"
+ "smithy.api#documentation": "Generates possible candidates without training the models. A candidate is a combination\n of data preprocessors, algorithms, and algorithm parameter settings.
"
}
},
"Tags": {
@@ -4055,7 +4134,7 @@
"AutoMLJobArn": {
"target": "com.amazonaws.sagemaker#AutoMLJobArn",
"traits": {
- "smithy.api#documentation": "When a job is created, it is assigned a unique ARN.
",
+ "smithy.api#documentation": "The unique ARN that is assigned to the AutoML job when it is created.
",
"smithy.api#required": {}
}
}
@@ -4452,7 +4531,7 @@
"DefaultUserSettings": {
"target": "com.amazonaws.sagemaker#UserSettings",
"traits": {
- "smithy.api#documentation": "The default user settings.
",
+ "smithy.api#documentation": "The default settings to use to create a user profile when UserSettings
isn't specified\n in the call to the CreateUserProfile
API.
\n \n SecurityGroups
is aggregated when specified in both calls. For all other\n settings in UserSettings
, the values specified in CreateUserProfile
\n take precedence over those specified in CreateDomain
.
",
"smithy.api#required": {}
}
},
@@ -4473,7 +4552,7 @@
"Tags": {
"target": "com.amazonaws.sagemaker#TagList",
"traits": {
- "smithy.api#documentation": "Tags to associated with the Domain. Each tag consists of a key and an optional value.\n Tag keys must be unique per resource. Tags are searchable using the\n Search API.
"
+ "smithy.api#documentation": "Tags to associated with the Domain. Each tag consists of a key and an optional value.\n Tag keys must be unique per resource. Tags are searchable using the\n Search
API.
"
}
},
"AppNetworkAccessType": {
@@ -6449,7 +6528,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Starts a model training job. After training completes, Amazon SageMaker saves the resulting\n model artifacts to an Amazon S3 location that you specify.
\n If you choose to host your model using Amazon SageMaker hosting services, you can use the\n resulting model artifacts as part of the model. You can also use the artifacts in a\n machine learning service other than Amazon SageMaker, provided that you know how to use them for\n inference.\n \n
\n In the request body, you provide the following:
\n \n \n \n AlgorithmSpecification
- Identifies the training algorithm to\n use.\n
\n \n \n \n HyperParameters
- Specify these algorithm-specific parameters to\n enable the estimation of model parameters during training. Hyperparameters can\n be tuned to optimize this learning process. For a list of hyperparameters for\n each training algorithm provided by Amazon SageMaker, see Algorithms .
\n \n \n \n InputDataConfig
- Describes the training dataset and the Amazon S3,\n EFS, or FSx location where it is stored.
\n \n \n \n OutputDataConfig
- Identifies the Amazon S3 bucket where you want\n Amazon SageMaker to save the results of model training.
\n
\n \n \n \n ResourceConfig
- Identifies the resources, ML compute\n instances, and ML storage volumes to deploy for model training. In distributed\n training, you specify more than one instance.
\n \n \n \n \n EnableManagedSpotTraining
- Optimize the cost of training machine\n learning models by up to 80% by using Amazon EC2 Spot instances. For more\n information, see Managed Spot\n Training .
\n \n \n \n RoleArn
- The Amazon Resource Name (ARN) that Amazon SageMaker assumes to perform tasks on\n your behalf during model training.\n \n You must grant this role the necessary permissions so that Amazon SageMaker can successfully\n complete model training.
\n \n \n \n StoppingCondition
- To help cap training costs, use\n MaxRuntimeInSeconds
to set a time limit for training. Use\n MaxWaitTimeInSeconds
to specify how long you are willing to\n wait for a managed spot training job to complete.
\n \n \n For more information about Amazon SageMaker, see How It Works .
"
+ "smithy.api#documentation": "Starts a model training job. After training completes, Amazon SageMaker saves the resulting\n model artifacts to an Amazon S3 location that you specify.
\n If you choose to host your model using Amazon SageMaker hosting services, you can use the\n resulting model artifacts as part of the model. You can also use the artifacts in a\n machine learning service other than Amazon SageMaker, provided that you know how to use them for\n inference.\n \n
\n In the request body, you provide the following:
\n \n \n \n AlgorithmSpecification
- Identifies the training algorithm to\n use.\n
\n \n \n \n HyperParameters
- Specify these algorithm-specific parameters to\n enable the estimation of model parameters during training. Hyperparameters can\n be tuned to optimize this learning process. For a list of hyperparameters for\n each training algorithm provided by Amazon SageMaker, see Algorithms .
\n \n \n \n InputDataConfig
- Describes the training dataset and the Amazon S3,\n EFS, or FSx location where it is stored.
\n \n \n \n OutputDataConfig
- Identifies the Amazon S3 bucket where you want\n Amazon SageMaker to save the results of model training.
\n
\n \n \n \n ResourceConfig
- Identifies the resources, ML compute\n instances, and ML storage volumes to deploy for model training. In distributed\n training, you specify more than one instance.
\n \n \n \n \n EnableManagedSpotTraining
- Optimize the cost of training machine\n learning models by up to 80% by using Amazon EC2 Spot instances. For more\n information, see Managed Spot\n Training .
\n \n \n \n RoleArn
- The Amazon Resource Name (ARN) that Amazon SageMaker assumes to perform tasks on\n your behalf during model training.\n \n You must grant this role the necessary permissions so that Amazon SageMaker can successfully\n complete model training.
\n \n \n \n StoppingCondition
- To help cap training costs, use\n MaxRuntimeInSeconds
to set a time limit for training. Use\n MaxWaitTimeInSeconds
to specify how long you are willing to\n wait for a managed spot training job to complete.
\n \n \n \n Environment
- The environment variables to set in the Docker container.
\n \n \n For more information about Amazon SageMaker, see How It Works .
"
}
},
"com.amazonaws.sagemaker#CreateTrainingJobRequest": {
@@ -6568,6 +6647,12 @@
"traits": {
"smithy.api#documentation": "Configuration information for Debugger rules for profiling system and framework\n metrics.
"
}
+ },
+ "Environment": {
+ "target": "com.amazonaws.sagemaker#TrainingEnvironmentMap",
+ "traits": {
+ "smithy.api#documentation": "The environment variables to set in the Docker container.
"
+ }
}
}
},
@@ -9341,7 +9426,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Returns information about an Amazon SageMaker job.
"
+ "smithy.api#documentation": "Returns information about an Amazon SageMaker AutoML job.
"
}
},
"com.amazonaws.sagemaker#DescribeAutoMLJobRequest": {
@@ -9350,7 +9435,7 @@
"AutoMLJobName": {
"target": "com.amazonaws.sagemaker#AutoMLJobName",
"traits": {
- "smithy.api#documentation": "Request information about a job using that job's unique name.
",
+ "smithy.api#documentation": "Requests information about an AutoML job using its unique name.
",
"smithy.api#required": {}
}
}
@@ -9362,21 +9447,21 @@
"AutoMLJobName": {
"target": "com.amazonaws.sagemaker#AutoMLJobName",
"traits": {
- "smithy.api#documentation": "Returns the name of a job.
",
+ "smithy.api#documentation": "Returns the name of the AutoML job.
",
"smithy.api#required": {}
}
},
"AutoMLJobArn": {
"target": "com.amazonaws.sagemaker#AutoMLJobArn",
"traits": {
- "smithy.api#documentation": "Returns the job's ARN.
",
+ "smithy.api#documentation": "Returns the ARN of the AutoML job.
",
"smithy.api#required": {}
}
},
"InputDataConfig": {
"target": "com.amazonaws.sagemaker#AutoMLInputDataConfig",
"traits": {
- "smithy.api#documentation": "Returns the job's input data config.
",
+ "smithy.api#documentation": "Returns the input data configuration for the AutoML job..
",
"smithy.api#required": {}
}
},
@@ -9409,20 +9494,20 @@
"AutoMLJobConfig": {
"target": "com.amazonaws.sagemaker#AutoMLJobConfig",
"traits": {
- "smithy.api#documentation": "Returns the job's config.
"
+ "smithy.api#documentation": "Returns the configuration for the AutoML job.
"
}
},
"CreationTime": {
"target": "com.amazonaws.sagemaker#Timestamp",
"traits": {
- "smithy.api#documentation": "Returns the job's creation time.
",
+ "smithy.api#documentation": "Returns the creation time of the AutoML job.
",
"smithy.api#required": {}
}
},
"EndTime": {
"target": "com.amazonaws.sagemaker#Timestamp",
"traits": {
- "smithy.api#documentation": "Returns the job's end time.
"
+ "smithy.api#documentation": "Returns the end time of the AutoML job.
"
}
},
"LastModifiedTime": {
@@ -9438,6 +9523,12 @@
"smithy.api#documentation": "Returns the job's FailureReason.
"
}
},
+ "PartialFailureReasons": {
+ "target": "com.amazonaws.sagemaker#AutoMLPartialFailureReasons",
+ "traits": {
+ "smithy.api#documentation": "Returns a list of reasons for partial failures within an AutoML job.
"
+ }
+ },
"BestCandidate": {
"target": "com.amazonaws.sagemaker#AutoMLCandidate",
"traits": {
@@ -9447,14 +9538,14 @@
"AutoMLJobStatus": {
"target": "com.amazonaws.sagemaker#AutoMLJobStatus",
"traits": {
- "smithy.api#documentation": "Returns the job's AutoMLJobStatus.
",
+ "smithy.api#documentation": "Returns the status of the AutoML job's AutoMLJobStatus.
",
"smithy.api#required": {}
}
},
"AutoMLJobSecondaryStatus": {
"target": "com.amazonaws.sagemaker#AutoMLJobSecondaryStatus",
"traits": {
- "smithy.api#documentation": "Returns the job's AutoMLJobSecondaryStatus.
",
+ "smithy.api#documentation": "Returns the secondary status of the AutoML job.
",
"smithy.api#required": {}
}
},
@@ -9473,7 +9564,7 @@
"ResolvedAttributes": {
"target": "com.amazonaws.sagemaker#ResolvedAttributes",
"traits": {
- "smithy.api#documentation": "This contains ProblemType, AutoMLJobObjective and CompletionCriteria. They're\n auto-inferred values, if not provided by you. If you do provide them, then they'll be the\n same as provided.
"
+ "smithy.api#documentation": "This contains ProblemType, AutoMLJobObjective and CompletionCriteria. If you do not\n provide these values, they are auto-inferred. If you do provide them, they are the values\n you provide.
"
}
}
}
@@ -10153,7 +10244,7 @@
"DefaultUserSettings": {
"target": "com.amazonaws.sagemaker#UserSettings",
"traits": {
- "smithy.api#documentation": "Settings which are applied to all UserProfiles in this domain, if settings are not explicitly specified\n in a given UserProfile.\n
"
+ "smithy.api#documentation": "Settings which are applied to UserProfiles in this domain if settings are not explicitly specified\n in a given UserProfile.\n
"
}
},
"AppNetworkAccessType": {
@@ -13068,6 +13159,12 @@
"traits": {
"smithy.api#documentation": "Profiling status of a training job.
"
}
+ },
+ "Environment": {
+ "target": "com.amazonaws.sagemaker#TrainingEnvironmentMap",
+ "traits": {
+ "smithy.api#documentation": "The environment variables to set in the Docker container.
"
+ }
}
}
},
@@ -15160,6 +15257,14 @@
"smithy.api#documentation": "Contains explainability metrics for a model.
"
}
},
+ "com.amazonaws.sagemaker#ExplainabilityLocation": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1
+ }
+ }
+ },
"com.amazonaws.sagemaker#FailureReason": {
"type": "string",
"traits": {
@@ -17211,6 +17316,12 @@
"smithy.api#documentation": "Set this to one of the following values:
\n ",
"smithy.api#required": {}
}
+ },
+ "RepositoryAuthConfig": {
+ "target": "com.amazonaws.sagemaker#RepositoryAuthConfig",
+ "traits": {
+ "smithy.api#documentation": "(Optional) Specifies an authentication configuration for the private docker registry\n where your model image is hosted. Specify a value for this property only if you specified Vpc
as the value for the\n RepositoryAccessMode
field, and the private Docker registry where the model\n image is hosted requires authentication.
"
+ }
}
},
"traits": {
@@ -18262,7 +18373,7 @@
"SnsDataSource": {
"target": "com.amazonaws.sagemaker#LabelingJobSnsDataSource",
"traits": {
- "smithy.api#documentation": "An Amazon SNS data source used for streaming labeling jobs.
"
+ "smithy.api#documentation": "An Amazon SNS data source used for streaming labeling jobs. To learn more, see Send Data to a Streaming Labeling Job .
"
}
}
},
@@ -18388,13 +18499,13 @@
"KmsKeyId": {
"target": "com.amazonaws.sagemaker#KmsKeyId",
"traits": {
- "smithy.api#documentation": "The AWS Key Management Service ID of the key used to encrypt the output data, if any.
\n If you use a KMS key ID or an alias of your master key, the Amazon SageMaker execution role must\n include permissions to call kms:Encrypt
. If you don't provide a KMS key ID,\n Amazon SageMaker uses the default KMS key for Amazon S3 for your role's account. Amazon SageMaker uses server-side\n encryption with KMS-managed keys for LabelingJobOutputConfig
. If you use a\n bucket policy with an s3:PutObject
permission that only allows objects with\n server-side encryption, set the condition key of\n s3:x-amz-server-side-encryption
to \"aws:kms\"
. For more\n information, see KMS-Managed Encryption Keys in the Amazon Simple Storage Service Developer\n Guide. \n
\n The KMS key policy must grant permission to the IAM role that you specify in your\n CreateLabelingJob
request. For more information, see Using\n Key Policies in AWS KMS in the AWS Key Management Service Developer\n Guide .
"
+ "smithy.api#documentation": "The AWS Key Management Service ID of the key used to encrypt the output data, if any.
\n If you provide your own KMS key ID, you must add the required permissions to your KMS\n key described in Encrypt Output Data and Storage Volume with AWS KMS .
\n If you don't provide a KMS key ID, Amazon SageMaker uses the default AWS KMS key for Amazon S3 for your\n role's account to encrypt your output data.
\n If you use a bucket policy with an s3:PutObject
permission that only\n allows objects with server-side encryption, set the condition key of\n s3:x-amz-server-side-encryption
to \"aws:kms\"
. For more\n information, see KMS-Managed Encryption Keys in the Amazon Simple Storage Service Developer\n Guide. \n
"
}
},
"SnsTopicArn": {
"target": "com.amazonaws.sagemaker#SnsTopicArn",
"traits": {
- "smithy.api#documentation": "An Amazon Simple Notification Service (Amazon SNS) output topic ARN.
\n When workers complete labeling tasks, Ground Truth will send \n labeling task output data to the SNS output topic you specify here.
\n You must provide a value for this parameter\n if you provide an Amazon SNS input topic in SnsDataSource
\n in InputConfig
.
"
+ "smithy.api#documentation": "An Amazon Simple Notification Service (Amazon SNS) output topic ARN.
\n If you provide an SnsTopicArn
in OutputConfig
, when workers\n complete labeling tasks, Ground Truth will send labeling task output data to the SNS output\n topic you specify here.
\n To learn more, see Receive Output Data from a Streaming Labeling\n Job .
"
}
}
},
@@ -18408,12 +18519,12 @@
"VolumeKmsKeyId": {
"target": "com.amazonaws.sagemaker#KmsKeyId",
"traits": {
- "smithy.api#documentation": "The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt data on the storage volume\n attached to the ML compute instance(s) that run the training job. The\n VolumeKmsKeyId
can be any of the following formats:
\n \n \n // KMS Key ID
\n \n \"1234abcd-12ab-34cd-56ef-1234567890ab\"
\n
\n \n \n // Amazon Resource Name (ARN) of a KMS Key
\n \n \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"
\n
\n \n "
+ "smithy.api#documentation": "The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt data on the storage volume\n attached to the ML compute instance(s) that run the training and inference jobs used for\n automated data labeling.
\n You can only specify a VolumeKmsKeyId
when you create a labeling job with\n automated data labeling enabled using the API operation CreateLabelingJob
.\n You cannot specify an AWS KMS customer managed CMK to encrypt the storage volume used for\n automated data labeling model training and inference when you create a labeling job\n using the console. To learn more, see Output Data and Storage Volume\n Encryption .
\n The VolumeKmsKeyId
can be any of the following formats:
\n \n \n KMS Key ID
\n \n \"1234abcd-12ab-34cd-56ef-1234567890ab\"
\n
\n \n \n Amazon Resource Name (ARN) of a KMS Key
\n \n \"arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab\"
\n
\n \n "
}
}
},
"traits": {
- "smithy.api#documentation": "Provides configuration information for labeling jobs.
"
+ "smithy.api#documentation": "Configure encryption on the storage volume attached to the ML compute instance used to\n run automated data labeling model training and inference.
"
}
},
"com.amazonaws.sagemaker#LabelingJobS3DataSource": {
@@ -18437,7 +18548,7 @@
"SnsTopicArn": {
"target": "com.amazonaws.sagemaker#SnsTopicArn",
"traits": {
- "smithy.api#documentation": "The Amazon SNS input topic Amazon Resource Name (ARN). Specify the ARN of the input topic\n you will use to send new data objects to a streaming labeling job.
\n If you specify an input topic for SnsTopicArn
in InputConfig
,\n you must specify a value for SnsTopicArn
in OutputConfig
.
",
+ "smithy.api#documentation": "The Amazon SNS input topic Amazon Resource Name (ARN). Specify the ARN of the input topic\n you will use to send new data objects to a streaming labeling job.
",
"smithy.api#required": {}
}
}
@@ -19278,7 +19389,7 @@
}
],
"traits": {
- "smithy.api#documentation": "List the Candidates created for the job.
",
+ "smithy.api#documentation": "List the candidates created for the job.
",
"smithy.api#paginated": {
"inputToken": "NextToken",
"outputToken": "NextToken",
@@ -19292,39 +19403,39 @@
"AutoMLJobName": {
"target": "com.amazonaws.sagemaker#AutoMLJobName",
"traits": {
- "smithy.api#documentation": "List the Candidates created for the job by providing the job's name.
",
+ "smithy.api#documentation": "List the candidates created for the job by providing the job's name.
",
"smithy.api#required": {}
}
},
"StatusEquals": {
"target": "com.amazonaws.sagemaker#CandidateStatus",
"traits": {
- "smithy.api#documentation": "List the Candidates for the job and filter by status.
"
+ "smithy.api#documentation": "List the candidates for the job and filter by status.
"
}
},
"CandidateNameEquals": {
"target": "com.amazonaws.sagemaker#CandidateName",
"traits": {
- "smithy.api#documentation": "List the Candidates for the job and filter by candidate name.
"
+ "smithy.api#documentation": "List the candidates for the job and filter by candidate name.
"
}
},
"SortOrder": {
"target": "com.amazonaws.sagemaker#AutoMLSortOrder",
"traits": {
- "smithy.api#documentation": "The sort order for the results. The default is Ascending.
"
+ "smithy.api#documentation": "The sort order for the results. The default is Ascending
.
"
}
},
"SortBy": {
"target": "com.amazonaws.sagemaker#CandidateSortBy",
"traits": {
- "smithy.api#documentation": "The parameter by which to sort the results. The default is Descending.
"
+ "smithy.api#documentation": "The parameter by which to sort the results. The default is\n Descending
.
"
}
},
"MaxResults": {
"target": "com.amazonaws.sagemaker#AutoMLMaxResults",
"traits": {
"smithy.api#box": {},
- "smithy.api#documentation": "List the job's Candidates up to a specified limit.
"
+ "smithy.api#documentation": "List the job's candidates up to a specified limit.
"
}
},
"NextToken": {
@@ -26554,7 +26665,7 @@
"CompilerOptions": {
"target": "com.amazonaws.sagemaker#CompilerOptions",
"traits": {
- "smithy.api#documentation": "Specifies additional parameters for compiler options in JSON format. The compiler\n options are TargetPlatform
specific. It is required for NVIDIA accelerators\n and highly recommended for CPU compilations. For any other cases, it is optional to\n specify CompilerOptions.
\n
\n \n \n \n CPU
: Compilation for CPU supports the following compiler\n options.
\n \n \n \n mcpu
: CPU micro-architecture. For example, {'mcpu':\n 'skylake-avx512'}
\n
\n \n \n \n mattr
: CPU flags. For example, {'mattr': ['+neon',\n '+vfpv4']}
\n
\n \n \n \n \n \n ARM
: Details of ARM CPU compilations.
\n \n \n \n NEON
: NEON is an implementation of the Advanced SIMD\n extension used in ARMv7 processors.
\n For example, add {'mattr': ['+neon']}
to the compiler\n options if compiling for ARM 32-bit platform with the NEON\n support.
\n \n \n \n \n \n NVIDIA
: Compilation for NVIDIA GPU supports the following\n compiler options.
\n \n \n \n gpu_code
: Specifies the targeted architecture.
\n \n \n \n trt-ver
: Specifies the TensorRT versions in x.y.z.\n format.
\n \n \n \n cuda-ver
: Specifies the CUDA version in x.y\n format.
\n \n \n For example, {'gpu-code': 'sm_72', 'trt-ver': '6.0.1', 'cuda-ver':\n '10.1'}
\n
\n \n \n \n ANDROID
: Compilation for the Android OS supports the following\n compiler options:
\n \n \n \n ANDROID_PLATFORM
: Specifies the Android API levels.\n Available levels range from 21 to 29. For example,\n {'ANDROID_PLATFORM': 28}
.
\n \n \n \n mattr
: Add {'mattr': ['+neon']}
to compiler\n options if compiling for ARM 32-bit platform with NEON support.
\n \n \n \n \n \n INFERENTIA
: Compilation for target ml_inf1 uses compiler options\n passed in as a JSON string. For example,\n \"CompilerOptions\": \"\\\"--verbose 1 --num-neuroncores 2 -O2\\\"\"
.\n
\n For information about supported compiler options, see\n \n Neuron Compiler CLI .\n
\n \n \n \n CoreML
: Compilation for the CoreML OutputConfig$TargetDevice \n supports the following compiler options:
\n \n \n \n \n EIA
: Compilation for the Elastic Inference Accelerator supports the following \n compiler options:
\n \n \n \n precision_mode
: Specifies the precision of compiled artifacts. Supported values\n are \"FP16\"
and \"FP32\"
. Default is\n \"FP32\"
.
\n \n \n \n signature_def_key
: Specifies the signature to use for models in SavedModel\n format. Defaults is TensorFlow's default signature def key.
\n \n \n \n output_names
: Specifies a list of output tensor names for \n models in FrozenGraph format. Set at most one API field, either: signature_def_key
or output_names
.
\n \n \n For example: \n {\"precision_mode\": \"FP32\", \"output_names\": [\"output:0\"]}
\n
\n \n "
+ "smithy.api#documentation": "Specifies additional parameters for compiler options in JSON format. The compiler\n options are TargetPlatform
specific. It is required for NVIDIA accelerators\n and highly recommended for CPU compilations. For any other cases, it is optional to\n specify CompilerOptions.
\n
\n \n \n \n DTYPE
: Specifies the data type for the input. When compiling for\n ml_*
(except for ml_inf
) instances using PyTorch\n framework, provide the data type (dtype) of the model's input.\n \"float32\"
is used if \"DTYPE\"
is not specified.\n Options for data type are:
\n \n For example, {\"dtype\" : \"float32\"}
.
\n \n \n \n CPU
: Compilation for CPU supports the following compiler\n options.
\n \n \n \n mcpu
: CPU micro-architecture. For example, {'mcpu':\n 'skylake-avx512'}
\n
\n \n \n \n mattr
: CPU flags. For example, {'mattr': ['+neon',\n '+vfpv4']}
\n
\n \n \n \n \n \n ARM
: Details of ARM CPU compilations.
\n \n \n \n NEON
: NEON is an implementation of the Advanced SIMD\n extension used in ARMv7 processors.
\n For example, add {'mattr': ['+neon']}
to the compiler\n options if compiling for ARM 32-bit platform with the NEON\n support.
\n \n \n \n \n \n NVIDIA
: Compilation for NVIDIA GPU supports the following\n compiler options.
\n \n \n \n gpu_code
: Specifies the targeted architecture.
\n \n \n \n trt-ver
: Specifies the TensorRT versions in x.y.z.\n format.
\n \n \n \n cuda-ver
: Specifies the CUDA version in x.y\n format.
\n \n \n For example, {'gpu-code': 'sm_72', 'trt-ver': '6.0.1', 'cuda-ver':\n '10.1'}
\n
\n \n \n \n ANDROID
: Compilation for the Android OS supports the following\n compiler options:
\n \n \n \n ANDROID_PLATFORM
: Specifies the Android API levels.\n Available levels range from 21 to 29. For example,\n {'ANDROID_PLATFORM': 28}
.
\n \n \n \n mattr
: Add {'mattr': ['+neon']}
to compiler\n options if compiling for ARM 32-bit platform with NEON support.
\n \n \n \n \n \n INFERENTIA
: Compilation for target ml_inf1 uses compiler options\n passed in as a JSON string. For example,\n \"CompilerOptions\": \"\\\"--verbose 1 --num-neuroncores 2 -O2\\\"\"
.\n
\n For information about supported compiler options, see\n \n Neuron Compiler CLI .\n
\n \n \n \n CoreML
: Compilation for the CoreML OutputConfig$TargetDevice \n supports the following compiler options:
\n \n \n \n \n EIA
: Compilation for the Elastic Inference Accelerator supports the following \n compiler options:
\n \n \n \n precision_mode
: Specifies the precision of compiled artifacts. Supported values\n are \"FP16\"
and \"FP32\"
. Default is\n \"FP32\"
.
\n \n \n \n signature_def_key
: Specifies the signature to use for models in SavedModel\n format. Defaults is TensorFlow's default signature def key.
\n \n \n \n output_names
: Specifies a list of output tensor names for \n models in FrozenGraph format. Set at most one API field, either: signature_def_key
or output_names
.
\n \n \n For example: \n {\"precision_mode\": \"FP32\", \"output_names\": [\"output:0\"]}
\n
\n \n "
}
},
"KmsKeyId": {
@@ -29463,6 +29574,31 @@
]
}
},
+ "com.amazonaws.sagemaker#RepositoryAuthConfig": {
+ "type": "structure",
+ "members": {
+ "RepositoryCredentialsProviderArn": {
+ "target": "com.amazonaws.sagemaker#RepositoryCredentialsProviderArn",
+ "traits": {
+ "smithy.api#documentation": "The Amazon Resource Name (ARN) of an AWS Lambda function that provides credentials to\n authenticate to the private Docker registry where your model image is hosted. For\n information about how to create an AWS Lambda function, see Create a Lambda function with the console in the\n AWS Lambda Developer Guide .
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Specifies an authentication configuration for the private docker registry\n where your model image is hosted. Specify a value for this property only if you specified Vpc
as the value for the\n RepositoryAccessMode
field of the ImageConfig
object that you\n passed to a call to CreateModel and the private Docker registry where the model\n image is hosted requires authentication.
"
+ }
+ },
+ "com.amazonaws.sagemaker#RepositoryCredentialsProviderArn": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 2048
+ },
+ "smithy.api#pattern": ".*"
+ }
+ },
"com.amazonaws.sagemaker#ResolvedAttributes": {
"type": "structure",
"members": {
@@ -31135,7 +31271,7 @@
}
},
"traits": {
- "smithy.api#documentation": "Specifies options when sharing an Amazon SageMaker Studio notebook. These settings are specified\n as part of DefaultUserSettings
when the CreateDomain API is\n called, and as part of UserSettings
when the CreateUserProfile \n API is called.
"
+ "smithy.api#documentation": "Specifies options for sharing SageMaker Studio notebooks. These settings are\n specified as part of DefaultUserSettings
when the CreateDomain
\n API is called, and as part of UserSettings
when the CreateUserProfile
\n API is called. When SharingSettings
is not specified, notebook sharing\n isn't allowed.
"
}
},
"com.amazonaws.sagemaker#ShuffleConfig": {
@@ -32616,6 +32752,41 @@
]
}
},
+ "com.amazonaws.sagemaker#TrainingEnvironmentKey": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 512
+ },
+ "smithy.api#pattern": "[a-zA-Z_][a-zA-Z0-9_]*"
+ }
+ },
+ "com.amazonaws.sagemaker#TrainingEnvironmentMap": {
+ "type": "map",
+ "key": {
+ "target": "com.amazonaws.sagemaker#TrainingEnvironmentKey"
+ },
+ "value": {
+ "target": "com.amazonaws.sagemaker#TrainingEnvironmentValue"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 48
+ }
+ }
+ },
+ "com.amazonaws.sagemaker#TrainingEnvironmentValue": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 512
+ },
+ "smithy.api#pattern": "[\\S\\s]*"
+ }
+ },
"com.amazonaws.sagemaker#TrainingInputMode": {
"type": "string",
"traits": {
@@ -33003,6 +33174,12 @@
"smithy.api#documentation": "Information about the evaluation status of the rules for the training job.
"
}
},
+ "Environment": {
+ "target": "com.amazonaws.sagemaker#TrainingEnvironmentMap",
+ "traits": {
+ "smithy.api#documentation": "The environment variables to set in the Docker container.
"
+ }
+ },
"Tags": {
"target": "com.amazonaws.sagemaker#TagList",
"traits": {
@@ -36236,7 +36413,7 @@
"SharingSettings": {
"target": "com.amazonaws.sagemaker#SharingSettings",
"traits": {
- "smithy.api#documentation": "The sharing settings.
"
+ "smithy.api#documentation": "Specifies options for sharing SageMaker Studio notebooks.
"
}
},
"JupyterServerAppSettings": {
@@ -36259,7 +36436,7 @@
}
},
"traits": {
- "smithy.api#documentation": "A collection of settings that apply to users of Amazon SageMaker Studio. These settings are\n specified when the CreateUserProfile API is called, and as\n DefaultUserSettings
when the CreateDomain API is called.
\n \n SecurityGroups
is aggregated when specified in both calls. For all other\n settings in UserSettings
, the values specified in CreateUserProfile
\n take precedence over those specified in CreateDomain
.
"
+ "smithy.api#documentation": "A collection of settings that apply to users of Amazon SageMaker Studio. These settings are\n specified when the CreateUserProfile
API is called, and as DefaultUserSettings
\n when the CreateDomain
API is called.
\n \n SecurityGroups
is aggregated when specified in both calls. For all other\n settings in UserSettings
, the values specified in CreateUserProfile
\n take precedence over those specified in CreateDomain
.
"
}
},
"com.amazonaws.sagemaker#VariantName": {
diff --git a/codegen/sdk-codegen/aws-models/sqs.2012-11-05.json b/codegen/sdk-codegen/aws-models/sqs.2012-11-05.json
index 0239dff2474..c9969ecf4a9 100644
--- a/codegen/sdk-codegen/aws-models/sqs.2012-11-05.json
+++ b/codegen/sdk-codegen/aws-models/sqs.2012-11-05.json
@@ -172,7 +172,7 @@
"name": "sqs"
},
"aws.protocols#awsQuery": {},
- "smithy.api#documentation": "Welcome to the Amazon Simple Queue Service API Reference .
\n Amazon Simple Queue Service (Amazon SQS) is a reliable, highly-scalable hosted queue for storing messages as they travel between applications or microservices. Amazon SQS moves data between distributed application components and helps you decouple these components.
\n For information on the permissions you need to use this API, see\n Identity and\n access management in the Amazon Simple Queue Service Developer Guide. \n
\n You can use AWS SDKs to access Amazon SQS using your favorite programming language. The SDKs perform tasks such as the following automatically:
\n \n \n \n Additional Information \n
\n ",
+ "smithy.api#documentation": "Welcome to the Amazon Simple Queue Service API Reference .
\n Amazon Simple Queue Service (Amazon SQS) is a reliable, highly-scalable hosted queue for storing messages as they travel between applications or microservices. Amazon SQS moves data between distributed application components and helps you decouple these components.
\n For information on the permissions you need to use this API, see\n Identity and\n access management in the Amazon Simple Queue Service Developer Guide. \n
\n You can use AWS SDKs to access Amazon SQS using your favorite programming language. The SDKs perform tasks such as the following automatically:
\n \n \n \n Additional information \n
\n ",
"smithy.api#title": "Amazon Simple Queue Service",
"smithy.api#xmlNamespace": {
"uri": "http://queue.amazonaws.com/doc/2012-11-05/"
@@ -1776,7 +1776,7 @@
"MD5OfMessageBody": {
"target": "com.amazonaws.sqs#String",
"traits": {
- "smithy.api#documentation": "An MD5 digest of the non-URL-encoded message attribute string. You can use this attribute to verify that Amazon SQS received the message correctly. Amazon SQS URL-decodes the message before creating the MD5 digest. For information about MD5, see RFC1321 .
",
+ "smithy.api#documentation": "An MD5 digest of the non-URL-encoded message body string. You can use this attribute to verify that Amazon SQS received the message correctly. Amazon SQS URL-decodes the message before creating the MD5 digest. For information about MD5, see RFC1321 .
",
"smithy.api#required": {}
}
},
@@ -1871,7 +1871,7 @@
"MD5OfMessageBody": {
"target": "com.amazonaws.sqs#String",
"traits": {
- "smithy.api#documentation": "An MD5 digest of the non-URL-encoded message attribute string. You can use this attribute to verify that Amazon SQS received the message correctly. Amazon SQS URL-decodes the message before creating the MD5 digest. For information about MD5, see RFC1321 .
"
+ "smithy.api#documentation": "An MD5 digest of the non-URL-encoded message body string. You can use this attribute to verify that Amazon SQS received the message correctly. Amazon SQS URL-decodes the message before creating the MD5 digest. For information about MD5, see RFC1321 .
"
}
},
"MD5OfMessageAttributes": {
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 d30d730c334..be872b00e20 100644
--- a/codegen/sdk-codegen/aws-models/ssm.2014-11-06.json
+++ b/codegen/sdk-codegen/aws-models/ssm.2014-11-06.json
@@ -237,7 +237,7 @@
"ResourceId": {
"target": "com.amazonaws.ssm#ResourceId",
"traits": {
- "smithy.api#documentation": "The resource ID you want to tag.
\n Use the ID of the resource. Here are some examples:
\n ManagedInstance: mi-012345abcde
\n MaintenanceWindow: mw-012345abcde
\n PatchBaseline: pb-012345abcde
\n OpsMetadata object: ResourceID
for tagging is created from the Amazon Resource\n Name (ARN) for the object. Specifically, ResourceID
is created from the strings that\n come after the word opsmetadata
in the ARN. For example, an OpsMetadata object\n with an ARN of arn:aws:ssm:us-east-2:1234567890:opsmetadata/aws/ssm/MyGroup/appmanager
has a\n ResourceID
of either aws/ssm/MyGroup/appmanager
or\n /aws/ssm/MyGroup/appmanager
.
\n For the Document and Parameter values, use the name of the resource.
\n \n \n The ManagedInstance type for this API action is only for on-premises managed instances. You\n must specify the name of the managed instance in the following format: mi-ID_number. For\n example, mi-1a2b3c4d5e6f.
\n ",
+ "smithy.api#documentation": "The resource ID you want to tag.
\n Use the ID of the resource. Here are some examples:
\n ManagedInstance: mi-012345abcde
\n MaintenanceWindow: mw-012345abcde
\n PatchBaseline: pb-012345abcde
\n OpsMetadata object: ResourceID
for tagging is created from the Amazon Resource\n Name (ARN) for the object. Specifically, ResourceID
is created from the strings that\n come after the word opsmetadata
in the ARN. For example, an OpsMetadata object with\n an ARN of arn:aws:ssm:us-east-2:1234567890:opsmetadata/aws/ssm/MyGroup/appmanager
\n has a ResourceID
of either aws/ssm/MyGroup/appmanager
or\n /aws/ssm/MyGroup/appmanager
.
\n For the Document and Parameter values, use the name of the resource.
\n\n \n The ManagedInstance type for this API action is only for on-premises managed instances. You\n must specify the name of the managed instance in the following format: mi-ID_number. For\n example, mi-1a2b3c4d5e6f.
\n ",
"smithy.api#required": {}
}
},
@@ -2561,7 +2561,7 @@
"traits": {
"smithy.api#length": {
"min": 0,
- "max": 10
+ "max": 50
}
}
},
@@ -3991,7 +3991,7 @@
"ExpirationDate": {
"target": "com.amazonaws.ssm#ExpirationDate",
"traits": {
- "smithy.api#documentation": "The date by which this activation request should expire. The default value is 24\n hours.
"
+ "smithy.api#documentation": "The date by which this activation request should expire, in timestamp format, such as\n \"2021-07-07T00:00:00\". You can specify a date up to 30 days in advance. If you don't provide an\n expiration date, the activation code expires in 24 hours.
"
}
},
"Tags": {
@@ -20371,7 +20371,7 @@
"ResourceId": {
"target": "com.amazonaws.ssm#ResourceId",
"traits": {
- "smithy.api#documentation": "The ID of the resource from which you want to remove tags. For example:
\n ManagedInstance: mi-012345abcde
\n MaintenanceWindow: mw-012345abcde
\n PatchBaseline: pb-012345abcde
\n OpsMetadata object: ResourceID
for tagging is created from the Amazon Resource\n Name (ARN) for the object. Specifically, ResourceID
is created from the strings that\n come after the word opsmetadata
in the ARN. For example, an OpsMetadata object\n with an ARN of arn:aws:ssm:us-east-2:1234567890:opsmetadata/aws/ssm/MyGroup/appmanager
has a\n ResourceID
of either aws/ssm/MyGroup/appmanager
or\n /aws/ssm/MyGroup/appmanager
.
\n For the Document and Parameter values, use the name of the resource.
\n \n The ManagedInstance type for this API action is only for on-premises managed instances.\n Specify the name of the managed instance in the following format: mi-ID_number. For example,\n mi-1a2b3c4d5e6f.
\n ",
+ "smithy.api#documentation": "The ID of the resource from which you want to remove tags. For example:
\n ManagedInstance: mi-012345abcde
\n MaintenanceWindow: mw-012345abcde
\n PatchBaseline: pb-012345abcde
\n OpsMetadata object: ResourceID
for tagging is created from the Amazon Resource\n Name (ARN) for the object. Specifically, ResourceID
is created from the strings that\n come after the word opsmetadata
in the ARN. For example, an OpsMetadata object with\n an ARN of arn:aws:ssm:us-east-2:1234567890:opsmetadata/aws/ssm/MyGroup/appmanager
\n has a ResourceID
of either aws/ssm/MyGroup/appmanager
or\n /aws/ssm/MyGroup/appmanager
.
\n For the Document and Parameter values, use the name of the resource.
\n \n The ManagedInstance type for this API action is only for on-premises managed instances.\n Specify the name of the managed instance in the following format: mi-ID_number. For example,\n mi-1a2b3c4d5e6f.
\n ",
"smithy.api#required": {}
}
},
@@ -20624,6 +20624,9 @@
}
}
},
+ "com.amazonaws.ssm#ResourceDataSyncEnableAllOpsDataSources": {
+ "type": "boolean"
+ },
"com.amazonaws.ssm#ResourceDataSyncIncludeFutureRegions": {
"type": "boolean"
},
@@ -20901,6 +20904,12 @@
"traits": {
"smithy.api#documentation": "Whether to automatically synchronize and aggregate data from new AWS Regions when those\n Regions come online.
"
}
+ },
+ "EnableAllOpsDataSources": {
+ "target": "com.amazonaws.ssm#ResourceDataSyncEnableAllOpsDataSources",
+ "traits": {
+ "smithy.api#documentation": "When you create a resource data sync, if you choose one of the AWS Organizations options, then Systems Manager\n automatically enables all OpsData sources in the selected AWS Regions for all AWS accounts in\n your organization (or in the selected organization units). For more information, see About multiple account and Region resource data syncs in the\n AWS Systems Manager User Guide .
"
+ }
}
},
"traits": {
@@ -20963,6 +20972,12 @@
"traits": {
"smithy.api#documentation": "The data type name for including resource data sync state. There are four sync\n states:
\n\n \n OrganizationNotExists
: Your organization doesn't exist.
\n \n NoPermissions
: The system can't locate the service-linked role. This role is\n automatically created when a user creates a resource data sync in Explorer.
\n \n InvalidOrganizationalUnit
: You specified or selected an invalid unit in the\n resource data sync configuration.
\n \n TrustedAccessDisabled
: You disabled Systems Manager access in the organization in\n AWS Organizations.
"
}
+ },
+ "EnableAllOpsDataSources": {
+ "target": "com.amazonaws.ssm#ResourceDataSyncEnableAllOpsDataSources",
+ "traits": {
+ "smithy.api#documentation": "When you create a resource data sync, if you choose one of the AWS Organizations options, then Systems Manager\n automatically enables all OpsData sources in the selected AWS Regions for all AWS accounts in\n your organization (or in the selected organization units). For more information, see About multiple account and Region resource data syncs in the\n AWS Systems Manager User Guide .
"
+ }
}
},
"traits": {
@@ -22883,7 +22898,7 @@
"Values": {
"target": "com.amazonaws.ssm#TargetValues",
"traits": {
- "smithy.api#documentation": "User-defined criteria that maps to Key
. For example, if you specified\n tag:ServerRole
, you could specify value:WebServer
to run a command on\n instances that include EC2 tags of ServerRole,WebServer
.
"
+ "smithy.api#documentation": "User-defined criteria that maps to Key
. For example, if you specified\n tag:ServerRole
, you could specify value:WebServer
to run a command on\n instances that include EC2 tags of ServerRole,WebServer
.
\n Depending on the type of Target
, the maximum number of values for a\n Key
might be lower than the global maximum of 50.
"
}
}
},
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 14bc14db0dc..c63a5af8a69 100644
--- a/codegen/sdk-codegen/aws-models/transcribe.2017-10-26.json
+++ b/codegen/sdk-codegen/aws-models/transcribe.2017-10-26.json
@@ -70,6 +70,22 @@
{
"value": "en-US",
"name": "EN_US"
+ },
+ {
+ "value": "hi-IN",
+ "name": "HI_IN"
+ },
+ {
+ "value": "es-US",
+ "name": "ES_US"
+ },
+ {
+ "value": "en-GB",
+ "name": "EN_GB"
+ },
+ {
+ "value": "en-AU",
+ "name": "EN_AU"
}
]
}
@@ -2483,7 +2499,7 @@
"VocabularyFilterMethod": {
"target": "com.amazonaws.transcribe#VocabularyFilterMethod",
"traits": {
- "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.
"
+ "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\n 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\n your vocabulary filter are not masked or removed.
"
}
}
},
@@ -3443,6 +3459,10 @@
{
"value": "mask",
"name": "MASK"
+ },
+ {
+ "value": "tag",
+ "name": "TAG"
}
]
}
diff --git a/codegen/sdk-codegen/aws-models/wafv2.2019-07-29.json b/codegen/sdk-codegen/aws-models/wafv2.2019-07-29.json
index 37298e5b690..6e57c1fca25 100644
--- a/codegen/sdk-codegen/aws-models/wafv2.2019-07-29.json
+++ b/codegen/sdk-codegen/aws-models/wafv2.2019-07-29.json
@@ -180,21 +180,28 @@
"type": "structure",
"members": {},
"traits": {
- "smithy.api#documentation": "Inspect all of the elements that AWS WAF has parsed and extracted from the web request JSON body that are within the JsonBody \n MatchScope
. This is used with the FieldToMatch option JsonBody
.
\n This is used only to indicate the web request component for AWS WAF to inspect, in the FieldToMatch specification.
"
+ "smithy.api#documentation": "Inspect all of the elements that AWS WAF has parsed and extracted from the web request JSON body that are within the JsonBody \n MatchScope
. This is used with the FieldToMatch option JsonBody
.
\n This is used only to indicate the web request component for AWS WAF to inspect, in the FieldToMatch specification.
"
}
},
"com.amazonaws.wafv2#AllQueryArguments": {
"type": "structure",
"members": {},
"traits": {
- "smithy.api#documentation": "All query arguments of a web request.
\n This is used only to indicate the web request component for AWS WAF to inspect, in the FieldToMatch specification.
"
+ "smithy.api#documentation": "All query arguments of a web request.
\n This is used only to indicate the web request component for AWS WAF to inspect, in the FieldToMatch specification.
"
}
},
"com.amazonaws.wafv2#AllowAction": {
"type": "structure",
- "members": {},
+ "members": {
+ "CustomRequestHandling": {
+ "target": "com.amazonaws.wafv2#CustomRequestHandling",
+ "traits": {
+ "smithy.api#documentation": "Defines custom handling for the web request.
\n For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the \n AWS WAF Developer Guide .
"
+ }
+ }
+ },
"traits": {
- "smithy.api#documentation": "Specifies that AWS WAF should allow requests.
\n This is used only in the context of other settings, for example to specify values for RuleAction and web ACL DefaultAction .
"
+ "smithy.api#documentation": "Specifies that AWS WAF should allow the request and optionally defines additional custom handling for the request.
\n This is used in the context of other settings, for example to specify values for RuleAction and web ACL DefaultAction .
"
}
},
"com.amazonaws.wafv2#AndStatement": {
@@ -266,16 +273,23 @@
},
"com.amazonaws.wafv2#BlockAction": {
"type": "structure",
- "members": {},
+ "members": {
+ "CustomResponse": {
+ "target": "com.amazonaws.wafv2#CustomResponse",
+ "traits": {
+ "smithy.api#documentation": "Defines a custom response for the web request.
\n For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the \n AWS WAF Developer Guide .
"
+ }
+ }
+ },
"traits": {
- "smithy.api#documentation": "Specifies that AWS WAF should block requests.
\n This is used only in the context of other settings, for example to specify values for RuleAction and web ACL DefaultAction .
"
+ "smithy.api#documentation": "Specifies that AWS WAF should block the request and optionally defines additional custom handling for the response to the web request.
\n This is used in the context of other settings, for example to specify values for RuleAction and web ACL DefaultAction .
"
}
},
"com.amazonaws.wafv2#Body": {
"type": "structure",
"members": {},
"traits": {
- "smithy.api#documentation": "The body of a web request. This immediately follows the request headers.
\n This is used only to indicate the web request component for AWS WAF to inspect, in the FieldToMatch specification.
"
+ "smithy.api#documentation": "The body of a web request. This immediately follows the request headers.
\n This is used only to indicate the web request component for AWS WAF to inspect, in the FieldToMatch specification.
"
}
},
"com.amazonaws.wafv2#BodyParsingFallbackBehavior": {
@@ -450,9 +464,16 @@
},
"com.amazonaws.wafv2#CountAction": {
"type": "structure",
- "members": {},
+ "members": {
+ "CustomRequestHandling": {
+ "target": "com.amazonaws.wafv2#CustomRequestHandling",
+ "traits": {
+ "smithy.api#documentation": "Defines custom handling for the web request.
\n For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the \n AWS WAF Developer Guide .
"
+ }
+ }
+ },
"traits": {
- "smithy.api#documentation": "Specifies that AWS WAF should count requests.
\n This is used only in the context of other settings, for example to specify values for RuleAction and web ACL DefaultAction .
"
+ "smithy.api#documentation": "Specifies that AWS WAF should count the request. Optionally defines additional custom handling for the request.
\n This is used in the context of other settings, for example to specify values for RuleAction and web ACL DefaultAction .
"
}
},
"com.amazonaws.wafv2#Country": {
@@ -1748,6 +1769,12 @@
"traits": {
"smithy.api#documentation": "An array of key:value pairs to associate with the resource.
"
}
+ },
+ "CustomResponseBodies": {
+ "target": "com.amazonaws.wafv2#CustomResponseBodies",
+ "traits": {
+ "smithy.api#documentation": "A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the rule group, and then use them in the rules that you define in the rule group.
\n For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the \n AWS WAF Developer Guide .
\n For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the \n AWS WAF Developer Guide .
"
+ }
}
}
},
@@ -1860,6 +1887,12 @@
"traits": {
"smithy.api#documentation": "An array of key:value pairs to associate with the resource.
"
}
+ },
+ "CustomResponseBodies": {
+ "target": "com.amazonaws.wafv2#CustomResponseBodies",
+ "traits": {
+ "smithy.api#documentation": "A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the web ACL, and then use them in the rules and default actions that you define in the web ACL.
\n For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the \n AWS WAF Developer Guide .
\n For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the \n AWS WAF Developer Guide .
"
+ }
}
}
},
@@ -1874,6 +1907,137 @@
}
}
},
+ "com.amazonaws.wafv2#CustomHTTPHeader": {
+ "type": "structure",
+ "members": {
+ "Name": {
+ "target": "com.amazonaws.wafv2#CustomHTTPHeaderName",
+ "traits": {
+ "smithy.api#documentation": "The name of the custom header.
\n For custom request header insertion, when AWS WAF inserts the header into the request, it prefixes this name x-amzn-waf-
, to avoid confusion with the headers that are already in the request. For example, for the header name sample
, AWS WAF inserts the header x-amzn-waf-sample
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Value": {
+ "target": "com.amazonaws.wafv2#CustomHTTPHeaderValue",
+ "traits": {
+ "smithy.api#documentation": "The value of the custom header.
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "A custom header for custom request and response handling. This is used in CustomResponse and CustomRequestHandling .
"
+ }
+ },
+ "com.amazonaws.wafv2#CustomHTTPHeaderName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 64
+ },
+ "smithy.api#pattern": "^[a-zA-Z0-9._$-]+$"
+ }
+ },
+ "com.amazonaws.wafv2#CustomHTTPHeaderValue": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 255
+ },
+ "smithy.api#pattern": ".*"
+ }
+ },
+ "com.amazonaws.wafv2#CustomHTTPHeaders": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.wafv2#CustomHTTPHeader"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1
+ }
+ }
+ },
+ "com.amazonaws.wafv2#CustomRequestHandling": {
+ "type": "structure",
+ "members": {
+ "InsertHeaders": {
+ "target": "com.amazonaws.wafv2#CustomHTTPHeaders",
+ "traits": {
+ "smithy.api#documentation": "The HTTP headers to insert into the request. Duplicate header names are not allowed.
\n For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the \n AWS WAF Developer Guide .
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Custom request handling behavior that inserts custom headers into a web request. You can add custom request handling for the rule actions allow and count.
\n For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the \n AWS WAF Developer Guide .
"
+ }
+ },
+ "com.amazonaws.wafv2#CustomResponse": {
+ "type": "structure",
+ "members": {
+ "ResponseCode": {
+ "target": "com.amazonaws.wafv2#ResponseStatusCode",
+ "traits": {
+ "smithy.api#documentation": "The HTTP status code to return to the client.
\n For a list of status codes that you can use in your custom reqponses, see Supported status codes for custom response in the \n AWS WAF Developer Guide .
",
+ "smithy.api#required": {}
+ }
+ },
+ "CustomResponseBodyKey": {
+ "target": "com.amazonaws.wafv2#EntityName",
+ "traits": {
+ "smithy.api#documentation": "References the response body that you want AWS WAF to return to the web request client. You can define a custom response for a rule action or a default web ACL action that is set to block. To do this, you first \n define the response body key and value in the CustomResponseBodies
setting for the WebACL or RuleGroup where you want to use it. Then, in the rule action or web ACL default action BlockAction
setting, you reference\n the response body using this key.
"
+ }
+ },
+ "ResponseHeaders": {
+ "target": "com.amazonaws.wafv2#CustomHTTPHeaders",
+ "traits": {
+ "smithy.api#documentation": "The HTTP headers to use in the response. Duplicate header names are not allowed.
\n For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the \n AWS WAF Developer Guide .
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "A custom response to send to the client. You can define a custom response for rule actions and default web ACL actions that are set to BlockAction .
\n For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the \n AWS WAF Developer Guide .
"
+ }
+ },
+ "com.amazonaws.wafv2#CustomResponseBodies": {
+ "type": "map",
+ "key": {
+ "target": "com.amazonaws.wafv2#EntityName"
+ },
+ "value": {
+ "target": "com.amazonaws.wafv2#CustomResponseBody"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1
+ }
+ }
+ },
+ "com.amazonaws.wafv2#CustomResponseBody": {
+ "type": "structure",
+ "members": {
+ "ContentType": {
+ "target": "com.amazonaws.wafv2#ResponseContentType",
+ "traits": {
+ "smithy.api#documentation": "The type of content in the payload that you are defining in the Content
string.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Content": {
+ "target": "com.amazonaws.wafv2#ResponseContent",
+ "traits": {
+ "smithy.api#documentation": "The payload of the custom response.
\n You can use JSON escape strings in JSON content. To do this, you must specify JSON content in the ContentType
setting.
\n For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the \n AWS WAF Developer Guide .
",
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The response body to use in a custom response to a web request. This is referenced by key from CustomResponse \n CustomResponseBodyKey
.
"
+ }
+ },
"com.amazonaws.wafv2#DefaultAction": {
"type": "structure",
"members": {
@@ -1891,7 +2055,7 @@
}
},
"traits": {
- "smithy.api#documentation": "In a WebACL , this is the action that you want AWS WAF \n to perform when a web request doesn't match any of the rules in the WebACL
. The default action must be a terminating action, so count is not allowed.
"
+ "smithy.api#documentation": "In a WebACL , this is the action that you want AWS WAF \n to perform when a web request doesn't match any of the rules in the WebACL
. The default action must be a terminating action, so you can't use count.
"
}
},
"com.amazonaws.wafv2#DeleteFirewallManagerRuleGroups": {
@@ -2535,7 +2699,7 @@
"SingleQueryArgument": {
"target": "com.amazonaws.wafv2#SingleQueryArgument",
"traits": {
- "smithy.api#documentation": "Inspect a single query argument. Provide the name of the query argument to inspect, such as UserName or SalesRegion . The name can be up to 30 characters long and isn't case sensitive.
\n This is used only to indicate the web request component for AWS WAF to inspect, in the FieldToMatch specification.
\n Example JSON: \"SingleQueryArgument\": { \"Name\": \"myArgument\" }
\n
"
+ "smithy.api#documentation": "Inspect a single query argument. Provide the name of the query argument to inspect, such as UserName or SalesRegion . The name can be up to 30 characters long and isn't case sensitive.
\n This is used only to indicate the web request component for AWS WAF to inspect, in the FieldToMatch specification.
\n Example JSON: \"SingleQueryArgument\": { \"Name\": \"myArgument\" }
\n
"
}
},
"AllQueryArguments": {
@@ -3585,7 +3749,7 @@
"InvalidFallbackBehavior": {
"target": "com.amazonaws.wafv2#BodyParsingFallbackBehavior",
"traits": {
- "smithy.api#documentation": "What AWS WAF should do if it fails to completely parse the JSON body. The options are the following:
\n \n \n \t\t \n EVALUATE_AS_STRING
- Inspect the body as\n \t\t\tplain text. AWS WAF applies the text transformations and\n \t\t\tinspection criteria that you defined for the JSON inspection to\n \t\t\tthe body text string.
\n \t \n \n \t\t \n MATCH
- Treat the web request as matching\n \t\t\tthe rule statement. AWS WAF applies the rule action to the\n \t\t\trequest.
\n \t \n \n \t\t \n NO_MATCH
- Treat the web request as not\n \t\t\tmatching the rule statement.
\n \t \n \n If you don't provide this setting, AWS WAF parses and evaluates the content only up to the first parsing failure that it encounters.
\n AWS WAF does its best to parse the entire JSON body, but might be forced\n \tto stop for reasons such as invalid characters, duplicate keys,\n \ttruncation, and any content whose root node isn't an object or an array.
\n AWS WAF parses the JSON in the following examples as two valid key,\n \tvalue pairs:
\n \n \n \t\t Missing comma:\n \t\t\t{\"key1\":\"value1\"\"key2\":\"value2\"}
\n
\n \t \n \n \t\t Missing colon:\n \t\t\t{\"key1\":\"value1\",\"key2\"\"value2\"}
\n
\n \t \n \n \t\t Extra colons:\n \t\t\t{\"key1\"::\"value1\",\"key2\"\"value2\"}
\n
\n \t \n "
+ "smithy.api#documentation": "The inspection behavior to fall back to if the JSON in the request body is invalid. For AWS WAF, invalid JSON is any content\n that isn't complete syntactical JSON, content whose root node isn't an object or an array, and duplicate keys in the content.
\n You can specify the following fallback behaviors:
\n \n \n \n MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.
\n \n \n \n NO_MATCH
- Treat the web request as not matching the rule statement.
\n \n \n \n EVALUATE_AS_STRING
- Inspect the body as plain text. This option applies the text transformations and inspection criteria that you defined for the JSON inspection to the body text string.
\n \n \n If you don't provide this setting, when AWS WAF encounters invalid JSON, it parses and inspects what it can, up to the first\n invalid JSON that it encounters.
"
}
}
},
@@ -4299,7 +4463,7 @@
"type": "structure",
"members": {},
"traits": {
- "smithy.api#documentation": "The HTTP method of a web request. The method indicates the type of operation that the request is asking the origin to perform.
\n This is used only to indicate the web request component for AWS WAF to inspect, in the FieldToMatch specification.
"
+ "smithy.api#documentation": "The HTTP method of a web request. The method indicates the type of operation that the request is asking the origin to perform.
\n This is used only to indicate the web request component for AWS WAF to inspect, in the FieldToMatch specification.
"
}
},
"com.amazonaws.wafv2#MetricName": {
@@ -4326,7 +4490,7 @@
"type": "structure",
"members": {},
"traits": {
- "smithy.api#documentation": "Specifies that AWS WAF should do nothing. This is generally used to try out a rule without performing any actions. You set the OverrideAction
on the Rule .
\n This is used only in the context of other settings, for example to specify values for RuleAction and web ACL DefaultAction .
"
+ "smithy.api#documentation": "Specifies that AWS WAF should do nothing. This is generally used to try out a rule without performing any actions. You set the OverrideAction
on the Rule .
\n This is used in the context of other settings, for example to specify values for RuleAction and web ACL DefaultAction .
"
}
},
"com.amazonaws.wafv2#NotStatement": {
@@ -4565,6 +4729,22 @@
"value": "HEADER_NAME",
"name": "HEADER_NAME"
},
+ {
+ "value": "CUSTOM_REQUEST_HANDLING",
+ "name": "CUSTOM_REQUEST_HANDLING"
+ },
+ {
+ "value": "RESPONSE_CONTENT_TYPE",
+ "name": "RESPONSE_CONTENT_TYPE"
+ },
+ {
+ "value": "CUSTOM_RESPONSE",
+ "name": "CUSTOM_RESPONSE"
+ },
+ {
+ "value": "CUSTOM_RESPONSE_BODY",
+ "name": "CUSTOM_RESPONSE_BODY"
+ },
{
"value": "JSON_MATCH_PATTERN",
"name": "JSON_MATCH_PATTERN"
@@ -4739,7 +4919,7 @@
"type": "structure",
"members": {},
"traits": {
- "smithy.api#documentation": "The query string of a web request. This is the part of a URL that appears after a ?
character, if any.
\n This is used only to indicate the web request component for AWS WAF to inspect, in the FieldToMatch specification.
"
+ "smithy.api#documentation": "The query string of a web request. This is the part of a URL that appears after a ?
character, if any.
\n This is used only to indicate the web request component for AWS WAF to inspect, in the FieldToMatch specification.
"
}
},
"com.amazonaws.wafv2#RateBasedStatement": {
@@ -5005,6 +5185,45 @@
]
}
},
+ "com.amazonaws.wafv2#ResponseContent": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 10240
+ },
+ "smithy.api#pattern": ".*"
+ }
+ },
+ "com.amazonaws.wafv2#ResponseContentType": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "TEXT_PLAIN",
+ "name": "TEXT_PLAIN"
+ },
+ {
+ "value": "TEXT_HTML",
+ "name": "TEXT_HTML"
+ },
+ {
+ "value": "APPLICATION_JSON",
+ "name": "APPLICATION_JSON"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.wafv2#ResponseStatusCode": {
+ "type": "integer",
+ "traits": {
+ "smithy.api#box": {},
+ "smithy.api#range": {
+ "min": 200,
+ "max": 600
+ }
+ }
+ },
"com.amazonaws.wafv2#Rule": {
"type": "structure",
"members": {
@@ -5128,6 +5347,12 @@
"smithy.api#documentation": "Defines and enables Amazon CloudWatch metrics and web request sample collection.
",
"smithy.api#required": {}
}
+ },
+ "CustomResponseBodies": {
+ "target": "com.amazonaws.wafv2#CustomResponseBodies",
+ "traits": {
+ "smithy.api#documentation": "A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the rule group, and then use them in the rules that you define in the rule group.
\n For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the \n AWS WAF Developer Guide .
\n For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the \n AWS WAF Developer Guide .
"
+ }
}
},
"traits": {
@@ -5278,6 +5503,18 @@
"traits": {
"smithy.api#documentation": "The name of the Rule
that the request matched. For managed rule groups, the format for this name is ##
. For your own rule\n groups, the format for this name is #
. If the rule is not in a rule group, this field is absent.
"
}
+ },
+ "RequestHeadersInserted": {
+ "target": "com.amazonaws.wafv2#HTTPHeaders",
+ "traits": {
+ "smithy.api#documentation": "Custom request headers inserted by AWS WAF into the request, according to the custom request configuration for the matching rule action.
"
+ }
+ },
+ "ResponseCodeSent": {
+ "target": "com.amazonaws.wafv2#ResponseStatusCode",
+ "traits": {
+ "smithy.api#documentation": "The response code that was sent for the request.
"
+ }
}
},
"traits": {
@@ -5320,7 +5557,7 @@
}
},
"traits": {
- "smithy.api#documentation": "One of the headers in a web request, identified by name, for example, User-Agent
or Referer
. This setting isn't case sensitive.
\n This is used only to indicate the web request component for AWS WAF to inspect, in the FieldToMatch specification.
"
+ "smithy.api#documentation": "One of the headers in a web request, identified by name, for example, User-Agent
or Referer
. This setting isn't case sensitive.
\n This is used only to indicate the web request component for AWS WAF to inspect, in the FieldToMatch specification.
"
}
},
"com.amazonaws.wafv2#SingleQueryArgument": {
@@ -5826,7 +6063,7 @@
}
],
"traits": {
- "smithy.api#documentation": "Updates the specified IPSet .
\n \n This operation completely replaces any IP address specifications that you already have in the IP set with the ones that you provide to this call. If you want to add to or modify the addresses that are already in the IP set, retrieve those by calling GetIPSet , update them, and provide the complete updated array of IP addresses to this call.
\n "
+ "smithy.api#documentation": "Updates the specified IPSet .
"
}
},
"com.amazonaws.wafv2#UpdateIPSetRequest": {
@@ -6068,6 +6305,12 @@
"smithy.api#documentation": "A token used for optimistic locking. AWS WAF returns a token to your get and list requests, to mark the state of the entity at the time of the request. To make changes to the entity associated with the token, you provide the token to operations like update and delete. AWS WAF uses the token to ensure that no changes have been made to the entity since you last retrieved it. If a change has been made, the update fails with a WAFOptimisticLockException
. If this happens, perform another get, and use the new token returned by that operation.
",
"smithy.api#required": {}
}
+ },
+ "CustomResponseBodies": {
+ "target": "com.amazonaws.wafv2#CustomResponseBodies",
+ "traits": {
+ "smithy.api#documentation": "A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the rule group, and then use them in the rules that you define in the rule group.
\n For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the \n AWS WAF Developer Guide .
\n For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the \n AWS WAF Developer Guide .
"
+ }
}
}
},
@@ -6182,6 +6425,12 @@
"smithy.api#documentation": "A token used for optimistic locking. AWS WAF returns a token to your get and list requests, to mark the state of the entity at the time of the request. To make changes to the entity associated with the token, you provide the token to operations like update and delete. AWS WAF uses the token to ensure that no changes have been made to the entity since you last retrieved it. If a change has been made, the update fails with a WAFOptimisticLockException
. If this happens, perform another get, and use the new token returned by that operation.
",
"smithy.api#required": {}
}
+ },
+ "CustomResponseBodies": {
+ "target": "com.amazonaws.wafv2#CustomResponseBodies",
+ "traits": {
+ "smithy.api#documentation": "A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the web ACL, and then use them in the rules and default actions that you define in the web ACL.
\n For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the \n AWS WAF Developer Guide .
\n For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the \n AWS WAF Developer Guide .
"
+ }
}
}
},
@@ -6504,6 +6753,12 @@
"traits": {
"smithy.api#documentation": "Indicates whether this web ACL is managed by AWS Firewall Manager. If true, then only AWS Firewall Manager can delete the web ACL or any Firewall Manager rule groups in the web ACL.
"
}
+ },
+ "CustomResponseBodies": {
+ "target": "com.amazonaws.wafv2#CustomResponseBodies",
+ "traits": {
+ "smithy.api#documentation": "A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the web ACL, and then use them in the rules and default actions that you define in the web ACL.
\n For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the \n AWS WAF Developer Guide .
\n For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the \n AWS WAF Developer Guide .
"
+ }
}
},
"traits": {
diff --git a/codegen/sdk-codegen/aws-models/workmail.2017-10-01.json b/codegen/sdk-codegen/aws-models/workmail.2017-10-01.json
index 7610e83b506..a9a03acfdb3 100644
--- a/codegen/sdk-codegen/aws-models/workmail.2017-10-01.json
+++ b/codegen/sdk-codegen/aws-models/workmail.2017-10-01.json
@@ -556,6 +556,130 @@
}
}
},
+ "com.amazonaws.workmail#CreateMobileDeviceAccessRule": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.workmail#CreateMobileDeviceAccessRuleRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.workmail#CreateMobileDeviceAccessRuleResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.workmail#InvalidParameterException"
+ },
+ {
+ "target": "com.amazonaws.workmail#LimitExceededException"
+ },
+ {
+ "target": "com.amazonaws.workmail#OrganizationNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.workmail#OrganizationStateException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Creates a new mobile device access rule for the specified Amazon WorkMail organization.
"
+ }
+ },
+ "com.amazonaws.workmail#CreateMobileDeviceAccessRuleRequest": {
+ "type": "structure",
+ "members": {
+ "OrganizationId": {
+ "target": "com.amazonaws.workmail#OrganizationId",
+ "traits": {
+ "smithy.api#documentation": "The Amazon WorkMail organization under which the rule will be created.
",
+ "smithy.api#required": {}
+ }
+ },
+ "ClientToken": {
+ "target": "com.amazonaws.workmail#IdempotencyClientToken",
+ "traits": {
+ "smithy.api#documentation": "The idempotency token for the client request.
",
+ "smithy.api#idempotencyToken": {}
+ }
+ },
+ "Name": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleName",
+ "traits": {
+ "smithy.api#documentation": "The rule name.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleDescription",
+ "traits": {
+ "smithy.api#documentation": "The rule description.
"
+ }
+ },
+ "Effect": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleEffect",
+ "traits": {
+ "smithy.api#documentation": "The effect of the rule when it matches. Allowed values are ALLOW
or DENY
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DeviceTypes": {
+ "target": "com.amazonaws.workmail#DeviceTypeList",
+ "traits": {
+ "smithy.api#documentation": "Device types that the rule will match.
"
+ }
+ },
+ "NotDeviceTypes": {
+ "target": "com.amazonaws.workmail#DeviceTypeList",
+ "traits": {
+ "smithy.api#documentation": "Device types that the rule will not match. All other device types will match.
"
+ }
+ },
+ "DeviceModels": {
+ "target": "com.amazonaws.workmail#DeviceModelList",
+ "traits": {
+ "smithy.api#documentation": "Device models that the rule will match.
"
+ }
+ },
+ "NotDeviceModels": {
+ "target": "com.amazonaws.workmail#DeviceModelList",
+ "traits": {
+ "smithy.api#documentation": "Device models that the rule will not match. All other device models will match.
"
+ }
+ },
+ "DeviceOperatingSystems": {
+ "target": "com.amazonaws.workmail#DeviceOperatingSystemList",
+ "traits": {
+ "smithy.api#documentation": "Device operating systems that the rule will match.
"
+ }
+ },
+ "NotDeviceOperatingSystems": {
+ "target": "com.amazonaws.workmail#DeviceOperatingSystemList",
+ "traits": {
+ "smithy.api#documentation": "Device operating systems that the rule will not match. All other device operating systems will match.
"
+ }
+ },
+ "DeviceUserAgents": {
+ "target": "com.amazonaws.workmail#DeviceUserAgentList",
+ "traits": {
+ "smithy.api#documentation": "Device user agents that the rule will match.
"
+ }
+ },
+ "NotDeviceUserAgents": {
+ "target": "com.amazonaws.workmail#DeviceUserAgentList",
+ "traits": {
+ "smithy.api#documentation": "Device user agents that the rule will not match. All other device user agents will match.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.workmail#CreateMobileDeviceAccessRuleResponse": {
+ "type": "structure",
+ "members": {
+ "MobileDeviceAccessRuleId": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleId",
+ "traits": {
+ "smithy.api#documentation": "The identifier for the newly created mobile device access rule.
"
+ }
+ }
+ }
+ },
"com.amazonaws.workmail#CreateOrganization": {
"type": "operation",
"input": {
@@ -1043,6 +1167,52 @@
"type": "structure",
"members": {}
},
+ "com.amazonaws.workmail#DeleteMobileDeviceAccessRule": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.workmail#DeleteMobileDeviceAccessRuleRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.workmail#DeleteMobileDeviceAccessRuleResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.workmail#InvalidParameterException"
+ },
+ {
+ "target": "com.amazonaws.workmail#OrganizationNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.workmail#OrganizationStateException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Deletes a mobile device access rule for the specified Amazon WorkMail organization.
"
+ }
+ },
+ "com.amazonaws.workmail#DeleteMobileDeviceAccessRuleRequest": {
+ "type": "structure",
+ "members": {
+ "OrganizationId": {
+ "target": "com.amazonaws.workmail#OrganizationId",
+ "traits": {
+ "smithy.api#documentation": "The Amazon WorkMail organization under which the rule will be deleted.
",
+ "smithy.api#required": {}
+ }
+ },
+ "MobileDeviceAccessRuleId": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleId",
+ "traits": {
+ "smithy.api#documentation": "The identifier of the rule to be deleted.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.workmail#DeleteMobileDeviceAccessRuleResponse": {
+ "type": "structure",
+ "members": {}
+ },
"com.amazonaws.workmail#DeleteOrganization": {
"type": "operation",
"input": {
@@ -1829,6 +1999,94 @@
"smithy.api#pattern": "[\\S\\s]*"
}
},
+ "com.amazonaws.workmail#DeviceModel": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 256
+ },
+ "smithy.api#pattern": "[\\u0020-\\u00FF]+"
+ }
+ },
+ "com.amazonaws.workmail#DeviceModelList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.workmail#DeviceModel"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 10
+ }
+ }
+ },
+ "com.amazonaws.workmail#DeviceOperatingSystem": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 256
+ },
+ "smithy.api#pattern": "[\\u0020-\\u00FF]+"
+ }
+ },
+ "com.amazonaws.workmail#DeviceOperatingSystemList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.workmail#DeviceOperatingSystem"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 10
+ }
+ }
+ },
+ "com.amazonaws.workmail#DeviceType": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 256
+ },
+ "smithy.api#pattern": "[\\u0020-\\u00FF]+"
+ }
+ },
+ "com.amazonaws.workmail#DeviceTypeList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.workmail#DeviceType"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 10
+ }
+ }
+ },
+ "com.amazonaws.workmail#DeviceUserAgent": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 256
+ },
+ "smithy.api#pattern": "[\\u0020-\\u00FF]+"
+ }
+ },
+ "com.amazonaws.workmail#DeviceUserAgentList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.workmail#DeviceUserAgent"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 10
+ }
+ }
+ },
"com.amazonaws.workmail#DirectoryId": {
"type": "string",
"traits": {
@@ -2388,6 +2646,82 @@
}
}
},
+ "com.amazonaws.workmail#GetMobileDeviceAccessEffect": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.workmail#GetMobileDeviceAccessEffectRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.workmail#GetMobileDeviceAccessEffectResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.workmail#InvalidParameterException"
+ },
+ {
+ "target": "com.amazonaws.workmail#OrganizationNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.workmail#OrganizationStateException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Simulates the effect of the mobile device access rules for the given attributes of a sample access event. Use this method to test the effects of the current set of mobile device access \n rules for the Amazon WorkMail organization for a particular user's attributes.
"
+ }
+ },
+ "com.amazonaws.workmail#GetMobileDeviceAccessEffectRequest": {
+ "type": "structure",
+ "members": {
+ "OrganizationId": {
+ "target": "com.amazonaws.workmail#OrganizationId",
+ "traits": {
+ "smithy.api#documentation": "The Amazon WorkMail organization to simulate the access effect for.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DeviceType": {
+ "target": "com.amazonaws.workmail#DeviceType",
+ "traits": {
+ "smithy.api#documentation": "Device type the simulated user will report.
"
+ }
+ },
+ "DeviceModel": {
+ "target": "com.amazonaws.workmail#DeviceModel",
+ "traits": {
+ "smithy.api#documentation": "Device model the simulated user will report.
"
+ }
+ },
+ "DeviceOperatingSystem": {
+ "target": "com.amazonaws.workmail#DeviceOperatingSystem",
+ "traits": {
+ "smithy.api#documentation": "Device operating system the simulated user will report.
"
+ }
+ },
+ "DeviceUserAgent": {
+ "target": "com.amazonaws.workmail#DeviceUserAgent",
+ "traits": {
+ "smithy.api#documentation": "Device user agent the simulated user will report.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.workmail#GetMobileDeviceAccessEffectResponse": {
+ "type": "structure",
+ "members": {
+ "Effect": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleEffect",
+ "traits": {
+ "smithy.api#documentation": "The effect of the simulated access, ALLOW
or DENY
, after evaluating mobile device access rules in the Amazon WorkMail organization for the simulated \n user parameters.
"
+ }
+ },
+ "MatchedRules": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessMatchedRuleList",
+ "traits": {
+ "smithy.api#documentation": "A list of the rules which matched the simulated user input and produced the effect.
"
+ }
+ }
+ }
+ },
"com.amazonaws.workmail#Group": {
"type": "structure",
"members": {
@@ -2996,6 +3330,52 @@
}
}
},
+ "com.amazonaws.workmail#ListMobileDeviceAccessRules": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.workmail#ListMobileDeviceAccessRulesRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.workmail#ListMobileDeviceAccessRulesResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.workmail#InvalidParameterException"
+ },
+ {
+ "target": "com.amazonaws.workmail#OrganizationNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.workmail#OrganizationStateException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Lists the mobile device access rules for the specified Amazon WorkMail organization.
"
+ }
+ },
+ "com.amazonaws.workmail#ListMobileDeviceAccessRulesRequest": {
+ "type": "structure",
+ "members": {
+ "OrganizationId": {
+ "target": "com.amazonaws.workmail#OrganizationId",
+ "traits": {
+ "smithy.api#documentation": "The Amazon WorkMail organization for which to list the rules.
",
+ "smithy.api#required": {}
+ }
+ }
+ }
+ },
+ "com.amazonaws.workmail#ListMobileDeviceAccessRulesResponse": {
+ "type": "structure",
+ "members": {
+ "Rules": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRulesList",
+ "traits": {
+ "smithy.api#documentation": "The list of mobile device access rules that exist under the specified Amazon WorkMail organization.
"
+ }
+ }
+ }
+ },
"com.amazonaws.workmail#ListOrganizations": {
"type": "operation",
"input": {
@@ -3537,6 +3917,187 @@
"target": "com.amazonaws.workmail#Member"
}
},
+ "com.amazonaws.workmail#MobileDeviceAccessMatchedRule": {
+ "type": "structure",
+ "members": {
+ "MobileDeviceAccessRuleId": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleId",
+ "traits": {
+ "smithy.api#documentation": "Identifier of the rule that a simulated user matches.
"
+ }
+ },
+ "Name": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleName",
+ "traits": {
+ "smithy.api#documentation": "Name of a rule that a simulated user matches.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The rule that a simulated user matches.
"
+ }
+ },
+ "com.amazonaws.workmail#MobileDeviceAccessMatchedRuleList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessMatchedRule"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 10
+ }
+ }
+ },
+ "com.amazonaws.workmail#MobileDeviceAccessRule": {
+ "type": "structure",
+ "members": {
+ "MobileDeviceAccessRuleId": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleId",
+ "traits": {
+ "smithy.api#documentation": "The ID assigned to a mobile access rule.
"
+ }
+ },
+ "Name": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleName",
+ "traits": {
+ "smithy.api#documentation": "The name of a mobile access rule.
"
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleDescription",
+ "traits": {
+ "smithy.api#documentation": "The description of a mobile access rule.
"
+ }
+ },
+ "Effect": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleEffect",
+ "traits": {
+ "smithy.api#documentation": "The effect of the rule when it matches. Allowed values are ALLOW
or DENY
.
"
+ }
+ },
+ "DeviceTypes": {
+ "target": "com.amazonaws.workmail#DeviceTypeList",
+ "traits": {
+ "smithy.api#documentation": "Device types that a rule will match.
"
+ }
+ },
+ "NotDeviceTypes": {
+ "target": "com.amazonaws.workmail#DeviceTypeList",
+ "traits": {
+ "smithy.api#documentation": "Device types that a rule will not match. All other device types will match.
"
+ }
+ },
+ "DeviceModels": {
+ "target": "com.amazonaws.workmail#DeviceModelList",
+ "traits": {
+ "smithy.api#documentation": "Device models that a rule will match.
"
+ }
+ },
+ "NotDeviceModels": {
+ "target": "com.amazonaws.workmail#DeviceModelList",
+ "traits": {
+ "smithy.api#documentation": "Device models that a rule will not match. All other device models will match.
"
+ }
+ },
+ "DeviceOperatingSystems": {
+ "target": "com.amazonaws.workmail#DeviceOperatingSystemList",
+ "traits": {
+ "smithy.api#documentation": "Device operating systems that a rule will match.
"
+ }
+ },
+ "NotDeviceOperatingSystems": {
+ "target": "com.amazonaws.workmail#DeviceOperatingSystemList",
+ "traits": {
+ "smithy.api#documentation": "Device operating systems that a rule will not match. All other device types will match.
"
+ }
+ },
+ "DeviceUserAgents": {
+ "target": "com.amazonaws.workmail#DeviceUserAgentList",
+ "traits": {
+ "smithy.api#documentation": "Device user agents that a rule will match.
"
+ }
+ },
+ "NotDeviceUserAgents": {
+ "target": "com.amazonaws.workmail#DeviceUserAgentList",
+ "traits": {
+ "smithy.api#documentation": "Device user agents that a rule will not match. All other device user agents will match.
"
+ }
+ },
+ "DateCreated": {
+ "target": "com.amazonaws.workmail#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The date and time at which an access rule was created.
"
+ }
+ },
+ "DateModified": {
+ "target": "com.amazonaws.workmail#Timestamp",
+ "traits": {
+ "smithy.api#documentation": "The date and time at which an access rule was modified.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "A rule that controls access to mobile devices for an Amazon WorkMail group.
"
+ }
+ },
+ "com.amazonaws.workmail#MobileDeviceAccessRuleDescription": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 256
+ },
+ "smithy.api#pattern": "[\\S\\s]+"
+ }
+ },
+ "com.amazonaws.workmail#MobileDeviceAccessRuleEffect": {
+ "type": "string",
+ "traits": {
+ "smithy.api#enum": [
+ {
+ "value": "ALLOW",
+ "name": "ALLOW"
+ },
+ {
+ "value": "DENY",
+ "name": "DENY"
+ }
+ ]
+ }
+ },
+ "com.amazonaws.workmail#MobileDeviceAccessRuleId": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 64
+ },
+ "smithy.api#pattern": "[a-zA-Z0-9_-]+"
+ }
+ },
+ "com.amazonaws.workmail#MobileDeviceAccessRuleName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 1,
+ "max": 64
+ },
+ "smithy.api#pattern": "[\\S\\s]+"
+ }
+ },
+ "com.amazonaws.workmail#MobileDeviceAccessRulesList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRule"
+ },
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 10
+ }
+ }
+ },
"com.amazonaws.workmail#NameAvailabilityException": {
"type": "structure",
"members": {
@@ -4665,6 +5226,123 @@
"type": "structure",
"members": {}
},
+ "com.amazonaws.workmail#UpdateMobileDeviceAccessRule": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.workmail#UpdateMobileDeviceAccessRuleRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.workmail#UpdateMobileDeviceAccessRuleResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.workmail#EntityNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.workmail#InvalidParameterException"
+ },
+ {
+ "target": "com.amazonaws.workmail#OrganizationNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.workmail#OrganizationStateException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Updates a mobile device access rule for the specified Amazon WorkMail organization.
"
+ }
+ },
+ "com.amazonaws.workmail#UpdateMobileDeviceAccessRuleRequest": {
+ "type": "structure",
+ "members": {
+ "OrganizationId": {
+ "target": "com.amazonaws.workmail#OrganizationId",
+ "traits": {
+ "smithy.api#documentation": "The Amazon WorkMail organization under which the rule will be updated.
",
+ "smithy.api#required": {}
+ }
+ },
+ "MobileDeviceAccessRuleId": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleId",
+ "traits": {
+ "smithy.api#documentation": "The identifier of the rule to be updated.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Name": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleName",
+ "traits": {
+ "smithy.api#documentation": "The updated rule name.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleDescription",
+ "traits": {
+ "smithy.api#documentation": "The updated rule description.
"
+ }
+ },
+ "Effect": {
+ "target": "com.amazonaws.workmail#MobileDeviceAccessRuleEffect",
+ "traits": {
+ "smithy.api#documentation": "The effect of the rule when it matches. Allowed values are ALLOW
or DENY
.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DeviceTypes": {
+ "target": "com.amazonaws.workmail#DeviceTypeList",
+ "traits": {
+ "smithy.api#documentation": "Device types that the updated rule will match.
"
+ }
+ },
+ "NotDeviceTypes": {
+ "target": "com.amazonaws.workmail#DeviceTypeList",
+ "traits": {
+ "smithy.api#documentation": "Device types that the updated rule will not match. All other device types will match.
"
+ }
+ },
+ "DeviceModels": {
+ "target": "com.amazonaws.workmail#DeviceModelList",
+ "traits": {
+ "smithy.api#documentation": "Device models that the updated rule will match.
"
+ }
+ },
+ "NotDeviceModels": {
+ "target": "com.amazonaws.workmail#DeviceModelList",
+ "traits": {
+ "smithy.api#documentation": "Device models that the updated rule will not match. All other device models will match.
"
+ }
+ },
+ "DeviceOperatingSystems": {
+ "target": "com.amazonaws.workmail#DeviceOperatingSystemList",
+ "traits": {
+ "smithy.api#documentation": "Device operating systems that the updated rule will match.
"
+ }
+ },
+ "NotDeviceOperatingSystems": {
+ "target": "com.amazonaws.workmail#DeviceOperatingSystemList",
+ "traits": {
+ "smithy.api#documentation": "Device operating systems that the updated rule will not match. All other device operating systems will match.
"
+ }
+ },
+ "DeviceUserAgents": {
+ "target": "com.amazonaws.workmail#DeviceUserAgentList",
+ "traits": {
+ "smithy.api#documentation": "User agents that the updated rule will match.
"
+ }
+ },
+ "NotDeviceUserAgents": {
+ "target": "com.amazonaws.workmail#DeviceUserAgentList",
+ "traits": {
+ "smithy.api#documentation": "User agents that the updated rule will not match. All other user agents will match.
"
+ }
+ }
+ }
+ },
+ "com.amazonaws.workmail#UpdateMobileDeviceAccessRuleResponse": {
+ "type": "structure",
+ "members": {}
+ },
"com.amazonaws.workmail#UpdatePrimaryEmailAddress": {
"type": "operation",
"input": {
@@ -4954,6 +5632,9 @@
{
"target": "com.amazonaws.workmail#CreateGroup"
},
+ {
+ "target": "com.amazonaws.workmail#CreateMobileDeviceAccessRule"
+ },
{
"target": "com.amazonaws.workmail#CreateOrganization"
},
@@ -4975,6 +5656,9 @@
{
"target": "com.amazonaws.workmail#DeleteMailboxPermissions"
},
+ {
+ "target": "com.amazonaws.workmail#DeleteMobileDeviceAccessRule"
+ },
{
"target": "com.amazonaws.workmail#DeleteOrganization"
},
@@ -5020,6 +5704,9 @@
{
"target": "com.amazonaws.workmail#GetMailboxDetails"
},
+ {
+ "target": "com.amazonaws.workmail#GetMobileDeviceAccessEffect"
+ },
{
"target": "com.amazonaws.workmail#ListAccessControlRules"
},
@@ -5038,6 +5725,9 @@
{
"target": "com.amazonaws.workmail#ListMailboxPermissions"
},
+ {
+ "target": "com.amazonaws.workmail#ListMobileDeviceAccessRules"
+ },
{
"target": "com.amazonaws.workmail#ListOrganizations"
},
@@ -5080,6 +5770,9 @@
{
"target": "com.amazonaws.workmail#UpdateMailboxQuota"
},
+ {
+ "target": "com.amazonaws.workmail#UpdateMobileDeviceAccessRule"
+ },
{
"target": "com.amazonaws.workmail#UpdatePrimaryEmailAddress"
},
diff --git a/codegen/smithy-aws-go-codegen/build.gradle.kts b/codegen/smithy-aws-go-codegen/build.gradle.kts
index ef67c046ecf..222d371ffe2 100644
--- a/codegen/smithy-aws-go-codegen/build.gradle.kts
+++ b/codegen/smithy-aws-go-codegen/build.gradle.kts
@@ -33,6 +33,7 @@ tasks.withType {
dependencies {
api("software.amazon.smithy:smithy-aws-traits:[1.5.1,2.0.0[")
api("software.amazon.smithy:smithy-go-codegen:0.1.0")
+ api("software.amazon.smithy:smithy-aws-iam-traits:[1.6.1,2.0.0[")
testCompile("org.junit.jupiter:junit-jupiter-api:5.4.0")
testRuntime("org.junit.jupiter:junit-jupiter-engine:5.4.0")
testCompile("org.junit.jupiter:junit-jupiter-params:5.4.0")
diff --git a/codegen/smithy-aws-go-codegen/src/main/resources/software/amazon/smithy/aws/go/codegen/endpoint-prefix.json b/codegen/smithy-aws-go-codegen/src/main/resources/software/amazon/smithy/aws/go/codegen/endpoint-prefix.json
index 5a90d5ba0a2..f5bc20b6546 100644
--- a/codegen/smithy-aws-go-codegen/src/main/resources/software/amazon/smithy/aws/go/codegen/endpoint-prefix.json
+++ b/codegen/smithy-aws-go-codegen/src/main/resources/software/amazon/smithy/aws/go/codegen/endpoint-prefix.json
@@ -151,6 +151,7 @@
"License Manager": "license-manager",
"Lightsail": "lightsail",
"Location": "geo",
+ "LookoutMetrics": "lookoutmetrics",
"LookoutVision": "lookoutvision",
"MTurk": "mturk-requester",
"MWAA": "airflow",
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 3cdb8e38c68..8e6a233b98a 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
@@ -632,6 +632,7 @@
"ap-northeast-1" : { },
"ap-southeast-1" : { },
"ap-southeast-2" : { },
+ "ca-central-1" : { },
"eu-central-1" : { },
"eu-west-2" : { },
"us-east-1" : { },
@@ -866,6 +867,7 @@
"ap-east-1" : { },
"ap-northeast-1" : { },
"ap-northeast-2" : { },
+ "ap-northeast-3" : { },
"ap-south-1" : { },
"ap-southeast-1" : { },
"ap-southeast-2" : { },
@@ -1636,6 +1638,7 @@
"ap-northeast-1" : { },
"ap-southeast-1" : { },
"ap-southeast-2" : { },
+ "ca-central-1" : { },
"eu-central-1" : { },
"eu-west-2" : { },
"us-east-1" : { },
@@ -3205,8 +3208,15 @@
"endpoints" : {
"af-south-1" : { },
"ap-southeast-2" : { },
+ "eu-central-1" : { },
"eu-north-1" : { },
"eu-west-1" : { },
+ "fips-us-east-1" : {
+ "credentialScope" : {
+ "region" : "us-east-1"
+ },
+ "hostname" : "groundstation-fips.us-east-1.amazonaws.com"
+ },
"fips-us-east-2" : {
"credentialScope" : {
"region" : "us-east-2"
@@ -3220,6 +3230,7 @@
"hostname" : "groundstation-fips.us-west-2.amazonaws.com"
},
"me-south-1" : { },
+ "us-east-1" : { },
"us-east-2" : { },
"us-west-2" : { }
}
@@ -5209,6 +5220,90 @@
"signatureVersions" : [ "s3v4" ]
},
"endpoints" : {
+ "accesspoint-af-south-1" : {
+ "hostname" : "s3-accesspoint.af-south-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-ap-east-1" : {
+ "hostname" : "s3-accesspoint.ap-east-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-ap-northeast-1" : {
+ "hostname" : "s3-accesspoint.ap-northeast-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-ap-northeast-2" : {
+ "hostname" : "s3-accesspoint.ap-northeast-2.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-ap-northeast-3" : {
+ "hostname" : "s3-accesspoint.ap-northeast-3.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-ap-south-1" : {
+ "hostname" : "s3-accesspoint.ap-south-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-ap-southeast-1" : {
+ "hostname" : "s3-accesspoint.ap-southeast-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-ap-southeast-2" : {
+ "hostname" : "s3-accesspoint.ap-southeast-2.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-ca-central-1" : {
+ "hostname" : "s3-accesspoint.ca-central-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-eu-central-1" : {
+ "hostname" : "s3-accesspoint.eu-central-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-eu-north-1" : {
+ "hostname" : "s3-accesspoint.eu-north-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-eu-south-1" : {
+ "hostname" : "s3-accesspoint.eu-south-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-eu-west-1" : {
+ "hostname" : "s3-accesspoint.eu-west-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-eu-west-2" : {
+ "hostname" : "s3-accesspoint.eu-west-2.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-eu-west-3" : {
+ "hostname" : "s3-accesspoint.eu-west-3.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-me-south-1" : {
+ "hostname" : "s3-accesspoint.me-south-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-sa-east-1" : {
+ "hostname" : "s3-accesspoint.sa-east-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-us-east-1" : {
+ "hostname" : "s3-accesspoint.us-east-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-us-east-2" : {
+ "hostname" : "s3-accesspoint.us-east-2.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-us-west-1" : {
+ "hostname" : "s3-accesspoint.us-west-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-us-west-2" : {
+ "hostname" : "s3-accesspoint.us-west-2.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
"af-south-1" : { },
"ap-east-1" : { },
"ap-northeast-1" : {
@@ -5243,6 +5338,26 @@
},
"eu-west-2" : { },
"eu-west-3" : { },
+ "fips-accesspoint-ca-central-1" : {
+ "hostname" : "s3-accesspoint-fips.ca-central-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "fips-accesspoint-us-east-1" : {
+ "hostname" : "s3-accesspoint-fips.us-east-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "fips-accesspoint-us-east-2" : {
+ "hostname" : "s3-accesspoint-fips.us-east-2.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "fips-accesspoint-us-west-1" : {
+ "hostname" : "s3-accesspoint-fips.us-west-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "fips-accesspoint-us-west-2" : {
+ "hostname" : "s3-accesspoint-fips.us-west-2.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
"me-south-1" : { },
"s3-external-1" : {
"credentialScope" : {
@@ -5540,6 +5655,7 @@
"ap-east-1" : { },
"ap-northeast-1" : { },
"ap-northeast-2" : { },
+ "ap-northeast-3" : { },
"ap-south-1" : { },
"ap-southeast-1" : { },
"ap-southeast-2" : { },
@@ -6051,9 +6167,7 @@
},
"me-south-1" : { },
"sa-east-1" : { },
- "us-east-1" : {
- "sslCommonName" : "queue.{dnsSuffix}"
- },
+ "us-east-1" : { },
"us-east-2" : { },
"us-west-1" : { },
"us-west-2" : { }
@@ -7511,6 +7625,14 @@
"signatureVersions" : [ "s3v4" ]
},
"endpoints" : {
+ "accesspoint-cn-north-1" : {
+ "hostname" : "s3-accesspoint.cn-north-1.amazonaws.com.cn",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-cn-northwest-1" : {
+ "hostname" : "s3-accesspoint.cn-northwest-1.amazonaws.com.cn",
+ "signatureVersions" : [ "s3v4" ]
+ },
"cn-north-1" : { },
"cn-northwest-1" : { }
}
@@ -7773,6 +7895,27 @@
"us-gov-west-1" : { }
}
},
+ "api.detective" : {
+ "defaults" : {
+ "protocols" : [ "https" ]
+ },
+ "endpoints" : {
+ "us-gov-east-1" : { },
+ "us-gov-east-1-fips" : {
+ "credentialScope" : {
+ "region" : "us-gov-east-1"
+ },
+ "hostname" : "api.detective-fips.us-gov-east-1.amazonaws.com"
+ },
+ "us-gov-west-1" : { },
+ "us-gov-west-1-fips" : {
+ "credentialScope" : {
+ "region" : "us-gov-west-1"
+ },
+ "hostname" : "api.detective-fips.us-gov-west-1.amazonaws.com"
+ }
+ }
+ },
"api.ecr" : {
"endpoints" : {
"fips-dkr-us-gov-east-1" : {
@@ -7915,18 +8058,6 @@
},
"batch" : {
"endpoints" : {
- "fips-us-gov-east-1" : {
- "credentialScope" : {
- "region" : "us-gov-east-1"
- },
- "hostname" : "batch.us-gov-east-1.amazonaws.com"
- },
- "fips-us-gov-west-1" : {
- "credentialScope" : {
- "region" : "us-gov-west-1"
- },
- "hostname" : "batch.us-gov-west-1.amazonaws.com"
- },
"us-gov-east-1" : { },
"us-gov-west-1" : { }
}
@@ -8972,6 +9103,22 @@
"signatureVersions" : [ "s3", "s3v4" ]
},
"endpoints" : {
+ "accesspoint-us-gov-east-1" : {
+ "hostname" : "s3-accesspoint.us-gov-east-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "accesspoint-us-gov-west-1" : {
+ "hostname" : "s3-accesspoint.us-gov-west-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "fips-accesspoint-us-gov-east-1" : {
+ "hostname" : "s3-accesspoint-fips.us-gov-east-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
+ "fips-accesspoint-us-gov-west-1" : {
+ "hostname" : "s3-accesspoint-fips.us-gov-west-1.amazonaws.com",
+ "signatureVersions" : [ "s3v4" ]
+ },
"fips-us-gov-west-1" : {
"credentialScope" : {
"region" : "us-gov-west-1"
@@ -9099,6 +9246,15 @@
}
}
},
+ "servicequotas" : {
+ "defaults" : {
+ "protocols" : [ "https" ]
+ },
+ "endpoints" : {
+ "us-gov-east-1" : { },
+ "us-gov-west-1" : { }
+ }
+ },
"sms" : {
"endpoints" : {
"fips-us-gov-east-1" : {
diff --git a/config/go.mod b/config/go.mod
index da449779b96..344baf0efe7 100644
--- a/config/go.mod
+++ b/config/go.mod
@@ -8,7 +8,7 @@ require (
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.0.4
github.com/aws/aws-sdk-go-v2/service/sso v1.1.3
github.com/aws/aws-sdk-go-v2/service/sts v1.2.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/google/go-cmp v0.5.4
)
diff --git a/config/go.sum b/config/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/config/go.sum
+++ b/config/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/credentials/go.mod b/credentials/go.mod
index c389cab7e11..c6daaf45571 100644
--- a/credentials/go.mod
+++ b/credentials/go.mod
@@ -7,7 +7,7 @@ require (
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.0.4
github.com/aws/aws-sdk-go-v2/service/sso v1.1.3
github.com/aws/aws-sdk-go-v2/service/sts v1.2.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/google/go-cmp v0.5.4
)
diff --git a/credentials/go.sum b/credentials/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/credentials/go.sum
+++ b/credentials/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/example/service/s3/listObjects/go.sum b/example/service/s3/listObjects/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/example/service/s3/listObjects/go.sum
+++ b/example/service/s3/listObjects/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/example/service/s3/usingPrivateLink/go.sum b/example/service/s3/usingPrivateLink/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/example/service/s3/usingPrivateLink/go.sum
+++ b/example/service/s3/usingPrivateLink/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/feature/cloudfront/sign/go.sum b/feature/cloudfront/sign/go.sum
index c3783ae6011..3aa8f05f35e 100644
--- a/feature/cloudfront/sign/go.sum
+++ b/feature/cloudfront/sign/go.sum
@@ -1,5 +1,5 @@
-github.com/aws/smithy-go v1.2.0 h1:0PoGBWXkXDIyVdPaZW9gMhaGzj3UOAgTdiVoHuuZAFA=
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/feature/dynamodb/attributevalue/go.sum b/feature/dynamodb/attributevalue/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/feature/dynamodb/attributevalue/go.sum
+++ b/feature/dynamodb/attributevalue/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/feature/dynamodb/expression/go.sum b/feature/dynamodb/expression/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/feature/dynamodb/expression/go.sum
+++ b/feature/dynamodb/expression/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/feature/dynamodbstreams/attributevalue/go.sum b/feature/dynamodbstreams/attributevalue/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/feature/dynamodbstreams/attributevalue/go.sum
+++ b/feature/dynamodbstreams/attributevalue/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/feature/ec2/imds/go.mod b/feature/ec2/imds/go.mod
index 23beb1e5ca9..9d89fe701a2 100644
--- a/feature/ec2/imds/go.mod
+++ b/feature/ec2/imds/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.0
+ github.com/aws/smithy-go v1.3.0
github.com/google/go-cmp v0.5.4
)
diff --git a/feature/ec2/imds/go.sum b/feature/ec2/imds/go.sum
index c3783ae6011..3aa8f05f35e 100644
--- a/feature/ec2/imds/go.sum
+++ b/feature/ec2/imds/go.sum
@@ -1,5 +1,5 @@
-github.com/aws/smithy-go v1.2.0 h1:0PoGBWXkXDIyVdPaZW9gMhaGzj3UOAgTdiVoHuuZAFA=
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/feature/s3/manager/go.mod b/feature/s3/manager/go.mod
index 12b98da0b79..08f2f85a48a 100644
--- a/feature/s3/manager/go.mod
+++ b/feature/s3/manager/go.mod
@@ -6,7 +6,7 @@ require (
github.com/aws/aws-sdk-go-v2 v1.3.0
github.com/aws/aws-sdk-go-v2/config v1.1.3
github.com/aws/aws-sdk-go-v2/service/s3 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/google/go-cmp v0.5.4
)
diff --git a/feature/s3/manager/go.sum b/feature/s3/manager/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/feature/s3/manager/go.sum
+++ b/feature/s3/manager/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/go.mod b/go.mod
index e378b279507..5027a2e1c25 100644
--- a/go.mod
+++ b/go.mod
@@ -1,7 +1,7 @@
module github.com/aws/aws-sdk-go-v2
require (
- github.com/aws/smithy-go v1.2.0
+ github.com/aws/smithy-go v1.3.0
github.com/google/go-cmp v0.5.4
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/go.sum b/go.sum
index d937214c3eb..73b87070e4c 100644
--- a/go.sum
+++ b/go.sum
@@ -1,5 +1,5 @@
-github.com/aws/smithy-go v1.2.0 h1:0PoGBWXkXDIyVdPaZW9gMhaGzj3UOAgTdiVoHuuZAFA=
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/internal/protocoltest/awsrestjson/go.mod b/internal/protocoltest/awsrestjson/go.mod
index 7e56f1e8d41..245d290d334 100644
--- a/internal/protocoltest/awsrestjson/go.mod
+++ b/internal/protocoltest/awsrestjson/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/google/go-cmp v0.5.4
)
diff --git a/internal/protocoltest/awsrestjson/go.sum b/internal/protocoltest/awsrestjson/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/internal/protocoltest/awsrestjson/go.sum
+++ b/internal/protocoltest/awsrestjson/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/internal/protocoltest/ec2query/go.mod b/internal/protocoltest/ec2query/go.mod
index 031145c98d6..77f1ea2af15 100644
--- a/internal/protocoltest/ec2query/go.mod
+++ b/internal/protocoltest/ec2query/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/google/go-cmp v0.5.4
)
diff --git a/internal/protocoltest/ec2query/go.sum b/internal/protocoltest/ec2query/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/internal/protocoltest/ec2query/go.sum
+++ b/internal/protocoltest/ec2query/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/internal/protocoltest/jsonrpc/go.mod b/internal/protocoltest/jsonrpc/go.mod
index 332b148c752..549d6175f6f 100644
--- a/internal/protocoltest/jsonrpc/go.mod
+++ b/internal/protocoltest/jsonrpc/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/google/go-cmp v0.5.4
)
diff --git a/internal/protocoltest/jsonrpc/go.sum b/internal/protocoltest/jsonrpc/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/internal/protocoltest/jsonrpc/go.sum
+++ b/internal/protocoltest/jsonrpc/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/internal/protocoltest/jsonrpc10/go.mod b/internal/protocoltest/jsonrpc10/go.mod
index deee74399cd..2c8589bc4cb 100644
--- a/internal/protocoltest/jsonrpc10/go.mod
+++ b/internal/protocoltest/jsonrpc10/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/google/go-cmp v0.5.4
)
diff --git a/internal/protocoltest/jsonrpc10/go.sum b/internal/protocoltest/jsonrpc10/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/internal/protocoltest/jsonrpc10/go.sum
+++ b/internal/protocoltest/jsonrpc10/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/internal/protocoltest/query/go.mod b/internal/protocoltest/query/go.mod
index 3b61a40a1cf..caf0186f4ea 100644
--- a/internal/protocoltest/query/go.mod
+++ b/internal/protocoltest/query/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/google/go-cmp v0.5.4
)
diff --git a/internal/protocoltest/query/go.sum b/internal/protocoltest/query/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/internal/protocoltest/query/go.sum
+++ b/internal/protocoltest/query/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/internal/protocoltest/restxml/go.mod b/internal/protocoltest/restxml/go.mod
index bfaf046f32b..1699578c2ed 100644
--- a/internal/protocoltest/restxml/go.mod
+++ b/internal/protocoltest/restxml/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/google/go-cmp v0.5.4
)
diff --git a/internal/protocoltest/restxml/go.sum b/internal/protocoltest/restxml/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/internal/protocoltest/restxml/go.sum
+++ b/internal/protocoltest/restxml/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/internal/protocoltest/restxmlwithnamespace/go.mod b/internal/protocoltest/restxmlwithnamespace/go.mod
index 09ae31eaced..34141c3ebec 100644
--- a/internal/protocoltest/restxmlwithnamespace/go.mod
+++ b/internal/protocoltest/restxmlwithnamespace/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/google/go-cmp v0.5.4
)
diff --git a/internal/protocoltest/restxmlwithnamespace/go.sum b/internal/protocoltest/restxmlwithnamespace/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/internal/protocoltest/restxmlwithnamespace/go.sum
+++ b/internal/protocoltest/restxmlwithnamespace/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/internal/repotools/changes/go.sum b/internal/repotools/changes/go.sum
index d4d82ee6f07..9f5505a5960 100644
--- a/internal/repotools/changes/go.sum
+++ b/internal/repotools/changes/go.sum
@@ -1,5 +1,5 @@
-github.com/aws/smithy-go v1.2.0 h1:0PoGBWXkXDIyVdPaZW9gMhaGzj3UOAgTdiVoHuuZAFA=
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/accessanalyzer/go.mod b/service/accessanalyzer/go.mod
index 9665d93690b..fb35472e20e 100644
--- a/service/accessanalyzer/go.mod
+++ b/service/accessanalyzer/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/accessanalyzer/go.sum b/service/accessanalyzer/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/accessanalyzer/go.sum
+++ b/service/accessanalyzer/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/acm/go.mod b/service/acm/go.mod
index 275b78ec389..6bba9c3b9be 100644
--- a/service/acm/go.mod
+++ b/service/acm/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/acm/go.sum b/service/acm/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/acm/go.sum
+++ b/service/acm/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/acmpca/go.mod b/service/acmpca/go.mod
index 38d0311a71a..247f6da5fe1 100644
--- a/service/acmpca/go.mod
+++ b/service/acmpca/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/acmpca/go.sum b/service/acmpca/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/acmpca/go.sum
+++ b/service/acmpca/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/alexaforbusiness/api_op_CreateProfile.go b/service/alexaforbusiness/api_op_CreateProfile.go
index ee91b3e3534..6399faeec0a 100644
--- a/service/alexaforbusiness/api_op_CreateProfile.go
+++ b/service/alexaforbusiness/api_op_CreateProfile.go
@@ -63,6 +63,9 @@ type CreateProfileInput struct {
// The user-specified token that is used during the creation of a profile.
ClientRequestToken *string
+ // Whether data retention of the profile is enabled.
+ DataRetentionOptIn *bool
+
// The locale of the room profile. (This is currently only available to a limited
// preview audience.)
Locale *string
diff --git a/service/alexaforbusiness/api_op_UpdateProfile.go b/service/alexaforbusiness/api_op_UpdateProfile.go
index 06a7ec2a251..a71b719399a 100644
--- a/service/alexaforbusiness/api_op_UpdateProfile.go
+++ b/service/alexaforbusiness/api_op_UpdateProfile.go
@@ -32,6 +32,9 @@ type UpdateProfileInput struct {
// The updated address for the room profile.
Address *string
+ // Whether data retention of the profile is enabled.
+ DataRetentionOptIn *bool
+
// The updated distance unit for the room profile.
DistanceUnit types.DistanceUnit
diff --git a/service/alexaforbusiness/deserializers.go b/service/alexaforbusiness/deserializers.go
index 76b26948677..a54d11858c3 100644
--- a/service/alexaforbusiness/deserializers.go
+++ b/service/alexaforbusiness/deserializers.go
@@ -14147,6 +14147,15 @@ func awsAwsjson11_deserializeDocumentProfile(v **types.Profile, value interface{
sv.AddressBookArn = ptr.String(jtv)
}
+ case "DataRetentionOptIn":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value)
+ }
+ sv.DataRetentionOptIn = ptr.Bool(jtv)
+ }
+
case "DistanceUnit":
if value != nil {
jtv, ok := value.(string)
diff --git a/service/alexaforbusiness/go.mod b/service/alexaforbusiness/go.mod
index ce41d5d8c2a..0c587c1464a 100644
--- a/service/alexaforbusiness/go.mod
+++ b/service/alexaforbusiness/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/alexaforbusiness/go.sum b/service/alexaforbusiness/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/alexaforbusiness/go.sum
+++ b/service/alexaforbusiness/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/alexaforbusiness/serializers.go b/service/alexaforbusiness/serializers.go
index 8c557c1ca4f..8a65a430f4a 100644
--- a/service/alexaforbusiness/serializers.go
+++ b/service/alexaforbusiness/serializers.go
@@ -5425,6 +5425,11 @@ func awsAwsjson11_serializeOpDocumentCreateProfileInput(v *CreateProfileInput, v
ok.String(*v.ClientRequestToken)
}
+ if v.DataRetentionOptIn != nil {
+ ok := object.Key("DataRetentionOptIn")
+ ok.Boolean(*v.DataRetentionOptIn)
+ }
+
if len(v.DistanceUnit) > 0 {
ok := object.Key("DistanceUnit")
ok.String(string(v.DistanceUnit))
@@ -7050,6 +7055,11 @@ func awsAwsjson11_serializeOpDocumentUpdateProfileInput(v *UpdateProfileInput, v
ok.String(*v.Address)
}
+ if v.DataRetentionOptIn != nil {
+ ok := object.Key("DataRetentionOptIn")
+ ok.Boolean(*v.DataRetentionOptIn)
+ }
+
if len(v.DistanceUnit) > 0 {
ok := object.Key("DistanceUnit")
ok.String(string(v.DistanceUnit))
diff --git a/service/alexaforbusiness/types/types.go b/service/alexaforbusiness/types/types.go
index f6db57fa664..36d22e830fe 100644
--- a/service/alexaforbusiness/types/types.go
+++ b/service/alexaforbusiness/types/types.go
@@ -717,6 +717,9 @@ type Profile struct {
// The ARN of the address book.
AddressBookArn *string
+ // Whether data retention of the profile is enabled.
+ DataRetentionOptIn *bool
+
// The distance unit of a room profile.
DistanceUnit DistanceUnit
diff --git a/service/amp/go.mod b/service/amp/go.mod
index 362e04528b4..a7f40bc2ec1 100644
--- a/service/amp/go.mod
+++ b/service/amp/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/amp/go.sum b/service/amp/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/amp/go.sum
+++ b/service/amp/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/amplify/go.mod b/service/amplify/go.mod
index e58654a3f7a..9ca393234d0 100644
--- a/service/amplify/go.mod
+++ b/service/amplify/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/amplify/go.sum b/service/amplify/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/amplify/go.sum
+++ b/service/amplify/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/amplifybackend/go.mod b/service/amplifybackend/go.mod
index 7fa3cee8ee5..6b37b323b01 100644
--- a/service/amplifybackend/go.mod
+++ b/service/amplifybackend/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/amplifybackend/go.sum b/service/amplifybackend/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/amplifybackend/go.sum
+++ b/service/amplifybackend/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/apigateway/go.mod b/service/apigateway/go.mod
index 2aabfde5ca7..6dad769a4e6 100644
--- a/service/apigateway/go.mod
+++ b/service/apigateway/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/apigateway/go.sum b/service/apigateway/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/apigateway/go.sum
+++ b/service/apigateway/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/apigatewaymanagementapi/go.mod b/service/apigatewaymanagementapi/go.mod
index 32e45dda51c..f08d56de523 100644
--- a/service/apigatewaymanagementapi/go.mod
+++ b/service/apigatewaymanagementapi/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/apigatewaymanagementapi/go.sum b/service/apigatewaymanagementapi/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/apigatewaymanagementapi/go.sum
+++ b/service/apigatewaymanagementapi/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/apigatewayv2/go.mod b/service/apigatewayv2/go.mod
index d2e6aa7a900..d1af7bd3a16 100644
--- a/service/apigatewayv2/go.mod
+++ b/service/apigatewayv2/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/apigatewayv2/go.sum b/service/apigatewayv2/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/apigatewayv2/go.sum
+++ b/service/apigatewayv2/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/appconfig/go.mod b/service/appconfig/go.mod
index 0c9bbb5f116..d4c3a8cfec7 100644
--- a/service/appconfig/go.mod
+++ b/service/appconfig/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/appconfig/go.sum b/service/appconfig/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/appconfig/go.sum
+++ b/service/appconfig/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/appflow/go.mod b/service/appflow/go.mod
index 88a2c976563..6c9d4b21a31 100644
--- a/service/appflow/go.mod
+++ b/service/appflow/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/appflow/go.sum b/service/appflow/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/appflow/go.sum
+++ b/service/appflow/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/appintegrations/go.mod b/service/appintegrations/go.mod
index 5ffed206a82..f6740d161fb 100644
--- a/service/appintegrations/go.mod
+++ b/service/appintegrations/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/appintegrations/go.sum b/service/appintegrations/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/appintegrations/go.sum
+++ b/service/appintegrations/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/appintegrations/internal/endpoints/endpoints.go b/service/appintegrations/internal/endpoints/endpoints.go
index 24f7f56a8bc..2ad7b1259b5 100644
--- a/service/appintegrations/internal/endpoints/endpoints.go
+++ b/service/appintegrations/internal/endpoints/endpoints.go
@@ -66,6 +66,7 @@ var defaultPartitions = endpoints.Partitions{
"ap-northeast-1": endpoints.Endpoint{},
"ap-southeast-1": endpoints.Endpoint{},
"ap-southeast-2": endpoints.Endpoint{},
+ "ca-central-1": endpoints.Endpoint{},
"eu-central-1": endpoints.Endpoint{},
"eu-west-2": endpoints.Endpoint{},
"us-east-1": endpoints.Endpoint{},
diff --git a/service/applicationautoscaling/go.mod b/service/applicationautoscaling/go.mod
index 2671cd6808d..f35d4fc1c4d 100644
--- a/service/applicationautoscaling/go.mod
+++ b/service/applicationautoscaling/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/applicationautoscaling/go.sum b/service/applicationautoscaling/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/applicationautoscaling/go.sum
+++ b/service/applicationautoscaling/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/applicationdiscoveryservice/go.mod b/service/applicationdiscoveryservice/go.mod
index 6f9793ac772..84c8a661d80 100644
--- a/service/applicationdiscoveryservice/go.mod
+++ b/service/applicationdiscoveryservice/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/applicationdiscoveryservice/go.sum b/service/applicationdiscoveryservice/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/applicationdiscoveryservice/go.sum
+++ b/service/applicationdiscoveryservice/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/applicationinsights/go.mod b/service/applicationinsights/go.mod
index d7cc8f4839c..167076a5833 100644
--- a/service/applicationinsights/go.mod
+++ b/service/applicationinsights/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/applicationinsights/go.sum b/service/applicationinsights/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/applicationinsights/go.sum
+++ b/service/applicationinsights/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/appmesh/go.mod b/service/appmesh/go.mod
index 1791cbd7768..15d9804977e 100644
--- a/service/appmesh/go.mod
+++ b/service/appmesh/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/appmesh/go.sum b/service/appmesh/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/appmesh/go.sum
+++ b/service/appmesh/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/appstream/go.mod b/service/appstream/go.mod
index 6f2f3649803..37cc09ad1cb 100644
--- a/service/appstream/go.mod
+++ b/service/appstream/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/appstream/go.sum b/service/appstream/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/appstream/go.sum
+++ b/service/appstream/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/appsync/go.mod b/service/appsync/go.mod
index 3191bfcb5d6..02a374e1973 100644
--- a/service/appsync/go.mod
+++ b/service/appsync/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/appsync/go.sum b/service/appsync/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/appsync/go.sum
+++ b/service/appsync/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/athena/go.mod b/service/athena/go.mod
index 056bf518416..8634f303f02 100644
--- a/service/athena/go.mod
+++ b/service/athena/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/athena/go.sum b/service/athena/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/athena/go.sum
+++ b/service/athena/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/auditmanager/go.mod b/service/auditmanager/go.mod
index c81c54fccf8..d69acf24a16 100644
--- a/service/auditmanager/go.mod
+++ b/service/auditmanager/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/auditmanager/go.sum b/service/auditmanager/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/auditmanager/go.sum
+++ b/service/auditmanager/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/autoscaling/go.mod b/service/autoscaling/go.mod
index d30e3bb4168..eb8f02618f6 100644
--- a/service/autoscaling/go.mod
+++ b/service/autoscaling/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/autoscaling/go.sum b/service/autoscaling/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/autoscaling/go.sum
+++ b/service/autoscaling/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/autoscalingplans/go.mod b/service/autoscalingplans/go.mod
index 342f903bee0..ab9baefc404 100644
--- a/service/autoscalingplans/go.mod
+++ b/service/autoscalingplans/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/autoscalingplans/go.sum b/service/autoscalingplans/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/autoscalingplans/go.sum
+++ b/service/autoscalingplans/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/backup/go.mod b/service/backup/go.mod
index 29d8473b7b9..255cfffe76b 100644
--- a/service/backup/go.mod
+++ b/service/backup/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/backup/go.sum b/service/backup/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/backup/go.sum
+++ b/service/backup/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/backup/internal/endpoints/endpoints.go b/service/backup/internal/endpoints/endpoints.go
index 4538403f314..088393e1b3a 100644
--- a/service/backup/internal/endpoints/endpoints.go
+++ b/service/backup/internal/endpoints/endpoints.go
@@ -67,6 +67,7 @@ var defaultPartitions = endpoints.Partitions{
"ap-east-1": endpoints.Endpoint{},
"ap-northeast-1": endpoints.Endpoint{},
"ap-northeast-2": endpoints.Endpoint{},
+ "ap-northeast-3": endpoints.Endpoint{},
"ap-south-1": endpoints.Endpoint{},
"ap-southeast-1": endpoints.Endpoint{},
"ap-southeast-2": endpoints.Endpoint{},
diff --git a/service/batch/api_op_UpdateComputeEnvironment.go b/service/batch/api_op_UpdateComputeEnvironment.go
index f4eea35cb61..947ff674bca 100644
--- a/service/batch/api_op_UpdateComputeEnvironment.go
+++ b/service/batch/api_op_UpdateComputeEnvironment.go
@@ -47,13 +47,16 @@ type UpdateComputeEnvironmentInput struct {
// make calls to other AWS services on your behalf. For more information, see AWS
// Batch service IAM role
// (https://docs.aws.amazon.com/batch/latest/userguide/service_IAM_role.html) in
- // the AWS Batch User Guide. If your specified role has a path other than /, then
- // you must either specify the full role ARN (this is recommended) or prefix the
- // role name with the path. Depending on how you created your AWS Batch service
- // role, its ARN might contain the service-role path prefix. When you only specify
- // the name of the service role, AWS Batch assumes that your ARN doesn't use the
- // service-role path prefix. Because of this, we recommend that you specify the
- // full ARN of your service role when you create compute environments.
+ // the AWS Batch User Guide. If the compute environment has a service-linked role,
+ // it cannot be changed to use a regular IAM role. If the compute environment has a
+ // regular IAM role, it cannot be changed to use a service-linked role. If your
+ // specified role has a path other than /, then you must either specify the full
+ // role ARN (this is recommended) or prefix the role name with the path. Depending
+ // on how you created your AWS Batch service role, its ARN might contain the
+ // service-role path prefix. When you only specify the name of the service role,
+ // AWS Batch assumes that your ARN doesn't use the service-role path prefix.
+ // Because of this, we recommend that you specify the full ARN of your service role
+ // when you create compute environments.
ServiceRole *string
// The state of the compute environment. Compute environments in the ENABLED state
diff --git a/service/batch/deserializers.go b/service/batch/deserializers.go
index 947cca7f19f..e5294894e97 100644
--- a/service/batch/deserializers.go
+++ b/service/batch/deserializers.go
@@ -4091,6 +4091,131 @@ func awsRestjson1_deserializeDocumentEc2ConfigurationList(v *[]types.Ec2Configur
return nil
}
+func awsRestjson1_deserializeDocumentEFSAuthorizationConfig(v **types.EFSAuthorizationConfig, 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.EFSAuthorizationConfig
+ if *v == nil {
+ sv = &types.EFSAuthorizationConfig{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "accessPointId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.AccessPointId = ptr.String(jtv)
+ }
+
+ case "iam":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EFSAuthorizationConfigIAM to be of type string, got %T instead", value)
+ }
+ sv.Iam = types.EFSAuthorizationConfigIAM(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentEFSVolumeConfiguration(v **types.EFSVolumeConfiguration, 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.EFSVolumeConfiguration
+ if *v == nil {
+ sv = &types.EFSVolumeConfiguration{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "authorizationConfig":
+ if err := awsRestjson1_deserializeDocumentEFSAuthorizationConfig(&sv.AuthorizationConfig, value); err != nil {
+ return err
+ }
+
+ case "fileSystemId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.FileSystemId = ptr.String(jtv)
+ }
+
+ case "rootDirectory":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.RootDirectory = ptr.String(jtv)
+ }
+
+ case "transitEncryption":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EFSTransitEncryption to be of type string, got %T instead", value)
+ }
+ sv.TransitEncryption = types.EFSTransitEncryption(jtv)
+ }
+
+ case "transitEncryptionPort":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Integer to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.TransitEncryptionPort = int32(i64)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsRestjson1_deserializeDocumentEnvironmentVariables(v *[]types.KeyValuePair, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -6534,6 +6659,11 @@ func awsRestjson1_deserializeDocumentVolume(v **types.Volume, value interface{})
for key, value := range shape {
switch key {
+ case "efsVolumeConfiguration":
+ if err := awsRestjson1_deserializeDocumentEFSVolumeConfiguration(&sv.EfsVolumeConfiguration, value); err != nil {
+ return err
+ }
+
case "host":
if err := awsRestjson1_deserializeDocumentHost(&sv.Host, value); err != nil {
return err
diff --git a/service/batch/go.mod b/service/batch/go.mod
index 247272edb52..271564cab38 100644
--- a/service/batch/go.mod
+++ b/service/batch/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/batch/go.sum b/service/batch/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/batch/go.sum
+++ b/service/batch/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/batch/internal/endpoints/endpoints.go b/service/batch/internal/endpoints/endpoints.go
index ea968c7bda3..e71d6732060 100644
--- a/service/batch/internal/endpoints/endpoints.go
+++ b/service/batch/internal/endpoints/endpoints.go
@@ -154,18 +154,6 @@ var defaultPartitions = endpoints.Partitions{
RegionRegex: partitionRegexp.AwsUsGov,
IsRegionalized: true,
Endpoints: endpoints.Endpoints{
- "fips-us-gov-east-1": endpoints.Endpoint{
- Hostname: "batch.us-gov-east-1.amazonaws.com",
- CredentialScope: endpoints.CredentialScope{
- Region: "us-gov-east-1",
- },
- },
- "fips-us-gov-west-1": endpoints.Endpoint{
- Hostname: "batch.us-gov-west-1.amazonaws.com",
- CredentialScope: endpoints.CredentialScope{
- Region: "us-gov-west-1",
- },
- },
"us-gov-east-1": endpoints.Endpoint{},
"us-gov-west-1": endpoints.Endpoint{},
},
diff --git a/service/batch/serializers.go b/service/batch/serializers.go
index 4982d81c2bc..614ed5b72e0 100644
--- a/service/batch/serializers.go
+++ b/service/batch/serializers.go
@@ -2039,6 +2039,57 @@ func awsRestjson1_serializeDocumentEc2ConfigurationList(v []types.Ec2Configurati
return nil
}
+func awsRestjson1_serializeDocumentEFSAuthorizationConfig(v *types.EFSAuthorizationConfig, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AccessPointId != nil {
+ ok := object.Key("accessPointId")
+ ok.String(*v.AccessPointId)
+ }
+
+ if len(v.Iam) > 0 {
+ ok := object.Key("iam")
+ ok.String(string(v.Iam))
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentEFSVolumeConfiguration(v *types.EFSVolumeConfiguration, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AuthorizationConfig != nil {
+ ok := object.Key("authorizationConfig")
+ if err := awsRestjson1_serializeDocumentEFSAuthorizationConfig(v.AuthorizationConfig, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.FileSystemId != nil {
+ ok := object.Key("fileSystemId")
+ ok.String(*v.FileSystemId)
+ }
+
+ if v.RootDirectory != nil {
+ ok := object.Key("rootDirectory")
+ ok.String(*v.RootDirectory)
+ }
+
+ if len(v.TransitEncryption) > 0 {
+ ok := object.Key("transitEncryption")
+ ok.String(string(v.TransitEncryption))
+ }
+
+ if v.TransitEncryptionPort != 0 {
+ ok := object.Key("transitEncryptionPort")
+ ok.Integer(v.TransitEncryptionPort)
+ }
+
+ return nil
+}
+
func awsRestjson1_serializeDocumentEnvironmentVariables(v []types.KeyValuePair, value smithyjson.Value) error {
array := value.Array()
defer array.Close()
@@ -2639,6 +2690,13 @@ func awsRestjson1_serializeDocumentVolume(v *types.Volume, value smithyjson.Valu
object := value.Object()
defer object.Close()
+ if v.EfsVolumeConfiguration != nil {
+ ok := object.Key("efsVolumeConfiguration")
+ if err := awsRestjson1_serializeDocumentEFSVolumeConfiguration(v.EfsVolumeConfiguration, ok); err != nil {
+ return err
+ }
+ }
+
if v.Host != nil {
ok := object.Key("host")
if err := awsRestjson1_serializeDocumentHost(v.Host, ok); err != nil {
diff --git a/service/batch/types/enums.go b/service/batch/types/enums.go
index 6feaa7065ff..b9bd1188ac9 100644
--- a/service/batch/types/enums.go
+++ b/service/batch/types/enums.go
@@ -162,6 +162,42 @@ func (DeviceCgroupPermission) Values() []DeviceCgroupPermission {
}
}
+type EFSAuthorizationConfigIAM string
+
+// Enum values for EFSAuthorizationConfigIAM
+const (
+ EFSAuthorizationConfigIAMEnabled EFSAuthorizationConfigIAM = "ENABLED"
+ EFSAuthorizationConfigIAMDisabled EFSAuthorizationConfigIAM = "DISABLED"
+)
+
+// Values returns all known values for EFSAuthorizationConfigIAM. 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 (EFSAuthorizationConfigIAM) Values() []EFSAuthorizationConfigIAM {
+ return []EFSAuthorizationConfigIAM{
+ "ENABLED",
+ "DISABLED",
+ }
+}
+
+type EFSTransitEncryption string
+
+// Enum values for EFSTransitEncryption
+const (
+ EFSTransitEncryptionEnabled EFSTransitEncryption = "ENABLED"
+ EFSTransitEncryptionDisabled EFSTransitEncryption = "DISABLED"
+)
+
+// Values returns all known values for EFSTransitEncryption. 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 (EFSTransitEncryption) Values() []EFSTransitEncryption {
+ return []EFSTransitEncryption{
+ "ENABLED",
+ "DISABLED",
+ }
+}
+
type JobDefinitionType string
// Enum values for JobDefinitionType
diff --git a/service/batch/types/types.go b/service/batch/types/types.go
index 5ec4f340b38..6f8f91b39f4 100644
--- a/service/batch/types/types.go
+++ b/service/batch/types/types.go
@@ -859,15 +859,23 @@ type Device struct {
}
// Provides information used to select Amazon Machine Images (AMIs) for instances
-// in the compute environment. If the Ec2Configuration isn't specified, the default
-// is ECS_AL1. This object isn't applicable to jobs running on Fargate resources.
+// in the compute environment. If Ec2Configuration isn't specified, the default is
+// currently ECS_AL1 (Amazon Linux
+// (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#alami))
+// for non-GPU, non-Graviton instances. Starting on March 31, 2021, this default
+// will be changing to ECS_AL2 (Amazon Linux 2
+// (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2ami)).
+// This object isn't applicable to jobs running on Fargate resources.
type Ec2Configuration struct {
// The image type to match with the instance type to select an AMI. If the
// imageIdOverride parameter isn't specified, then a recent Amazon ECS-optimized
// AMI
// (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html)
- // is used. ECS_AL2 Amazon Linux 2
+ // (ECS_AL1) is used. Starting on March 31, 2021, this default will be changing to
+ // ECS_AL2 (Amazon Linux 2
+ // (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2ami)).
+ // ECS_AL2 Amazon Linux 2
// (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2ami)−
// Default for all AWS Graviton-based instance families (for example, C6g, M6g,
// R6g, and T4g) and can be used for all non-GPU instance types. ECS_AL2_NVIDIA
@@ -889,6 +897,68 @@ type Ec2Configuration struct {
ImageIdOverride *string
}
+// The authorization configuration details for the Amazon EFS file system.
+type EFSAuthorizationConfig struct {
+
+ // The Amazon EFS access point ID to use. If an access point is specified, the root
+ // directory value specified in the EFSVolumeConfiguration must either be omitted
+ // or set to / which will enforce the path set on the EFS access point. If an
+ // access point is used, transit encryption must be enabled in the
+ // EFSVolumeConfiguration. For more information, see Working with Amazon EFS Access
+ // Points (https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the
+ // Amazon Elastic File System User Guide.
+ AccessPointId *string
+
+ // Whether or not to use the AWS Batch execution IAM role defined in a job
+ // definition when mounting the Amazon EFS file system. If enabled, transit
+ // encryption must be enabled in the EFSVolumeConfiguration. If this parameter is
+ // omitted, the default value of DISABLED is used. For more information, see Using
+ // Amazon EFS Access Points
+ // (https://docs.aws.amazon.com/batch/latest/ug/efs-volumes.html#efs-volume-accesspoints)
+ // in the AWS Batch User Guide. EFS IAM authorization requires that
+ // TransitEncryption be ENABLED and that a JobRoleArn is specified.
+ Iam EFSAuthorizationConfigIAM
+}
+
+// This parameter is specified when you are using an Amazon Elastic File System
+// file system for task storage. For more information, see Amazon EFS Volumes
+// (https://docs.aws.amazon.com/batch/latest/ug/efs-volumes.html) in the AWS Batch
+// User Guide.
+type EFSVolumeConfiguration struct {
+
+ // The Amazon EFS file system ID to use.
+ //
+ // This member is required.
+ FileSystemId *string
+
+ // The authorization configuration details for the Amazon EFS file system.
+ AuthorizationConfig *EFSAuthorizationConfig
+
+ // The directory within the Amazon EFS file system to mount as the root directory
+ // inside the host. If this parameter is omitted, the root of the Amazon EFS volume
+ // will be used. Specifying / will have the same effect as omitting this parameter.
+ // If an EFS access point is specified in the authorizationConfig, the root
+ // directory parameter must either be omitted or set to / which will enforce the
+ // path set on the Amazon EFS access point.
+ RootDirectory *string
+
+ // Whether or not to enable encryption for Amazon EFS data in transit between the
+ // Amazon ECS host and the Amazon EFS server. Transit encryption must be enabled if
+ // Amazon EFS IAM authorization is used. If this parameter is omitted, the default
+ // value of DISABLED is used. For more information, see Encrypting data in transit
+ // (https://docs.aws.amazon.com/efs/latest/ug/encryption-in-transit.html) in the
+ // Amazon Elastic File System User Guide.
+ TransitEncryption EFSTransitEncryption
+
+ // The port to use when sending encrypted data between the Amazon ECS host and the
+ // Amazon EFS server. If you do not specify a transit encryption port, it will use
+ // the port selection strategy that the Amazon EFS mount helper uses. For more
+ // information, see EFS Mount Helper
+ // (https://docs.aws.amazon.com/efs/latest/ug/efs-mount-helper.html) in the Amazon
+ // Elastic File System User Guide.
+ TransitEncryptionPort int32
+}
+
// Specifies a set of conditions to be met, and an action to take (RETRY or EXIT)
// if all conditions are met.
type EvaluateOnExit struct {
@@ -1275,7 +1345,13 @@ type LaunchTemplateSpecification struct {
// The version number of the launch template, $Latest, or $Default. If the value is
// $Latest, the latest version of the launch template is used. If the value is
- // $Default, the default version of the launch template is used. Default: $Default.
+ // $Default, the default version of the launch template is used. After the compute
+ // environment is created, the launch template version used will not be changed,
+ // even if the $Default or $Latest version for the launch template is updated. To
+ // use a new launch template version, create a new compute environment, add the new
+ // compute environment to the existing job queue, remove the old compute
+ // environment from the job queue, and delete the old compute environment. Default:
+ // $Default.
Version *string
}
@@ -1734,6 +1810,11 @@ type Ulimit struct {
// A data volume used in a job's container properties.
type Volume struct {
+ // This parameter is specified when you are using an Amazon Elastic File System
+ // file system for job storage. Jobs running on Fargate resources must specify a
+ // platformVersion of at least 1.4.0.
+ EfsVolumeConfiguration *EFSVolumeConfiguration
+
// The contents of the host parameter determine whether your data volume persists
// on the host container instance and where it is stored. If the host parameter is
// empty, then the Docker daemon assigns a host path for your data volume. However,
diff --git a/service/batch/validators.go b/service/batch/validators.go
index c3542c0222a..0f25a2f4dec 100644
--- a/service/batch/validators.go
+++ b/service/batch/validators.go
@@ -447,6 +447,11 @@ func validateContainerProperties(v *types.ContainerProperties) error {
return nil
}
invalidParams := smithy.InvalidParamsError{Context: "ContainerProperties"}
+ if v.Volumes != nil {
+ if err := validateVolumes(v.Volumes); err != nil {
+ invalidParams.AddNested("Volumes", err.(smithy.InvalidParamsError))
+ }
+ }
if v.Ulimits != nil {
if err := validateUlimits(v.Ulimits); err != nil {
invalidParams.AddNested("Ulimits", err.(smithy.InvalidParamsError))
@@ -543,6 +548,21 @@ func validateEc2ConfigurationList(v []types.Ec2Configuration) error {
}
}
+func validateEFSVolumeConfiguration(v *types.EFSVolumeConfiguration) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "EFSVolumeConfiguration"}
+ if v.FileSystemId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("FileSystemId"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateEvaluateOnExit(v *types.EvaluateOnExit) error {
if v == nil {
return nil
@@ -878,6 +898,40 @@ func validateUlimits(v []types.Ulimit) error {
}
}
+func validateVolume(v *types.Volume) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "Volume"}
+ if v.EfsVolumeConfiguration != nil {
+ if err := validateEFSVolumeConfiguration(v.EfsVolumeConfiguration); err != nil {
+ invalidParams.AddNested("EfsVolumeConfiguration", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateVolumes(v []types.Volume) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "Volumes"}
+ for i := range v {
+ if err := validateVolume(&v[i]); err != nil {
+ invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpCancelJobInput(v *CancelJobInput) error {
if v == nil {
return nil
diff --git a/service/braket/go.mod b/service/braket/go.mod
index 92b3c174c82..9ba835faaf0 100644
--- a/service/braket/go.mod
+++ b/service/braket/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/braket/go.sum b/service/braket/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/braket/go.sum
+++ b/service/braket/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/budgets/go.mod b/service/budgets/go.mod
index 9027d91ebc6..9355089eed7 100644
--- a/service/budgets/go.mod
+++ b/service/budgets/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/budgets/go.sum b/service/budgets/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/budgets/go.sum
+++ b/service/budgets/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/chime/go.mod b/service/chime/go.mod
index a7a63642492..f19d0829e42 100644
--- a/service/chime/go.mod
+++ b/service/chime/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/chime/go.sum b/service/chime/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/chime/go.sum
+++ b/service/chime/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/cloud9/api_op_CreateEnvironmentEC2.go b/service/cloud9/api_op_CreateEnvironmentEC2.go
index 1977c578cee..11ccb217d1d 100644
--- a/service/cloud9/api_op_CreateEnvironmentEC2.go
+++ b/service/cloud9/api_op_CreateEnvironmentEC2.go
@@ -52,12 +52,42 @@ type CreateEnvironmentEC2Input struct {
// in the Amazon EC2 API Reference.
ClientRequestToken *string
- // The connection type used for connecting to an Amazon EC2 environment.
+ // The connection type used for connecting to an Amazon EC2 environment. Valid
+ // values are CONNECT_SSH (default) and CONNECT_SSM (connected through AWS Systems
+ // Manager). For more information, see Accessing no-ingress EC2 instances with AWS
+ // Systems Manager
+ // (https://docs.aws.amazon.com/cloud9/latest/user-guide/ec2-ssm.html) in the AWS
+ // Cloud9 User Guide.
ConnectionType types.ConnectionType
// The description of the environment to create.
Description *string
+ // The identifier for the Amazon Machine Image (AMI) that's used to create the EC2
+ // instance. You can specify the AMI for the instance using an AMI alias or an AWS
+ // Systems Manager (SSM) path. The default AMI is used if the parameter isn't
+ // explicitly assigned a value in the request. AMI aliases
+ //
+ // * Amazon Linux 2:
+ // amazonlinux-2-x86_64
+ //
+ // * Ubuntu 18.04: ubuntu-18.04-x86_64
+ //
+ // * Amazon Linux
+ // (default): amazonlinux-1-x86_64
+ //
+ // SSM paths
+ //
+ // * Amazon Linux 2:
+ // resolve:ssm:/aws/service/cloud9/amis/amazonlinux-2-x86_64
+ //
+ // * Ubuntu 18.04:
+ // resolve:ssm:/aws/service/cloud9/amis/ubuntu-18.04-x86_64
+ //
+ // * Amazon Linux
+ // (default): resolve:ssm:/aws/service/cloud9/amis/amazonlinux-1-x86_64
+ ImageId *string
+
// The Amazon Resource Name (ARN) of the environment owner. This ARN can be the ARN
// of any AWS IAM principal. If this value is not specified, the ARN defaults to
// this environment's creator.
diff --git a/service/cloud9/api_op_CreateEnvironmentMembership.go b/service/cloud9/api_op_CreateEnvironmentMembership.go
index 3f39bc19669..1064a6da1a7 100644
--- a/service/cloud9/api_op_CreateEnvironmentMembership.go
+++ b/service/cloud9/api_op_CreateEnvironmentMembership.go
@@ -54,6 +54,8 @@ type CreateEnvironmentMembershipInput struct {
type CreateEnvironmentMembershipOutput struct {
// Information about the environment member that was added.
+ //
+ // This member is required.
Membership *types.EnvironmentMember
// Metadata pertaining to the operation's result.
diff --git a/service/cloud9/api_op_DescribeEnvironmentStatus.go b/service/cloud9/api_op_DescribeEnvironmentStatus.go
index b331fca2f96..f6a51f6e301 100644
--- a/service/cloud9/api_op_DescribeEnvironmentStatus.go
+++ b/service/cloud9/api_op_DescribeEnvironmentStatus.go
@@ -38,6 +38,8 @@ type DescribeEnvironmentStatusInput struct {
type DescribeEnvironmentStatusOutput struct {
// Any informational message about the status of the environment.
+ //
+ // This member is required.
Message *string
// The status of the environment. Available values include:
@@ -59,6 +61,8 @@ type DescribeEnvironmentStatusOutput struct {
// stopped.
//
// * stopping: The environment is stopping.
+ //
+ // This member is required.
Status types.EnvironmentStatus
// Metadata pertaining to the operation's result.
diff --git a/service/cloud9/deserializers.go b/service/cloud9/deserializers.go
index 18d9a26503a..d44493546d3 100644
--- a/service/cloud9/deserializers.go
+++ b/service/cloud9/deserializers.go
@@ -2195,6 +2195,15 @@ func awsAwsjson11_deserializeDocumentEnvironment(v **types.Environment, value in
return err
}
+ case "managedCredentialsStatus":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ManagedCredentialsStatus to be of type string, got %T instead", value)
+ }
+ sv.ManagedCredentialsStatus = types.ManagedCredentialsStatus(jtv)
+ }
+
case "name":
if value != nil {
jtv, ok := value.(string)
diff --git a/service/cloud9/go.mod b/service/cloud9/go.mod
index 45b5cb4a319..f9f89446afb 100644
--- a/service/cloud9/go.mod
+++ b/service/cloud9/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/cloud9/go.sum b/service/cloud9/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/cloud9/go.sum
+++ b/service/cloud9/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/cloud9/serializers.go b/service/cloud9/serializers.go
index 6508df40778..18de6cefa8c 100644
--- a/service/cloud9/serializers.go
+++ b/service/cloud9/serializers.go
@@ -711,6 +711,11 @@ func awsAwsjson11_serializeOpDocumentCreateEnvironmentEC2Input(v *CreateEnvironm
ok.String(*v.Description)
}
+ if v.ImageId != nil {
+ ok := object.Key("imageId")
+ ok.String(*v.ImageId)
+ }
+
if v.InstanceType != nil {
ok := object.Key("instanceType")
ok.String(*v.InstanceType)
diff --git a/service/cloud9/types/enums.go b/service/cloud9/types/enums.go
index bb073330162..a343067208b 100644
--- a/service/cloud9/types/enums.go
+++ b/service/cloud9/types/enums.go
@@ -90,6 +90,42 @@ func (EnvironmentType) Values() []EnvironmentType {
}
}
+type ManagedCredentialsStatus string
+
+// Enum values for ManagedCredentialsStatus
+const (
+ ManagedCredentialsStatusEnabledOnCreate ManagedCredentialsStatus = "ENABLED_ON_CREATE"
+ ManagedCredentialsStatusEnabledByOwner ManagedCredentialsStatus = "ENABLED_BY_OWNER"
+ ManagedCredentialsStatusDisabledByDefault ManagedCredentialsStatus = "DISABLED_BY_DEFAULT"
+ ManagedCredentialsStatusDisabledByOwner ManagedCredentialsStatus = "DISABLED_BY_OWNER"
+ ManagedCredentialsStatusDisabledByCollaborator ManagedCredentialsStatus = "DISABLED_BY_COLLABORATOR"
+ ManagedCredentialsStatusPendingRemovalByCollaborator ManagedCredentialsStatus = "PENDING_REMOVAL_BY_COLLABORATOR"
+ ManagedCredentialsStatusPendingStartRemovalByCollaborator ManagedCredentialsStatus = "PENDING_START_REMOVAL_BY_COLLABORATOR"
+ ManagedCredentialsStatusPendingRemovalByOwner ManagedCredentialsStatus = "PENDING_REMOVAL_BY_OWNER"
+ ManagedCredentialsStatusPendingStartRemovalByOwner ManagedCredentialsStatus = "PENDING_START_REMOVAL_BY_OWNER"
+ ManagedCredentialsStatusFailedRemovalByCollaborator ManagedCredentialsStatus = "FAILED_REMOVAL_BY_COLLABORATOR"
+ ManagedCredentialsStatusFailedRemovalByOwner ManagedCredentialsStatus = "FAILED_REMOVAL_BY_OWNER"
+)
+
+// Values returns all known values for ManagedCredentialsStatus. 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 (ManagedCredentialsStatus) Values() []ManagedCredentialsStatus {
+ return []ManagedCredentialsStatus{
+ "ENABLED_ON_CREATE",
+ "ENABLED_BY_OWNER",
+ "DISABLED_BY_DEFAULT",
+ "DISABLED_BY_OWNER",
+ "DISABLED_BY_COLLABORATOR",
+ "PENDING_REMOVAL_BY_COLLABORATOR",
+ "PENDING_START_REMOVAL_BY_COLLABORATOR",
+ "PENDING_REMOVAL_BY_OWNER",
+ "PENDING_START_REMOVAL_BY_OWNER",
+ "FAILED_REMOVAL_BY_COLLABORATOR",
+ "FAILED_REMOVAL_BY_OWNER",
+ }
+}
+
type MemberPermissions string
// Enum values for MemberPermissions
diff --git a/service/cloud9/types/types.go b/service/cloud9/types/types.go
index 6dad19fe795..fb7adcbe7a7 100644
--- a/service/cloud9/types/types.go
+++ b/service/cloud9/types/types.go
@@ -10,9 +10,28 @@ import (
type Environment struct {
// The Amazon Resource Name (ARN) of the environment.
+ //
+ // This member is required.
Arn *string
+ // The Amazon Resource Name (ARN) of the environment owner.
+ //
+ // This member is required.
+ OwnerArn *string
+
+ // The type of environment. Valid values include the following:
+ //
+ // * ec2: An Amazon
+ // Elastic Compute Cloud (Amazon EC2) instance connects to the environment.
+ //
+ // * ssh:
+ // Your own server connects to the environment.
+ //
+ // This member is required.
+ Type EnvironmentType
+
// The connection type used for connecting to an Amazon EC2 environment.
+ // CONNECT_SSH is selected by default.
ConnectionType ConnectionType
// The description for the environment.
@@ -24,20 +43,35 @@ type Environment struct {
// The state of the environment in its creation or deletion lifecycle.
Lifecycle *EnvironmentLifecycle
- // The name of the environment.
- Name *string
-
- // The Amazon Resource Name (ARN) of the environment owner.
- OwnerArn *string
-
- // The type of environment. Valid values include the following:
+ // Describes the status of AWS managed temporary credentials for the AWS Cloud9
+ // environment. Available values are:
//
- // * ec2: An Amazon
- // Elastic Compute Cloud (Amazon EC2) instance connects to the environment.
+ // * ENABLED_ON_CREATE
//
- // * ssh:
- // Your own server connects to the environment.
- Type EnvironmentType
+ // * ENABLED_BY_OWNER
+ //
+ // *
+ // DISABLED_BY_DEFAULT
+ //
+ // * DISABLED_BY_OWNER
+ //
+ // * DISABLED_BY_COLLABORATOR
+ //
+ // *
+ // PENDING_REMOVAL_BY_COLLABORATOR
+ //
+ // * PENDING_REMOVAL_BY_OWNER
+ //
+ // *
+ // FAILED_REMOVAL_BY_COLLABORATOR
+ //
+ // * ENABLED_BY_OWNER
+ //
+ // * DISABLED_BY_DEFAULT
+ ManagedCredentialsStatus ManagedCredentialsStatus
+
+ // The name of the environment.
+ Name *string
}
// Information about the current creation or deletion lifecycle state of an AWS
@@ -74,12 +108,10 @@ type EnvironmentLifecycle struct {
type EnvironmentMember struct {
// The ID of the environment for the environment member.
+ //
+ // This member is required.
EnvironmentId *string
- // The time, expressed in epoch time format, when the environment member last
- // opened the environment.
- LastAccess *time.Time
-
// The type of environment member permissions associated with this environment
// member. Available values include:
//
@@ -90,14 +122,24 @@ type EnvironmentMember struct {
//
// * read-write: Has read-write access to
// the environment.
+ //
+ // This member is required.
Permissions Permissions
// The Amazon Resource Name (ARN) of the environment member.
+ //
+ // This member is required.
UserArn *string
// The user ID in AWS Identity and Access Management (AWS IAM) of the environment
// member.
+ //
+ // This member is required.
UserId *string
+
+ // The time, expressed in epoch time format, when the environment member last
+ // opened the environment.
+ LastAccess *time.Time
}
// Metadata that is associated with AWS resources. In particular, a name-value pair
diff --git a/service/clouddirectory/go.mod b/service/clouddirectory/go.mod
index ff7d92b417f..a86605e8f7a 100644
--- a/service/clouddirectory/go.mod
+++ b/service/clouddirectory/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/clouddirectory/go.sum b/service/clouddirectory/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/clouddirectory/go.sum
+++ b/service/clouddirectory/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/cloudformation/deserializers.go b/service/cloudformation/deserializers.go
index 3b02fb74c28..561e6f61186 100644
--- a/service/cloudformation/deserializers.go
+++ b/service/cloudformation/deserializers.go
@@ -7884,6 +7884,19 @@ func awsAwsquery_deserializeDocumentDeploymentTargets(v **types.DeploymentTarget
return err
}
+ case strings.EqualFold("AccountsUrl", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.AccountsUrl = ptr.String(xtv)
+ }
+
case strings.EqualFold("OrganizationalUnitIds", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
if err := awsAwsquery_deserializeDocumentOrganizationalUnitIdList(&sv.OrganizationalUnitIds, nodeDecoder); err != nil {
@@ -13822,6 +13835,19 @@ func awsAwsquery_deserializeDocumentStackSetOperationPreferences(v **types.Stack
sv.MaxConcurrentPercentage = ptr.Int32(int32(i64))
}
+ case strings.EqualFold("RegionConcurrencyType", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.RegionConcurrencyType = types.RegionConcurrencyType(xtv)
+ }
+
case strings.EqualFold("RegionOrder", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
if err := awsAwsquery_deserializeDocumentRegionList(&sv.RegionOrder, nodeDecoder); err != nil {
diff --git a/service/cloudformation/go.mod b/service/cloudformation/go.mod
index 1627895d355..f4ba83429e1 100644
--- a/service/cloudformation/go.mod
+++ b/service/cloudformation/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/cloudformation/go.sum b/service/cloudformation/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/cloudformation/go.sum
+++ b/service/cloudformation/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/cloudformation/serializers.go b/service/cloudformation/serializers.go
index 0d0e7cb675e..4c415dbb0ef 100644
--- a/service/cloudformation/serializers.go
+++ b/service/cloudformation/serializers.go
@@ -3148,6 +3148,11 @@ func awsAwsquery_serializeDocumentDeploymentTargets(v *types.DeploymentTargets,
}
}
+ if v.AccountsUrl != nil {
+ objectKey := object.Key("AccountsUrl")
+ objectKey.String(*v.AccountsUrl)
+ }
+
if v.OrganizationalUnitIds != nil {
objectKey := object.Key("OrganizationalUnitIds")
if err := awsAwsquery_serializeDocumentOrganizationalUnitIdList(v.OrganizationalUnitIds, objectKey); err != nil {
@@ -3486,6 +3491,11 @@ func awsAwsquery_serializeDocumentStackSetOperationPreferences(v *types.StackSet
objectKey.Integer(*v.MaxConcurrentPercentage)
}
+ if len(v.RegionConcurrencyType) > 0 {
+ objectKey := object.Key("RegionConcurrencyType")
+ objectKey.String(string(v.RegionConcurrencyType))
+ }
+
if v.RegionOrder != nil {
objectKey := object.Key("RegionOrder")
if err := awsAwsquery_serializeDocumentRegionList(v.RegionOrder, objectKey); err != nil {
diff --git a/service/cloudformation/types/enums.go b/service/cloudformation/types/enums.go
index 9bbaac63617..254c990b3cb 100644
--- a/service/cloudformation/types/enums.go
+++ b/service/cloudformation/types/enums.go
@@ -378,6 +378,24 @@ func (ProvisioningType) Values() []ProvisioningType {
}
}
+type RegionConcurrencyType string
+
+// Enum values for RegionConcurrencyType
+const (
+ RegionConcurrencyTypeSequential RegionConcurrencyType = "SEQUENTIAL"
+ RegionConcurrencyTypeParallel RegionConcurrencyType = "PARALLEL"
+)
+
+// Values returns all known values for RegionConcurrencyType. 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 (RegionConcurrencyType) Values() []RegionConcurrencyType {
+ return []RegionConcurrencyType{
+ "SEQUENTIAL",
+ "PARALLEL",
+ }
+}
+
type RegistrationStatus string
// Enum values for RegistrationStatus
diff --git a/service/cloudformation/types/types.go b/service/cloudformation/types/types.go
index 5265b4b6681..1e6487f11f7 100644
--- a/service/cloudformation/types/types.go
+++ b/service/cloudformation/types/types.go
@@ -168,6 +168,8 @@ type DeploymentTargets struct {
// updates.
Accounts []string
+ AccountsUrl *string
+
// The organization root ID or organizational unit (OU) IDs to which StackSets
// deploys.
OrganizationalUnitIds []string
@@ -1636,6 +1638,8 @@ type StackSetOperationPreferences struct {
// MaxConcurrentPercentage, but not both.
MaxConcurrentPercentage *int32
+ RegionConcurrencyType RegionConcurrencyType
+
// The order of the Regions in where you want to perform the stack operation.
RegionOrder []string
}
diff --git a/service/cloudfront/go.mod b/service/cloudfront/go.mod
index 7dc2301a50a..7617ef55a66 100644
--- a/service/cloudfront/go.mod
+++ b/service/cloudfront/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/cloudfront/go.sum b/service/cloudfront/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/cloudfront/go.sum
+++ b/service/cloudfront/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/cloudhsm/go.mod b/service/cloudhsm/go.mod
index 26e2ba9e24b..e81a3754b35 100644
--- a/service/cloudhsm/go.mod
+++ b/service/cloudhsm/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/cloudhsm/go.sum b/service/cloudhsm/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/cloudhsm/go.sum
+++ b/service/cloudhsm/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/cloudhsmv2/go.mod b/service/cloudhsmv2/go.mod
index 7c24bc3cd63..5d81b31dfd8 100644
--- a/service/cloudhsmv2/go.mod
+++ b/service/cloudhsmv2/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/cloudhsmv2/go.sum b/service/cloudhsmv2/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/cloudhsmv2/go.sum
+++ b/service/cloudhsmv2/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/cloudsearch/go.mod b/service/cloudsearch/go.mod
index fa1c6a97e22..29f2a58e291 100644
--- a/service/cloudsearch/go.mod
+++ b/service/cloudsearch/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/cloudsearch/go.sum b/service/cloudsearch/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/cloudsearch/go.sum
+++ b/service/cloudsearch/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/cloudsearchdomain/go.mod b/service/cloudsearchdomain/go.mod
index ffad76e7e85..b528c004bf7 100644
--- a/service/cloudsearchdomain/go.mod
+++ b/service/cloudsearchdomain/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/cloudsearchdomain/go.sum b/service/cloudsearchdomain/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/cloudsearchdomain/go.sum
+++ b/service/cloudsearchdomain/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/cloudtrail/go.mod b/service/cloudtrail/go.mod
index 625a4342d03..7feeaa3acbc 100644
--- a/service/cloudtrail/go.mod
+++ b/service/cloudtrail/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/cloudtrail/go.sum b/service/cloudtrail/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/cloudtrail/go.sum
+++ b/service/cloudtrail/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/cloudwatch/api_op_DeleteMetricStream.go b/service/cloudwatch/api_op_DeleteMetricStream.go
new file mode 100644
index 00000000000..37b3add38a9
--- /dev/null
+++ b/service/cloudwatch/api_op_DeleteMetricStream.go
@@ -0,0 +1,112 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package cloudwatch
+
+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"
+)
+
+// Permanently deletes the metric stream that you specify.
+func (c *Client) DeleteMetricStream(ctx context.Context, params *DeleteMetricStreamInput, optFns ...func(*Options)) (*DeleteMetricStreamOutput, error) {
+ if params == nil {
+ params = &DeleteMetricStreamInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DeleteMetricStream", params, optFns, addOperationDeleteMetricStreamMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DeleteMetricStreamOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DeleteMetricStreamInput struct {
+
+ // The name of the metric stream to delete.
+ //
+ // This member is required.
+ Name *string
+}
+
+type DeleteMetricStreamOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDeleteMetricStreamMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsquery_serializeOpDeleteMetricStream{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsquery_deserializeOpDeleteMetricStream{}, 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 = addOpDeleteMetricStreamValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteMetricStream(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_opDeleteMetricStream(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "monitoring",
+ OperationName: "DeleteMetricStream",
+ }
+}
diff --git a/service/cloudwatch/api_op_GetMetricStream.go b/service/cloudwatch/api_op_GetMetricStream.go
new file mode 100644
index 00000000000..52789f241fb
--- /dev/null
+++ b/service/cloudwatch/api_op_GetMetricStream.go
@@ -0,0 +1,150 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package cloudwatch
+
+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/cloudwatch/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Returns information about the metric stream that you specify.
+func (c *Client) GetMetricStream(ctx context.Context, params *GetMetricStreamInput, optFns ...func(*Options)) (*GetMetricStreamOutput, error) {
+ if params == nil {
+ params = &GetMetricStreamInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetMetricStream", params, optFns, addOperationGetMetricStreamMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetMetricStreamOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetMetricStreamInput struct {
+
+ // The name of the metric stream to retrieve information about.
+ //
+ // This member is required.
+ Name *string
+}
+
+type GetMetricStreamOutput struct {
+
+ // The ARN of the metric stream.
+ Arn *string
+
+ // The date that the metric stream was created.
+ CreationDate *time.Time
+
+ // If this array of metric namespaces is present, then these namespaces are the
+ // only metric namespaces that are not streamed by this metric stream. In this
+ // case, all other metric namespaces in the account are streamed by this metric
+ // stream.
+ ExcludeFilters []types.MetricStreamFilter
+
+ // The ARN of the Amazon Kinesis Firehose delivery stream that is used by this
+ // metric stream.
+ FirehoseArn *string
+
+ // If this array of metric namespaces is present, then these namespaces are the
+ // only metric namespaces that are streamed by this metric stream.
+ IncludeFilters []types.MetricStreamFilter
+
+ // The date of the most recent update to the metric stream's configuration.
+ LastUpdateDate *time.Time
+
+ // The name of the metric stream.
+ Name *string
+
+ //
+ OutputFormat types.MetricStreamOutputFormat
+
+ // The ARN of the IAM role that is used by this metric stream.
+ RoleArn *string
+
+ // The state of the metric stream. The possible values are running and stopped.
+ State *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetMetricStreamMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsquery_serializeOpGetMetricStream{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsquery_deserializeOpGetMetricStream{}, 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 = addOpGetMetricStreamValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetMetricStream(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_opGetMetricStream(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "monitoring",
+ OperationName: "GetMetricStream",
+ }
+}
diff --git a/service/cloudwatch/api_op_ListMetricStreams.go b/service/cloudwatch/api_op_ListMetricStreams.go
new file mode 100644
index 00000000000..5d8a54300d9
--- /dev/null
+++ b/service/cloudwatch/api_op_ListMetricStreams.go
@@ -0,0 +1,207 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package cloudwatch
+
+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/cloudwatch/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Returns a list of metric streams in this account.
+func (c *Client) ListMetricStreams(ctx context.Context, params *ListMetricStreamsInput, optFns ...func(*Options)) (*ListMetricStreamsOutput, error) {
+ if params == nil {
+ params = &ListMetricStreamsInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "ListMetricStreams", params, optFns, addOperationListMetricStreamsMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ListMetricStreamsOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ListMetricStreamsInput struct {
+
+ // The maximum number of results to return in one operation.
+ MaxResults *int32
+
+ // Include this value, if it was returned by the previous call, to get the next set
+ // of metric streams.
+ NextToken *string
+}
+
+type ListMetricStreamsOutput struct {
+
+ // The array of metric stream information.
+ Entries []types.MetricStreamEntry
+
+ // The token that marks the start of the next batch of returned results. You can
+ // use this token in a subsequent operation to get the next batch of results.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationListMetricStreamsMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsquery_serializeOpListMetricStreams{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsquery_deserializeOpListMetricStreams{}, 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_opListMetricStreams(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
+}
+
+// ListMetricStreamsAPIClient is a client that implements the ListMetricStreams
+// operation.
+type ListMetricStreamsAPIClient interface {
+ ListMetricStreams(context.Context, *ListMetricStreamsInput, ...func(*Options)) (*ListMetricStreamsOutput, error)
+}
+
+var _ ListMetricStreamsAPIClient = (*Client)(nil)
+
+// ListMetricStreamsPaginatorOptions is the paginator options for ListMetricStreams
+type ListMetricStreamsPaginatorOptions struct {
+ // The maximum number of results to return in one 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
+}
+
+// ListMetricStreamsPaginator is a paginator for ListMetricStreams
+type ListMetricStreamsPaginator struct {
+ options ListMetricStreamsPaginatorOptions
+ client ListMetricStreamsAPIClient
+ params *ListMetricStreamsInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewListMetricStreamsPaginator returns a new ListMetricStreamsPaginator
+func NewListMetricStreamsPaginator(client ListMetricStreamsAPIClient, params *ListMetricStreamsInput, optFns ...func(*ListMetricStreamsPaginatorOptions)) *ListMetricStreamsPaginator {
+ if params == nil {
+ params = &ListMetricStreamsInput{}
+ }
+
+ options := ListMetricStreamsPaginatorOptions{}
+ if params.MaxResults != nil {
+ options.Limit = *params.MaxResults
+ }
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &ListMetricStreamsPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *ListMetricStreamsPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next ListMetricStreams page.
+func (p *ListMetricStreamsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListMetricStreamsOutput, 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.ListMetricStreams(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_opListMetricStreams(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "monitoring",
+ OperationName: "ListMetricStreams",
+ }
+}
diff --git a/service/cloudwatch/api_op_PutMetricAlarm.go b/service/cloudwatch/api_op_PutMetricAlarm.go
index 2a3738f6330..d7a4cf3219c 100644
--- a/service/cloudwatch/api_op_PutMetricAlarm.go
+++ b/service/cloudwatch/api_op_PutMetricAlarm.go
@@ -29,7 +29,7 @@ import (
//
// The first time you create an alarm in the AWS
// Management Console, the CLI, or by using the PutMetricAlarm API, CloudWatch
-// creates the necessary service-linked rolea for you. The service-linked roles are
+// creates the necessary service-linked role for you. The service-linked roles are
// called AWSServiceRoleForCloudWatchEvents and
// AWSServiceRoleForCloudWatchAlarms_ActionSSM. For more information, see AWS
// service-linked role
@@ -165,7 +165,8 @@ type PutMetricAlarmInput struct {
// Valid Values (for use with IAM roles):
// arn:aws:swf:region:account-id:action/actions/AWS_EC2.InstanceId.Stop/1.0 |
// arn:aws:swf:region:account-id:action/actions/AWS_EC2.InstanceId.Terminate/1.0 |
- // arn:aws:swf:region:account-id:action/actions/AWS_EC2.InstanceId.Reboot/1.0
+ // arn:aws:swf:region:account-id:action/actions/AWS_EC2.InstanceId.Reboot/1.0 |
+ // arn:aws:swf:region:account-id:action/actions/AWS_EC2.InstanceId.Recover/1.0
OKActions []string
// The length, in seconds, used each time the metric specified in MetricName is
diff --git a/service/cloudwatch/api_op_PutMetricStream.go b/service/cloudwatch/api_op_PutMetricStream.go
new file mode 100644
index 00000000000..f7421958228
--- /dev/null
+++ b/service/cloudwatch/api_op_PutMetricStream.go
@@ -0,0 +1,185 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package cloudwatch
+
+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/cloudwatch/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Creates or updates a metric stream. Metric streams can automatically stream
+// CloudWatch metrics to AWS destinations including Amazon S3 and to many
+// third-party solutions. For more information, see Using Metric Streams
+// (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Metric-Streams.html).
+// To create a metric stream, you must be logged on to an account that has the
+// iam:PassRole permission and either the CloudWatchFullAccess policy or the
+// cloudwatch:PutMetricStream permission. When you create or update a metric
+// stream, you choose one of the following:
+//
+// * Stream metrics from all metric
+// namespaces in the account.
+//
+// * Stream metrics from all metric namespaces in the
+// account, except for the namespaces that you list in ExcludeFilters.
+//
+// * Stream
+// metrics from only the metric namespaces that you list in IncludeFilters.
+//
+// When
+// you use PutMetricStream to create a new metric stream, the stream is created in
+// the running state. If you use it to update an existing stream, the state of the
+// stream is not changed.
+func (c *Client) PutMetricStream(ctx context.Context, params *PutMetricStreamInput, optFns ...func(*Options)) (*PutMetricStreamOutput, error) {
+ if params == nil {
+ params = &PutMetricStreamInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "PutMetricStream", params, optFns, addOperationPutMetricStreamMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*PutMetricStreamOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type PutMetricStreamInput struct {
+
+ // The ARN of the Amazon Kinesis Firehose delivery stream to use for this metric
+ // stream. This Amazon Kinesis Firehose delivery stream must already exist and must
+ // be in the same account as the metric stream.
+ //
+ // This member is required.
+ FirehoseArn *string
+
+ // If you are creating a new metric stream, this is the name for the new stream.
+ // The name must be different than the names of other metric streams in this
+ // account and Region. If you are updating a metric stream, specify the name of
+ // that stream here. Valid characters are A-Z, a-z, 0-9, "-" and "_".
+ //
+ // This member is required.
+ Name *string
+
+ // The output format for the stream. Valid values are json and opentelemetry0.7.
+ // For more information about metric stream output formats, see Metric streams
+ // output formats
+ // (https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-metric-streams-formats.html).
+ //
+ // This member is required.
+ OutputFormat types.MetricStreamOutputFormat
+
+ // The ARN of an IAM role that this metric stream will use to access Amazon Kinesis
+ // Firehose resources. This IAM role must already exist and must be in the same
+ // account as the metric stream. This IAM role must include the following
+ // permissions:
+ //
+ // * firehose:PutRecord
+ //
+ // * firehose:PutRecordBatch
+ //
+ // This member is required.
+ RoleArn *string
+
+ // If you specify this parameter, the stream sends metrics from all metric
+ // namespaces except for the namespaces that you specify here. You cannot include
+ // ExcludeFilters and IncludeFilters in the same operation.
+ ExcludeFilters []types.MetricStreamFilter
+
+ // If you specify this parameter, the stream sends only the metrics from the metric
+ // namespaces that you specify here. You cannot include IncludeFilters and
+ // ExcludeFilters in the same operation.
+ IncludeFilters []types.MetricStreamFilter
+
+ // A list of key-value pairs to associate with the metric stream. You can associate
+ // as many as 50 tags with a metric stream. Tags can help you organize and
+ // categorize your resources. You can also use them to scope user permissions by
+ // granting a user permission to access or change only resources with certain tag
+ // values.
+ Tags []types.Tag
+}
+
+type PutMetricStreamOutput struct {
+
+ // The ARN of the metric stream.
+ Arn *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationPutMetricStreamMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsquery_serializeOpPutMetricStream{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsquery_deserializeOpPutMetricStream{}, 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 = addOpPutMetricStreamValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutMetricStream(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_opPutMetricStream(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "monitoring",
+ OperationName: "PutMetricStream",
+ }
+}
diff --git a/service/cloudwatch/api_op_StartMetricStreams.go b/service/cloudwatch/api_op_StartMetricStreams.go
new file mode 100644
index 00000000000..29ebf6badfb
--- /dev/null
+++ b/service/cloudwatch/api_op_StartMetricStreams.go
@@ -0,0 +1,115 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package cloudwatch
+
+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"
+)
+
+// Starts the streaming of metrics for one or more of your metric streams.
+func (c *Client) StartMetricStreams(ctx context.Context, params *StartMetricStreamsInput, optFns ...func(*Options)) (*StartMetricStreamsOutput, error) {
+ if params == nil {
+ params = &StartMetricStreamsInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "StartMetricStreams", params, optFns, addOperationStartMetricStreamsMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*StartMetricStreamsOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type StartMetricStreamsInput struct {
+
+ // The array of the names of metric streams to start streaming. This is an "all or
+ // nothing" operation. If you do not have permission to access all of the metric
+ // streams that you list here, then none of the streams that you list in the
+ // operation will start streaming.
+ //
+ // This member is required.
+ Names []string
+}
+
+type StartMetricStreamsOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationStartMetricStreamsMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsquery_serializeOpStartMetricStreams{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsquery_deserializeOpStartMetricStreams{}, 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 = addOpStartMetricStreamsValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opStartMetricStreams(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_opStartMetricStreams(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "monitoring",
+ OperationName: "StartMetricStreams",
+ }
+}
diff --git a/service/cloudwatch/api_op_StopMetricStreams.go b/service/cloudwatch/api_op_StopMetricStreams.go
new file mode 100644
index 00000000000..2f4c75aa91f
--- /dev/null
+++ b/service/cloudwatch/api_op_StopMetricStreams.go
@@ -0,0 +1,115 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package cloudwatch
+
+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"
+)
+
+// Stops the streaming of metrics for one or more of your metric streams.
+func (c *Client) StopMetricStreams(ctx context.Context, params *StopMetricStreamsInput, optFns ...func(*Options)) (*StopMetricStreamsOutput, error) {
+ if params == nil {
+ params = &StopMetricStreamsInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "StopMetricStreams", params, optFns, addOperationStopMetricStreamsMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*StopMetricStreamsOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type StopMetricStreamsInput struct {
+
+ // The array of the names of metric streams to stop streaming. This is an "all or
+ // nothing" operation. If you do not have permission to access all of the metric
+ // streams that you list here, then none of the streams that you list in the
+ // operation will stop streaming.
+ //
+ // This member is required.
+ Names []string
+}
+
+type StopMetricStreamsOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationStopMetricStreamsMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsquery_serializeOpStopMetricStreams{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsquery_deserializeOpStopMetricStreams{}, 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 = addOpStopMetricStreamsValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opStopMetricStreams(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_opStopMetricStreams(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "monitoring",
+ OperationName: "StopMetricStreams",
+ }
+}
diff --git a/service/cloudwatch/deserializers.go b/service/cloudwatch/deserializers.go
index 2175a02dde1..a0e5acf6714 100644
--- a/service/cloudwatch/deserializers.go
+++ b/service/cloudwatch/deserializers.go
@@ -440,6 +440,120 @@ func awsAwsquery_deserializeOpErrorDeleteInsightRules(response *smithyhttp.Respo
}
}
+type awsAwsquery_deserializeOpDeleteMetricStream struct {
+}
+
+func (*awsAwsquery_deserializeOpDeleteMetricStream) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsquery_deserializeOpDeleteMetricStream) 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, awsAwsquery_deserializeOpErrorDeleteMetricStream(response, &metadata)
+ }
+ output := &DeleteMetricStreamOutput{}
+ 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)
+ t, err = decoder.GetElement("DeleteMetricStreamResult")
+ 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
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeOpDocumentDeleteMetricStreamOutput(&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 awsAwsquery_deserializeOpErrorDeleteMetricStream(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 := awsxml.GetErrorResponseComponents(errorBody, false)
+ if err != nil {
+ return err
+ }
+ if reqID := errorComponents.RequestID; len(reqID) != 0 {
+ awsmiddleware.SetRequestIDMetadata(metadata, reqID)
+ }
+ if len(errorComponents.Code) != 0 {
+ errorCode = errorComponents.Code
+ }
+ if len(errorComponents.Message) != 0 {
+ errorMessage = errorComponents.Message
+ }
+ errorBody.Seek(0, io.SeekStart)
+ switch {
+ case strings.EqualFold("InternalServiceFault", errorCode):
+ return awsAwsquery_deserializeErrorInternalServiceFault(response, errorBody)
+
+ case strings.EqualFold("InvalidParameterValueException", errorCode):
+ return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
+
+ case strings.EqualFold("MissingRequiredParameterException", errorCode):
+ return awsAwsquery_deserializeErrorMissingRequiredParameterException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
type awsAwsquery_deserializeOpDescribeAlarmHistory struct {
}
@@ -1801,14 +1915,14 @@ func awsAwsquery_deserializeOpErrorGetMetricStatistics(response *smithyhttp.Resp
}
}
-type awsAwsquery_deserializeOpGetMetricWidgetImage struct {
+type awsAwsquery_deserializeOpGetMetricStream struct {
}
-func (*awsAwsquery_deserializeOpGetMetricWidgetImage) ID() string {
+func (*awsAwsquery_deserializeOpGetMetricStream) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpGetMetricWidgetImage) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpGetMetricStream) 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)
@@ -1822,9 +1936,9 @@ func (m *awsAwsquery_deserializeOpGetMetricWidgetImage) HandleDeserialize(ctx co
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorGetMetricWidgetImage(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorGetMetricStream(response, &metadata)
}
- output := &GetMetricWidgetImageOutput{}
+ output := &GetMetricStreamOutput{}
out.Result = output
var buff [1024]byte
@@ -1845,7 +1959,7 @@ func (m *awsAwsquery_deserializeOpGetMetricWidgetImage) HandleDeserialize(ctx co
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("GetMetricWidgetImageResult")
+ t, err = decoder.GetElement("GetMetricStreamResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -1857,7 +1971,7 @@ func (m *awsAwsquery_deserializeOpGetMetricWidgetImage) HandleDeserialize(ctx co
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentGetMetricWidgetImageOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentGetMetricStreamOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -1871,7 +1985,7 @@ func (m *awsAwsquery_deserializeOpGetMetricWidgetImage) HandleDeserialize(ctx co
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorGetMetricWidgetImage(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorGetMetricStream(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)}
@@ -1896,6 +2010,21 @@ func awsAwsquery_deserializeOpErrorGetMetricWidgetImage(response *smithyhttp.Res
}
errorBody.Seek(0, io.SeekStart)
switch {
+ case strings.EqualFold("InternalServiceFault", errorCode):
+ return awsAwsquery_deserializeErrorInternalServiceFault(response, errorBody)
+
+ case strings.EqualFold("InvalidParameterCombinationException", errorCode):
+ return awsAwsquery_deserializeErrorInvalidParameterCombinationException(response, errorBody)
+
+ case strings.EqualFold("InvalidParameterValueException", errorCode):
+ return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
+
+ case strings.EqualFold("MissingRequiredParameterException", errorCode):
+ return awsAwsquery_deserializeErrorMissingRequiredParameterException(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsAwsquery_deserializeErrorResourceNotFoundException(response, errorBody)
+
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
@@ -1906,14 +2035,14 @@ func awsAwsquery_deserializeOpErrorGetMetricWidgetImage(response *smithyhttp.Res
}
}
-type awsAwsquery_deserializeOpListDashboards struct {
+type awsAwsquery_deserializeOpGetMetricWidgetImage struct {
}
-func (*awsAwsquery_deserializeOpListDashboards) ID() string {
+func (*awsAwsquery_deserializeOpGetMetricWidgetImage) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpListDashboards) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpGetMetricWidgetImage) 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)
@@ -1927,9 +2056,9 @@ func (m *awsAwsquery_deserializeOpListDashboards) HandleDeserialize(ctx context.
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorListDashboards(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorGetMetricWidgetImage(response, &metadata)
}
- output := &ListDashboardsOutput{}
+ output := &GetMetricWidgetImageOutput{}
out.Result = output
var buff [1024]byte
@@ -1950,7 +2079,7 @@ func (m *awsAwsquery_deserializeOpListDashboards) HandleDeserialize(ctx context.
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("ListDashboardsResult")
+ t, err = decoder.GetElement("GetMetricWidgetImageResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -1962,7 +2091,7 @@ func (m *awsAwsquery_deserializeOpListDashboards) HandleDeserialize(ctx context.
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentListDashboardsOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentGetMetricWidgetImageOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -1976,7 +2105,7 @@ func (m *awsAwsquery_deserializeOpListDashboards) HandleDeserialize(ctx context.
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorListDashboards(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorGetMetricWidgetImage(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)}
@@ -2001,12 +2130,6 @@ func awsAwsquery_deserializeOpErrorListDashboards(response *smithyhttp.Response,
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("InternalServiceFault", errorCode):
- return awsAwsquery_deserializeErrorInternalServiceFault(response, errorBody)
-
- case strings.EqualFold("InvalidParameterValueException", errorCode):
- return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
-
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
@@ -2017,14 +2140,14 @@ func awsAwsquery_deserializeOpErrorListDashboards(response *smithyhttp.Response,
}
}
-type awsAwsquery_deserializeOpListMetrics struct {
+type awsAwsquery_deserializeOpListDashboards struct {
}
-func (*awsAwsquery_deserializeOpListMetrics) ID() string {
+func (*awsAwsquery_deserializeOpListDashboards) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpListMetrics) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpListDashboards) 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)
@@ -2038,9 +2161,9 @@ func (m *awsAwsquery_deserializeOpListMetrics) HandleDeserialize(ctx context.Con
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorListMetrics(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorListDashboards(response, &metadata)
}
- output := &ListMetricsOutput{}
+ output := &ListDashboardsOutput{}
out.Result = output
var buff [1024]byte
@@ -2061,7 +2184,7 @@ func (m *awsAwsquery_deserializeOpListMetrics) HandleDeserialize(ctx context.Con
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("ListMetricsResult")
+ t, err = decoder.GetElement("ListDashboardsResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -2073,7 +2196,7 @@ func (m *awsAwsquery_deserializeOpListMetrics) HandleDeserialize(ctx context.Con
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentListMetricsOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentListDashboardsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -2087,7 +2210,7 @@ func (m *awsAwsquery_deserializeOpListMetrics) HandleDeserialize(ctx context.Con
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorListMetrics(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorListDashboards(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)}
@@ -2128,14 +2251,14 @@ func awsAwsquery_deserializeOpErrorListMetrics(response *smithyhttp.Response, me
}
}
-type awsAwsquery_deserializeOpListTagsForResource struct {
+type awsAwsquery_deserializeOpListMetrics struct {
}
-func (*awsAwsquery_deserializeOpListTagsForResource) ID() string {
+func (*awsAwsquery_deserializeOpListMetrics) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpListTagsForResource) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpListMetrics) 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)
@@ -2149,9 +2272,9 @@ func (m *awsAwsquery_deserializeOpListTagsForResource) HandleDeserialize(ctx con
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorListTagsForResource(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorListMetrics(response, &metadata)
}
- output := &ListTagsForResourceOutput{}
+ output := &ListMetricsOutput{}
out.Result = output
var buff [1024]byte
@@ -2172,7 +2295,7 @@ func (m *awsAwsquery_deserializeOpListTagsForResource) HandleDeserialize(ctx con
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("ListTagsForResourceResult")
+ t, err = decoder.GetElement("ListMetricsResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -2184,7 +2307,7 @@ func (m *awsAwsquery_deserializeOpListTagsForResource) HandleDeserialize(ctx con
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentListTagsForResourceOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentListMetricsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -2198,7 +2321,7 @@ func (m *awsAwsquery_deserializeOpListTagsForResource) HandleDeserialize(ctx con
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorListTagsForResource(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorListMetrics(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)}
@@ -2229,9 +2352,6 @@ func awsAwsquery_deserializeOpErrorListTagsForResource(response *smithyhttp.Resp
case strings.EqualFold("InvalidParameterValueException", errorCode):
return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
- case strings.EqualFold("ResourceNotFoundException", errorCode):
- return awsAwsquery_deserializeErrorResourceNotFoundException(response, errorBody)
-
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
@@ -2242,14 +2362,14 @@ func awsAwsquery_deserializeOpErrorListTagsForResource(response *smithyhttp.Resp
}
}
-type awsAwsquery_deserializeOpPutAnomalyDetector struct {
+type awsAwsquery_deserializeOpListMetricStreams struct {
}
-func (*awsAwsquery_deserializeOpPutAnomalyDetector) ID() string {
+func (*awsAwsquery_deserializeOpListMetricStreams) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpPutAnomalyDetector) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpListMetricStreams) 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)
@@ -2263,9 +2383,9 @@ func (m *awsAwsquery_deserializeOpPutAnomalyDetector) HandleDeserialize(ctx cont
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorPutAnomalyDetector(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorListMetricStreams(response, &metadata)
}
- output := &PutAnomalyDetectorOutput{}
+ output := &ListMetricStreamsOutput{}
out.Result = output
var buff [1024]byte
@@ -2286,7 +2406,7 @@ func (m *awsAwsquery_deserializeOpPutAnomalyDetector) HandleDeserialize(ctx cont
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("PutAnomalyDetectorResult")
+ t, err = decoder.GetElement("ListMetricStreamsResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -2298,7 +2418,7 @@ func (m *awsAwsquery_deserializeOpPutAnomalyDetector) HandleDeserialize(ctx cont
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentPutAnomalyDetectorOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentListMetricStreamsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -2312,7 +2432,7 @@ func (m *awsAwsquery_deserializeOpPutAnomalyDetector) HandleDeserialize(ctx cont
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorPutAnomalyDetector(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorListMetricStreams(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)}
@@ -2340,12 +2460,12 @@ func awsAwsquery_deserializeOpErrorPutAnomalyDetector(response *smithyhttp.Respo
case strings.EqualFold("InternalServiceFault", errorCode):
return awsAwsquery_deserializeErrorInternalServiceFault(response, errorBody)
+ case strings.EqualFold("InvalidNextToken", errorCode):
+ return awsAwsquery_deserializeErrorInvalidNextToken(response, errorBody)
+
case strings.EqualFold("InvalidParameterValueException", errorCode):
return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
- case strings.EqualFold("LimitExceededException", errorCode):
- return awsAwsquery_deserializeErrorLimitExceededException(response, errorBody)
-
case strings.EqualFold("MissingRequiredParameterException", errorCode):
return awsAwsquery_deserializeErrorMissingRequiredParameterException(response, errorBody)
@@ -2359,14 +2479,14 @@ func awsAwsquery_deserializeOpErrorPutAnomalyDetector(response *smithyhttp.Respo
}
}
-type awsAwsquery_deserializeOpPutCompositeAlarm struct {
+type awsAwsquery_deserializeOpListTagsForResource struct {
}
-func (*awsAwsquery_deserializeOpPutCompositeAlarm) ID() string {
+func (*awsAwsquery_deserializeOpListTagsForResource) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpPutCompositeAlarm) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_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)
@@ -2380,21 +2500,56 @@ func (m *awsAwsquery_deserializeOpPutCompositeAlarm) HandleDeserialize(ctx conte
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorPutCompositeAlarm(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorListTagsForResource(response, &metadata)
}
- output := &PutCompositeAlarmOutput{}
+ output := &ListTagsForResourceOutput{}
out.Result = output
- if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
+ 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 discard response body, %w", err),
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("ListTagsForResourceResult")
+ 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
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeOpDocumentListTagsForResourceOutput(&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 awsAwsquery_deserializeOpErrorPutCompositeAlarm(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_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)}
@@ -2419,10 +2574,16 @@ func awsAwsquery_deserializeOpErrorPutCompositeAlarm(response *smithyhttp.Respon
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("LimitExceededFault", errorCode):
- return awsAwsquery_deserializeErrorLimitExceededFault(response, errorBody)
+ case strings.EqualFold("InternalServiceFault", errorCode):
+ return awsAwsquery_deserializeErrorInternalServiceFault(response, errorBody)
- default:
+ case strings.EqualFold("InvalidParameterValueException", errorCode):
+ return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsAwsquery_deserializeErrorResourceNotFoundException(response, errorBody)
+
+ default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
Message: errorMessage,
@@ -2432,14 +2593,14 @@ func awsAwsquery_deserializeOpErrorPutCompositeAlarm(response *smithyhttp.Respon
}
}
-type awsAwsquery_deserializeOpPutDashboard struct {
+type awsAwsquery_deserializeOpPutAnomalyDetector struct {
}
-func (*awsAwsquery_deserializeOpPutDashboard) ID() string {
+func (*awsAwsquery_deserializeOpPutAnomalyDetector) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpPutDashboard) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpPutAnomalyDetector) 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)
@@ -2453,9 +2614,9 @@ func (m *awsAwsquery_deserializeOpPutDashboard) HandleDeserialize(ctx context.Co
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorPutDashboard(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorPutAnomalyDetector(response, &metadata)
}
- output := &PutDashboardOutput{}
+ output := &PutAnomalyDetectorOutput{}
out.Result = output
var buff [1024]byte
@@ -2476,7 +2637,7 @@ func (m *awsAwsquery_deserializeOpPutDashboard) HandleDeserialize(ctx context.Co
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("PutDashboardResult")
+ t, err = decoder.GetElement("PutAnomalyDetectorResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -2488,7 +2649,7 @@ func (m *awsAwsquery_deserializeOpPutDashboard) HandleDeserialize(ctx context.Co
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentPutDashboardOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentPutAnomalyDetectorOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -2502,7 +2663,7 @@ func (m *awsAwsquery_deserializeOpPutDashboard) HandleDeserialize(ctx context.Co
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorPutDashboard(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorPutAnomalyDetector(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)}
@@ -2527,12 +2688,18 @@ func awsAwsquery_deserializeOpErrorPutDashboard(response *smithyhttp.Response, m
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("DashboardInvalidInputError", errorCode):
- return awsAwsquery_deserializeErrorDashboardInvalidInputError(response, errorBody)
-
case strings.EqualFold("InternalServiceFault", errorCode):
return awsAwsquery_deserializeErrorInternalServiceFault(response, errorBody)
+ case strings.EqualFold("InvalidParameterValueException", errorCode):
+ return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
+
+ case strings.EqualFold("LimitExceededException", errorCode):
+ return awsAwsquery_deserializeErrorLimitExceededException(response, errorBody)
+
+ case strings.EqualFold("MissingRequiredParameterException", errorCode):
+ return awsAwsquery_deserializeErrorMissingRequiredParameterException(response, errorBody)
+
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
@@ -2543,14 +2710,14 @@ func awsAwsquery_deserializeOpErrorPutDashboard(response *smithyhttp.Response, m
}
}
-type awsAwsquery_deserializeOpPutInsightRule struct {
+type awsAwsquery_deserializeOpPutCompositeAlarm struct {
}
-func (*awsAwsquery_deserializeOpPutInsightRule) ID() string {
+func (*awsAwsquery_deserializeOpPutCompositeAlarm) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpPutInsightRule) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpPutCompositeAlarm) 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)
@@ -2564,9 +2731,82 @@ func (m *awsAwsquery_deserializeOpPutInsightRule) HandleDeserialize(ctx context.
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorPutInsightRule(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorPutCompositeAlarm(response, &metadata)
}
- output := &PutInsightRuleOutput{}
+ output := &PutCompositeAlarmOutput{}
+ out.Result = output
+
+ if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
+ return out, metadata, &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to discard response body, %w", err),
+ }
+ }
+
+ return out, metadata, err
+}
+
+func awsAwsquery_deserializeOpErrorPutCompositeAlarm(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 := awsxml.GetErrorResponseComponents(errorBody, false)
+ if err != nil {
+ return err
+ }
+ if reqID := errorComponents.RequestID; len(reqID) != 0 {
+ awsmiddleware.SetRequestIDMetadata(metadata, reqID)
+ }
+ if len(errorComponents.Code) != 0 {
+ errorCode = errorComponents.Code
+ }
+ if len(errorComponents.Message) != 0 {
+ errorMessage = errorComponents.Message
+ }
+ errorBody.Seek(0, io.SeekStart)
+ switch {
+ case strings.EqualFold("LimitExceededFault", errorCode):
+ return awsAwsquery_deserializeErrorLimitExceededFault(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsAwsquery_deserializeOpPutDashboard struct {
+}
+
+func (*awsAwsquery_deserializeOpPutDashboard) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsquery_deserializeOpPutDashboard) 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, awsAwsquery_deserializeOpErrorPutDashboard(response, &metadata)
+ }
+ output := &PutDashboardOutput{}
out.Result = output
var buff [1024]byte
@@ -2587,7 +2827,7 @@ func (m *awsAwsquery_deserializeOpPutInsightRule) HandleDeserialize(ctx context.
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("PutInsightRuleResult")
+ t, err = decoder.GetElement("PutDashboardResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -2599,7 +2839,7 @@ func (m *awsAwsquery_deserializeOpPutInsightRule) HandleDeserialize(ctx context.
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentPutInsightRuleOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentPutDashboardOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -2613,7 +2853,7 @@ func (m *awsAwsquery_deserializeOpPutInsightRule) HandleDeserialize(ctx context.
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorPutInsightRule(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorPutDashboard(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)}
@@ -2638,14 +2878,11 @@ func awsAwsquery_deserializeOpErrorPutInsightRule(response *smithyhttp.Response,
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("InvalidParameterValueException", errorCode):
- return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
-
- case strings.EqualFold("LimitExceededException", errorCode):
- return awsAwsquery_deserializeErrorLimitExceededException(response, errorBody)
+ case strings.EqualFold("DashboardInvalidInputError", errorCode):
+ return awsAwsquery_deserializeErrorDashboardInvalidInputError(response, errorBody)
- case strings.EqualFold("MissingRequiredParameterException", errorCode):
- return awsAwsquery_deserializeErrorMissingRequiredParameterException(response, errorBody)
+ case strings.EqualFold("InternalServiceFault", errorCode):
+ return awsAwsquery_deserializeErrorInternalServiceFault(response, errorBody)
default:
genericError := &smithy.GenericAPIError{
@@ -2657,14 +2894,14 @@ func awsAwsquery_deserializeOpErrorPutInsightRule(response *smithyhttp.Response,
}
}
-type awsAwsquery_deserializeOpPutMetricAlarm struct {
+type awsAwsquery_deserializeOpPutInsightRule struct {
}
-func (*awsAwsquery_deserializeOpPutMetricAlarm) ID() string {
+func (*awsAwsquery_deserializeOpPutInsightRule) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpPutMetricAlarm) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpPutInsightRule) 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)
@@ -2678,21 +2915,56 @@ func (m *awsAwsquery_deserializeOpPutMetricAlarm) HandleDeserialize(ctx context.
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorPutMetricAlarm(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorPutInsightRule(response, &metadata)
}
- output := &PutMetricAlarmOutput{}
+ output := &PutInsightRuleOutput{}
out.Result = output
- if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
+ 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 discard response body, %w", err),
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
}
}
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("PutInsightRuleResult")
+ 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
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeOpDocumentPutInsightRuleOutput(&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 awsAwsquery_deserializeOpErrorPutMetricAlarm(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorPutInsightRule(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)}
@@ -2717,8 +2989,14 @@ func awsAwsquery_deserializeOpErrorPutMetricAlarm(response *smithyhttp.Response,
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("LimitExceededFault", errorCode):
- return awsAwsquery_deserializeErrorLimitExceededFault(response, errorBody)
+ case strings.EqualFold("InvalidParameterValueException", errorCode):
+ return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
+
+ case strings.EqualFold("LimitExceededException", errorCode):
+ return awsAwsquery_deserializeErrorLimitExceededException(response, errorBody)
+
+ case strings.EqualFold("MissingRequiredParameterException", errorCode):
+ return awsAwsquery_deserializeErrorMissingRequiredParameterException(response, errorBody)
default:
genericError := &smithy.GenericAPIError{
@@ -2730,14 +3008,14 @@ func awsAwsquery_deserializeOpErrorPutMetricAlarm(response *smithyhttp.Response,
}
}
-type awsAwsquery_deserializeOpPutMetricData struct {
+type awsAwsquery_deserializeOpPutMetricAlarm struct {
}
-func (*awsAwsquery_deserializeOpPutMetricData) ID() string {
+func (*awsAwsquery_deserializeOpPutMetricAlarm) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpPutMetricData) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpPutMetricAlarm) 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)
@@ -2751,9 +3029,9 @@ func (m *awsAwsquery_deserializeOpPutMetricData) HandleDeserialize(ctx context.C
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorPutMetricData(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorPutMetricAlarm(response, &metadata)
}
- output := &PutMetricDataOutput{}
+ output := &PutMetricAlarmOutput{}
out.Result = output
if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
@@ -2765,7 +3043,7 @@ func (m *awsAwsquery_deserializeOpPutMetricData) HandleDeserialize(ctx context.C
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorPutMetricData(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorPutMetricAlarm(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)}
@@ -2790,17 +3068,8 @@ func awsAwsquery_deserializeOpErrorPutMetricData(response *smithyhttp.Response,
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("InternalServiceFault", errorCode):
- return awsAwsquery_deserializeErrorInternalServiceFault(response, errorBody)
-
- case strings.EqualFold("InvalidParameterCombinationException", errorCode):
- return awsAwsquery_deserializeErrorInvalidParameterCombinationException(response, errorBody)
-
- case strings.EqualFold("InvalidParameterValueException", errorCode):
- return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
-
- case strings.EqualFold("MissingRequiredParameterException", errorCode):
- return awsAwsquery_deserializeErrorMissingRequiredParameterException(response, errorBody)
+ case strings.EqualFold("LimitExceededFault", errorCode):
+ return awsAwsquery_deserializeErrorLimitExceededFault(response, errorBody)
default:
genericError := &smithy.GenericAPIError{
@@ -2812,14 +3081,14 @@ func awsAwsquery_deserializeOpErrorPutMetricData(response *smithyhttp.Response,
}
}
-type awsAwsquery_deserializeOpSetAlarmState struct {
+type awsAwsquery_deserializeOpPutMetricData struct {
}
-func (*awsAwsquery_deserializeOpSetAlarmState) ID() string {
+func (*awsAwsquery_deserializeOpPutMetricData) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpSetAlarmState) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpPutMetricData) 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)
@@ -2833,9 +3102,9 @@ func (m *awsAwsquery_deserializeOpSetAlarmState) HandleDeserialize(ctx context.C
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorSetAlarmState(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorPutMetricData(response, &metadata)
}
- output := &SetAlarmStateOutput{}
+ output := &PutMetricDataOutput{}
out.Result = output
if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
@@ -2847,7 +3116,7 @@ func (m *awsAwsquery_deserializeOpSetAlarmState) HandleDeserialize(ctx context.C
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorSetAlarmState(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorPutMetricData(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)}
@@ -2872,11 +3141,17 @@ func awsAwsquery_deserializeOpErrorSetAlarmState(response *smithyhttp.Response,
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("InvalidFormatFault", errorCode):
- return awsAwsquery_deserializeErrorInvalidFormatFault(response, errorBody)
+ case strings.EqualFold("InternalServiceFault", errorCode):
+ return awsAwsquery_deserializeErrorInternalServiceFault(response, errorBody)
- case strings.EqualFold("ResourceNotFound", errorCode):
- return awsAwsquery_deserializeErrorResourceNotFound(response, errorBody)
+ case strings.EqualFold("InvalidParameterCombinationException", errorCode):
+ return awsAwsquery_deserializeErrorInvalidParameterCombinationException(response, errorBody)
+
+ case strings.EqualFold("InvalidParameterValueException", errorCode):
+ return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
+
+ case strings.EqualFold("MissingRequiredParameterException", errorCode):
+ return awsAwsquery_deserializeErrorMissingRequiredParameterException(response, errorBody)
default:
genericError := &smithy.GenericAPIError{
@@ -2888,14 +3163,14 @@ func awsAwsquery_deserializeOpErrorSetAlarmState(response *smithyhttp.Response,
}
}
-type awsAwsquery_deserializeOpTagResource struct {
+type awsAwsquery_deserializeOpPutMetricStream struct {
}
-func (*awsAwsquery_deserializeOpTagResource) ID() string {
+func (*awsAwsquery_deserializeOpPutMetricStream) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpTagResource) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpPutMetricStream) 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)
@@ -2909,9 +3184,9 @@ func (m *awsAwsquery_deserializeOpTagResource) HandleDeserialize(ctx context.Con
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorTagResource(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorPutMetricStream(response, &metadata)
}
- output := &TagResourceOutput{}
+ output := &PutMetricStreamOutput{}
out.Result = output
var buff [1024]byte
@@ -2932,7 +3207,7 @@ func (m *awsAwsquery_deserializeOpTagResource) HandleDeserialize(ctx context.Con
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("TagResourceResult")
+ t, err = decoder.GetElement("PutMetricStreamResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -2944,7 +3219,7 @@ func (m *awsAwsquery_deserializeOpTagResource) HandleDeserialize(ctx context.Con
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentTagResourceOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentPutMetricStreamOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -2958,7 +3233,7 @@ func (m *awsAwsquery_deserializeOpTagResource) HandleDeserialize(ctx context.Con
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorTagResource(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorPutMetricStream(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)}
@@ -2989,11 +3264,14 @@ func awsAwsquery_deserializeOpErrorTagResource(response *smithyhttp.Response, me
case strings.EqualFold("InternalServiceFault", errorCode):
return awsAwsquery_deserializeErrorInternalServiceFault(response, errorBody)
- case strings.EqualFold("InvalidParameterValueException", errorCode):
+ case strings.EqualFold("InvalidParameterCombinationException", errorCode):
+ return awsAwsquery_deserializeErrorInvalidParameterCombinationException(response, errorBody)
+
+ case strings.EqualFold("InvalidParameterValueException", errorCode):
return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
- case strings.EqualFold("ResourceNotFoundException", errorCode):
- return awsAwsquery_deserializeErrorResourceNotFoundException(response, errorBody)
+ case strings.EqualFold("MissingRequiredParameterException", errorCode):
+ return awsAwsquery_deserializeErrorMissingRequiredParameterException(response, errorBody)
default:
genericError := &smithy.GenericAPIError{
@@ -3005,14 +3283,14 @@ func awsAwsquery_deserializeOpErrorTagResource(response *smithyhttp.Response, me
}
}
-type awsAwsquery_deserializeOpUntagResource struct {
+type awsAwsquery_deserializeOpSetAlarmState struct {
}
-func (*awsAwsquery_deserializeOpUntagResource) ID() string {
+func (*awsAwsquery_deserializeOpSetAlarmState) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpUntagResource) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpSetAlarmState) 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)
@@ -3026,9 +3304,85 @@ func (m *awsAwsquery_deserializeOpUntagResource) HandleDeserialize(ctx context.C
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorUntagResource(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorSetAlarmState(response, &metadata)
}
- output := &UntagResourceOutput{}
+ output := &SetAlarmStateOutput{}
+ out.Result = output
+
+ if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
+ return out, metadata, &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to discard response body, %w", err),
+ }
+ }
+
+ return out, metadata, err
+}
+
+func awsAwsquery_deserializeOpErrorSetAlarmState(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 := awsxml.GetErrorResponseComponents(errorBody, false)
+ if err != nil {
+ return err
+ }
+ if reqID := errorComponents.RequestID; len(reqID) != 0 {
+ awsmiddleware.SetRequestIDMetadata(metadata, reqID)
+ }
+ if len(errorComponents.Code) != 0 {
+ errorCode = errorComponents.Code
+ }
+ if len(errorComponents.Message) != 0 {
+ errorMessage = errorComponents.Message
+ }
+ errorBody.Seek(0, io.SeekStart)
+ switch {
+ case strings.EqualFold("InvalidFormatFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidFormatFault(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFound", errorCode):
+ return awsAwsquery_deserializeErrorResourceNotFound(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsAwsquery_deserializeOpStartMetricStreams struct {
+}
+
+func (*awsAwsquery_deserializeOpStartMetricStreams) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsquery_deserializeOpStartMetricStreams) 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, awsAwsquery_deserializeOpErrorStartMetricStreams(response, &metadata)
+ }
+ output := &StartMetricStreamsOutput{}
out.Result = output
var buff [1024]byte
@@ -3049,7 +3403,7 @@ func (m *awsAwsquery_deserializeOpUntagResource) HandleDeserialize(ctx context.C
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("UntagResourceResult")
+ t, err = decoder.GetElement("StartMetricStreamsResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -3061,7 +3415,7 @@ func (m *awsAwsquery_deserializeOpUntagResource) HandleDeserialize(ctx context.C
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentUntagResourceOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentStartMetricStreamsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -3075,7 +3429,7 @@ func (m *awsAwsquery_deserializeOpUntagResource) HandleDeserialize(ctx context.C
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorUntagResource(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorStartMetricStreams(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)}
@@ -3100,17 +3454,14 @@ func awsAwsquery_deserializeOpErrorUntagResource(response *smithyhttp.Response,
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("ConcurrentModificationException", errorCode):
- return awsAwsquery_deserializeErrorConcurrentModificationException(response, errorBody)
-
case strings.EqualFold("InternalServiceFault", errorCode):
return awsAwsquery_deserializeErrorInternalServiceFault(response, errorBody)
case strings.EqualFold("InvalidParameterValueException", errorCode):
return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
- case strings.EqualFold("ResourceNotFoundException", errorCode):
- return awsAwsquery_deserializeErrorResourceNotFoundException(response, errorBody)
+ case strings.EqualFold("MissingRequiredParameterException", errorCode):
+ return awsAwsquery_deserializeErrorMissingRequiredParameterException(response, errorBody)
default:
genericError := &smithy.GenericAPIError{
@@ -3122,145 +3473,361 @@ func awsAwsquery_deserializeOpErrorUntagResource(response *smithyhttp.Response,
}
}
-func awsAwsquery_deserializeErrorConcurrentModificationException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.ConcurrentModificationException{}
+type awsAwsquery_deserializeOpStopMetricStreams struct {
+}
+
+func (*awsAwsquery_deserializeOpStopMetricStreams) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsquery_deserializeOpStopMetricStreams) 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, awsAwsquery_deserializeOpErrorStopMetricStreams(response, &metadata)
+ }
+ output := &StopMetricStreamsOutput{}
+ out.Result = output
+
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
- body := io.TeeReader(errorBody, ringBuffer)
+ body := io.TeeReader(response.Body, ringBuffer)
rootDecoder := xml.NewDecoder(body)
t, err := smithyxml.FetchRootElement(rootDecoder)
if err == io.EOF {
- return output
+ return out, metadata, nil
}
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
- return &smithy.DeserializationError{
+ return out, metadata, &smithy.DeserializationError{
Err: fmt.Errorf("failed to decode response body, %w", err),
Snapshot: snapshot.Bytes(),
}
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("Error")
+ t, err = decoder.GetElement("StopMetricStreamsResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
- return &smithy.DeserializationError{
+ err = &smithy.DeserializationError{
Err: fmt.Errorf("failed to decode response body, %w", err),
Snapshot: snapshot.Bytes(),
}
+ return out, metadata, err
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentConcurrentModificationException(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentStopMetricStreamsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
- return &smithy.DeserializationError{
+ err = &smithy.DeserializationError{
Err: fmt.Errorf("failed to decode response body, %w", err),
Snapshot: snapshot.Bytes(),
}
+ return out, metadata, err
}
- return output
+ return out, metadata, err
}
-func awsAwsquery_deserializeErrorDashboardInvalidInputError(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.DashboardInvalidInputError{}
- var buff [1024]byte
- ringBuffer := smithyio.NewRingBuffer(buff[:])
- body := io.TeeReader(errorBody, ringBuffer)
- rootDecoder := xml.NewDecoder(body)
- t, err := smithyxml.FetchRootElement(rootDecoder)
- if err == io.EOF {
- return output
+func awsAwsquery_deserializeOpErrorStopMetricStreams(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 := awsxml.GetErrorResponseComponents(errorBody, false)
if err != nil {
- var snapshot bytes.Buffer
- io.Copy(&snapshot, ringBuffer)
- return &smithy.DeserializationError{
- Err: fmt.Errorf("failed to decode response body, %w", err),
- Snapshot: snapshot.Bytes(),
- }
+ return err
+ }
+ if reqID := errorComponents.RequestID; len(reqID) != 0 {
+ awsmiddleware.SetRequestIDMetadata(metadata, reqID)
+ }
+ if len(errorComponents.Code) != 0 {
+ errorCode = errorComponents.Code
+ }
+ if len(errorComponents.Message) != 0 {
+ errorMessage = errorComponents.Message
}
+ errorBody.Seek(0, io.SeekStart)
+ switch {
+ case strings.EqualFold("InternalServiceFault", errorCode):
+ return awsAwsquery_deserializeErrorInternalServiceFault(response, errorBody)
- decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("Error")
- if err != nil {
- var snapshot bytes.Buffer
- io.Copy(&snapshot, ringBuffer)
- return &smithy.DeserializationError{
- Err: fmt.Errorf("failed to decode response body, %w", err),
- Snapshot: snapshot.Bytes(),
+ case strings.EqualFold("InvalidParameterValueException", errorCode):
+ return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
+
+ case strings.EqualFold("MissingRequiredParameterException", errorCode):
+ return awsAwsquery_deserializeErrorMissingRequiredParameterException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
}
+ return genericError
+
}
+}
- decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentDashboardInvalidInputError(&output, decoder)
+type awsAwsquery_deserializeOpTagResource struct {
+}
+
+func (*awsAwsquery_deserializeOpTagResource) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsquery_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 {
- var snapshot bytes.Buffer
- io.Copy(&snapshot, ringBuffer)
- return &smithy.DeserializationError{
- Err: fmt.Errorf("failed to decode response body, %w", err),
- Snapshot: snapshot.Bytes(),
- }
+ return out, metadata, err
}
- return output
-}
+ 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, awsAwsquery_deserializeOpErrorTagResource(response, &metadata)
+ }
+ output := &TagResourceOutput{}
+ out.Result = output
-func awsAwsquery_deserializeErrorDashboardNotFoundError(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.DashboardNotFoundError{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
- body := io.TeeReader(errorBody, ringBuffer)
+ body := io.TeeReader(response.Body, ringBuffer)
rootDecoder := xml.NewDecoder(body)
t, err := smithyxml.FetchRootElement(rootDecoder)
if err == io.EOF {
- return output
+ return out, metadata, nil
}
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
- return &smithy.DeserializationError{
+ return out, metadata, &smithy.DeserializationError{
Err: fmt.Errorf("failed to decode response body, %w", err),
Snapshot: snapshot.Bytes(),
}
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("Error")
+ t, err = decoder.GetElement("TagResourceResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
- return &smithy.DeserializationError{
+ err = &smithy.DeserializationError{
Err: fmt.Errorf("failed to decode response body, %w", err),
Snapshot: snapshot.Bytes(),
}
+ return out, metadata, err
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentDashboardNotFoundError(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentTagResourceOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
- return &smithy.DeserializationError{
+ err = &smithy.DeserializationError{
Err: fmt.Errorf("failed to decode response body, %w", err),
Snapshot: snapshot.Bytes(),
}
+ return out, metadata, err
}
- return output
+ return out, metadata, err
}
-func awsAwsquery_deserializeErrorInternalServiceFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InternalServiceFault{}
- var buff [1024]byte
- ringBuffer := smithyio.NewRingBuffer(buff[:])
- body := io.TeeReader(errorBody, ringBuffer)
- rootDecoder := xml.NewDecoder(body)
- t, err := smithyxml.FetchRootElement(rootDecoder)
+func awsAwsquery_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
+
+ errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false)
+ if err != nil {
+ return err
+ }
+ if reqID := errorComponents.RequestID; len(reqID) != 0 {
+ awsmiddleware.SetRequestIDMetadata(metadata, reqID)
+ }
+ if len(errorComponents.Code) != 0 {
+ errorCode = errorComponents.Code
+ }
+ if len(errorComponents.Message) != 0 {
+ errorMessage = errorComponents.Message
+ }
+ errorBody.Seek(0, io.SeekStart)
+ switch {
+ case strings.EqualFold("ConcurrentModificationException", errorCode):
+ return awsAwsquery_deserializeErrorConcurrentModificationException(response, errorBody)
+
+ case strings.EqualFold("InternalServiceFault", errorCode):
+ return awsAwsquery_deserializeErrorInternalServiceFault(response, errorBody)
+
+ case strings.EqualFold("InvalidParameterValueException", errorCode):
+ return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsAwsquery_deserializeErrorResourceNotFoundException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsAwsquery_deserializeOpUntagResource struct {
+}
+
+func (*awsAwsquery_deserializeOpUntagResource) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsquery_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, awsAwsquery_deserializeOpErrorUntagResource(response, &metadata)
+ }
+ output := &UntagResourceOutput{}
+ 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)
+ t, err = decoder.GetElement("UntagResourceResult")
+ 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
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeOpDocumentUntagResourceOutput(&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 awsAwsquery_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
+
+ errorComponents, err := awsxml.GetErrorResponseComponents(errorBody, false)
+ if err != nil {
+ return err
+ }
+ if reqID := errorComponents.RequestID; len(reqID) != 0 {
+ awsmiddleware.SetRequestIDMetadata(metadata, reqID)
+ }
+ if len(errorComponents.Code) != 0 {
+ errorCode = errorComponents.Code
+ }
+ if len(errorComponents.Message) != 0 {
+ errorMessage = errorComponents.Message
+ }
+ errorBody.Seek(0, io.SeekStart)
+ switch {
+ case strings.EqualFold("ConcurrentModificationException", errorCode):
+ return awsAwsquery_deserializeErrorConcurrentModificationException(response, errorBody)
+
+ case strings.EqualFold("InternalServiceFault", errorCode):
+ return awsAwsquery_deserializeErrorInternalServiceFault(response, errorBody)
+
+ case strings.EqualFold("InvalidParameterValueException", errorCode):
+ return awsAwsquery_deserializeErrorInvalidParameterValueException(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsAwsquery_deserializeErrorResourceNotFoundException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsAwsquery_deserializeErrorConcurrentModificationException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ConcurrentModificationException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+ body := io.TeeReader(errorBody, ringBuffer)
+ rootDecoder := xml.NewDecoder(body)
+ t, err := smithyxml.FetchRootElement(rootDecoder)
if err == io.EOF {
return output
}
@@ -3285,7 +3852,7 @@ func awsAwsquery_deserializeErrorInternalServiceFault(response *smithyhttp.Respo
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInternalServiceFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentConcurrentModificationException(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -3298,8 +3865,8 @@ func awsAwsquery_deserializeErrorInternalServiceFault(response *smithyhttp.Respo
return output
}
-func awsAwsquery_deserializeErrorInvalidFormatFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidFormatFault{}
+func awsAwsquery_deserializeErrorDashboardInvalidInputError(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.DashboardInvalidInputError{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -3329,7 +3896,7 @@ func awsAwsquery_deserializeErrorInvalidFormatFault(response *smithyhttp.Respons
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidFormatFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentDashboardInvalidInputError(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -3342,8 +3909,8 @@ func awsAwsquery_deserializeErrorInvalidFormatFault(response *smithyhttp.Respons
return output
}
-func awsAwsquery_deserializeErrorInvalidNextToken(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidNextToken{}
+func awsAwsquery_deserializeErrorDashboardNotFoundError(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.DashboardNotFoundError{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -3373,7 +3940,7 @@ func awsAwsquery_deserializeErrorInvalidNextToken(response *smithyhttp.Response,
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidNextToken(&output, decoder)
+ err = awsAwsquery_deserializeDocumentDashboardNotFoundError(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -3386,8 +3953,8 @@ func awsAwsquery_deserializeErrorInvalidNextToken(response *smithyhttp.Response,
return output
}
-func awsAwsquery_deserializeErrorInvalidParameterCombinationException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidParameterCombinationException{}
+func awsAwsquery_deserializeErrorInternalServiceFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InternalServiceFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -3417,7 +3984,7 @@ func awsAwsquery_deserializeErrorInvalidParameterCombinationException(response *
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidParameterCombinationException(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInternalServiceFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -3430,8 +3997,8 @@ func awsAwsquery_deserializeErrorInvalidParameterCombinationException(response *
return output
}
-func awsAwsquery_deserializeErrorInvalidParameterValueException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidParameterValueException{}
+func awsAwsquery_deserializeErrorInvalidFormatFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidFormatFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -3461,7 +4028,7 @@ func awsAwsquery_deserializeErrorInvalidParameterValueException(response *smithy
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidParameterValueException(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidFormatFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -3474,8 +4041,8 @@ func awsAwsquery_deserializeErrorInvalidParameterValueException(response *smithy
return output
}
-func awsAwsquery_deserializeErrorLimitExceededException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.LimitExceededException{}
+func awsAwsquery_deserializeErrorInvalidNextToken(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidNextToken{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -3505,7 +4072,7 @@ func awsAwsquery_deserializeErrorLimitExceededException(response *smithyhttp.Res
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentLimitExceededException(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidNextToken(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -3518,8 +4085,8 @@ func awsAwsquery_deserializeErrorLimitExceededException(response *smithyhttp.Res
return output
}
-func awsAwsquery_deserializeErrorLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.LimitExceededFault{}
+func awsAwsquery_deserializeErrorInvalidParameterCombinationException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidParameterCombinationException{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -3549,7 +4116,7 @@ func awsAwsquery_deserializeErrorLimitExceededFault(response *smithyhttp.Respons
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentLimitExceededFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidParameterCombinationException(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -3562,8 +4129,8 @@ func awsAwsquery_deserializeErrorLimitExceededFault(response *smithyhttp.Respons
return output
}
-func awsAwsquery_deserializeErrorMissingRequiredParameterException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.MissingRequiredParameterException{}
+func awsAwsquery_deserializeErrorInvalidParameterValueException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidParameterValueException{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -3593,7 +4160,7 @@ func awsAwsquery_deserializeErrorMissingRequiredParameterException(response *smi
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentMissingRequiredParameterException(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidParameterValueException(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -3606,8 +4173,8 @@ func awsAwsquery_deserializeErrorMissingRequiredParameterException(response *smi
return output
}
-func awsAwsquery_deserializeErrorResourceNotFound(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.ResourceNotFound{}
+func awsAwsquery_deserializeErrorLimitExceededException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.LimitExceededException{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -3637,7 +4204,7 @@ func awsAwsquery_deserializeErrorResourceNotFound(response *smithyhttp.Response,
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentResourceNotFound(&output, decoder)
+ err = awsAwsquery_deserializeDocumentLimitExceededException(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -3650,8 +4217,8 @@ func awsAwsquery_deserializeErrorResourceNotFound(response *smithyhttp.Response,
return output
}
-func awsAwsquery_deserializeErrorResourceNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.ResourceNotFoundException{}
+func awsAwsquery_deserializeErrorLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.LimitExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -3681,7 +4248,7 @@ func awsAwsquery_deserializeErrorResourceNotFoundException(response *smithyhttp.
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentResourceNotFoundException(&output, decoder)
+ err = awsAwsquery_deserializeDocumentLimitExceededFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -3694,22 +4261,154 @@ func awsAwsquery_deserializeErrorResourceNotFoundException(response *smithyhttp.
return output
}
-func awsAwsquery_deserializeDocumentAlarmHistoryItem(v **types.AlarmHistoryItem, decoder smithyxml.NodeDecoder) error {
- if v == nil {
- return fmt.Errorf("unexpected nil of type %T", v)
+func awsAwsquery_deserializeErrorMissingRequiredParameterException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.MissingRequiredParameterException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+ body := io.TeeReader(errorBody, ringBuffer)
+ rootDecoder := xml.NewDecoder(body)
+ t, err := smithyxml.FetchRootElement(rootDecoder)
+ if err == io.EOF {
+ return output
}
- var sv *types.AlarmHistoryItem
- if *v == nil {
- sv = &types.AlarmHistoryItem{}
- } else {
- sv = *v
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
}
- for {
- t, done, err := decoder.Token()
- if err != nil {
- return err
- }
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("Error")
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeDocumentMissingRequiredParameterException(&output, decoder)
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ return output
+}
+
+func awsAwsquery_deserializeErrorResourceNotFound(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ResourceNotFound{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+ body := io.TeeReader(errorBody, ringBuffer)
+ rootDecoder := xml.NewDecoder(body)
+ t, err := smithyxml.FetchRootElement(rootDecoder)
+ if err == io.EOF {
+ return output
+ }
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("Error")
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeDocumentResourceNotFound(&output, decoder)
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ return output
+}
+
+func awsAwsquery_deserializeErrorResourceNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ResourceNotFoundException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+ body := io.TeeReader(errorBody, ringBuffer)
+ rootDecoder := xml.NewDecoder(body)
+ t, err := smithyxml.FetchRootElement(rootDecoder)
+ if err == io.EOF {
+ return output
+ }
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("Error")
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeDocumentResourceNotFoundException(&output, decoder)
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ return output
+}
+
+func awsAwsquery_deserializeDocumentAlarmHistoryItem(v **types.AlarmHistoryItem, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.AlarmHistoryItem
+ if *v == nil {
+ sv = &types.AlarmHistoryItem{}
+ } else {
+ sv = *v
+ }
+
+ for {
+ t, done, err := decoder.Token()
+ if err != nil {
+ return err
+ }
if done {
break
}
@@ -7160,7 +7859,394 @@ func awsAwsquery_deserializeDocumentMetricAlarm(v **types.MetricAlarm, decoder s
}
default:
- // Do nothing and ignore the unexpected tag element
+ // Do nothing and ignore the unexpected tag element
+ err = decoder.Decoder.Skip()
+ if err != nil {
+ return err
+ }
+
+ }
+ decoder = originalDecoder
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsquery_deserializeDocumentMetricAlarms(v *[]types.MetricAlarm, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv []types.MetricAlarm
+ if *v == nil {
+ sv = make([]types.MetricAlarm, 0)
+ } else {
+ sv = *v
+ }
+
+ originalDecoder := decoder
+ for {
+ t, done, err := decoder.Token()
+ if err != nil {
+ return err
+ }
+ if done {
+ break
+ }
+ switch {
+ case strings.EqualFold("member", t.Name.Local):
+ var col types.MetricAlarm
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &col
+ if err := awsAwsquery_deserializeDocumentMetricAlarm(&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 awsAwsquery_deserializeDocumentMetricAlarmsUnwrapped(v *[]types.MetricAlarm, decoder smithyxml.NodeDecoder) error {
+ var sv []types.MetricAlarm
+ if *v == nil {
+ sv = make([]types.MetricAlarm, 0)
+ } else {
+ sv = *v
+ }
+
+ switch {
+ default:
+ var mv types.MetricAlarm
+ t := decoder.StartEl
+ _ = t
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &mv
+ if err := awsAwsquery_deserializeDocumentMetricAlarm(&destAddr, nodeDecoder); err != nil {
+ return err
+ }
+ mv = *destAddr
+ sv = append(sv, mv)
+ }
+ *v = sv
+ return nil
+}
+func awsAwsquery_deserializeDocumentMetricDataQueries(v *[]types.MetricDataQuery, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv []types.MetricDataQuery
+ if *v == nil {
+ sv = make([]types.MetricDataQuery, 0)
+ } else {
+ sv = *v
+ }
+
+ originalDecoder := decoder
+ for {
+ t, done, err := decoder.Token()
+ if err != nil {
+ return err
+ }
+ if done {
+ break
+ }
+ switch {
+ case strings.EqualFold("member", t.Name.Local):
+ var col types.MetricDataQuery
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &col
+ if err := awsAwsquery_deserializeDocumentMetricDataQuery(&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 awsAwsquery_deserializeDocumentMetricDataQueriesUnwrapped(v *[]types.MetricDataQuery, decoder smithyxml.NodeDecoder) error {
+ var sv []types.MetricDataQuery
+ if *v == nil {
+ sv = make([]types.MetricDataQuery, 0)
+ } else {
+ sv = *v
+ }
+
+ switch {
+ default:
+ var mv types.MetricDataQuery
+ t := decoder.StartEl
+ _ = t
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &mv
+ if err := awsAwsquery_deserializeDocumentMetricDataQuery(&destAddr, nodeDecoder); err != nil {
+ return err
+ }
+ mv = *destAddr
+ sv = append(sv, mv)
+ }
+ *v = sv
+ return nil
+}
+func awsAwsquery_deserializeDocumentMetricDataQuery(v **types.MetricDataQuery, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.MetricDataQuery
+ if *v == nil {
+ sv = &types.MetricDataQuery{}
+ } 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("Expression", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Expression = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Id", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Id = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Label", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Label = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("MetricStat", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentMetricStat(&sv.MetricStat, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("Period", 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.Period = ptr.Int32(int32(i64))
+ }
+
+ case strings.EqualFold("ReturnData", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv, err := strconv.ParseBool(string(val))
+ if err != nil {
+ return fmt.Errorf("expected ReturnData to be of type *bool, got %T instead", val)
+ }
+ sv.ReturnData = ptr.Bool(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 awsAwsquery_deserializeDocumentMetricDataResult(v **types.MetricDataResult, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.MetricDataResult
+ if *v == nil {
+ sv = &types.MetricDataResult{}
+ } 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("Id", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Id = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Label", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Label = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Messages", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentMetricDataResultMessages(&sv.Messages, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("StatusCode", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.StatusCode = types.StatusCode(xtv)
+ }
+
+ case strings.EqualFold("Timestamps", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentTimestamps(&sv.Timestamps, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("Values", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentDatapointValues(&sv.Values, nodeDecoder); err != nil {
+ return err
+ }
+
+ 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 awsAwsquery_deserializeDocumentMetricDataResultMessages(v *[]types.MessageData, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv []types.MessageData
+ if *v == nil {
+ sv = make([]types.MessageData, 0)
+ } else {
+ sv = *v
+ }
+
+ originalDecoder := decoder
+ for {
+ t, done, err := decoder.Token()
+ if err != nil {
+ return err
+ }
+ if done {
+ break
+ }
+ switch {
+ case strings.EqualFold("member", t.Name.Local):
+ var col types.MessageData
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &col
+ if err := awsAwsquery_deserializeDocumentMessageData(&destAddr, nodeDecoder); err != nil {
+ return err
+ }
+ col = *destAddr
+ sv = append(sv, col)
+
+ default:
err = decoder.Decoder.Skip()
if err != nil {
return err
@@ -7173,13 +8259,37 @@ func awsAwsquery_deserializeDocumentMetricAlarm(v **types.MetricAlarm, decoder s
return nil
}
-func awsAwsquery_deserializeDocumentMetricAlarms(v *[]types.MetricAlarm, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentMetricDataResultMessagesUnwrapped(v *[]types.MessageData, decoder smithyxml.NodeDecoder) error {
+ var sv []types.MessageData
+ if *v == nil {
+ sv = make([]types.MessageData, 0)
+ } else {
+ sv = *v
+ }
+
+ switch {
+ default:
+ var mv types.MessageData
+ t := decoder.StartEl
+ _ = t
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &mv
+ if err := awsAwsquery_deserializeDocumentMessageData(&destAddr, nodeDecoder); err != nil {
+ return err
+ }
+ mv = *destAddr
+ sv = append(sv, mv)
+ }
+ *v = sv
+ return nil
+}
+func awsAwsquery_deserializeDocumentMetricDataResults(v *[]types.MetricDataResult, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv []types.MetricAlarm
+ var sv []types.MetricDataResult
if *v == nil {
- sv = make([]types.MetricAlarm, 0)
+ sv = make([]types.MetricDataResult, 0)
} else {
sv = *v
}
@@ -7195,10 +8305,10 @@ func awsAwsquery_deserializeDocumentMetricAlarms(v *[]types.MetricAlarm, decoder
}
switch {
case strings.EqualFold("member", t.Name.Local):
- var col types.MetricAlarm
+ var col types.MetricDataResult
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
destAddr := &col
- if err := awsAwsquery_deserializeDocumentMetricAlarm(&destAddr, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentMetricDataResult(&destAddr, nodeDecoder); err != nil {
return err
}
col = *destAddr
@@ -7217,22 +8327,22 @@ func awsAwsquery_deserializeDocumentMetricAlarms(v *[]types.MetricAlarm, decoder
return nil
}
-func awsAwsquery_deserializeDocumentMetricAlarmsUnwrapped(v *[]types.MetricAlarm, decoder smithyxml.NodeDecoder) error {
- var sv []types.MetricAlarm
+func awsAwsquery_deserializeDocumentMetricDataResultsUnwrapped(v *[]types.MetricDataResult, decoder smithyxml.NodeDecoder) error {
+ var sv []types.MetricDataResult
if *v == nil {
- sv = make([]types.MetricAlarm, 0)
+ sv = make([]types.MetricDataResult, 0)
} else {
sv = *v
}
switch {
default:
- var mv types.MetricAlarm
+ var mv types.MetricDataResult
t := decoder.StartEl
_ = t
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
destAddr := &mv
- if err := awsAwsquery_deserializeDocumentMetricAlarm(&destAddr, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentMetricDataResult(&destAddr, nodeDecoder); err != nil {
return err
}
mv = *destAddr
@@ -7241,13 +8351,13 @@ func awsAwsquery_deserializeDocumentMetricAlarmsUnwrapped(v *[]types.MetricAlarm
*v = sv
return nil
}
-func awsAwsquery_deserializeDocumentMetricDataQueries(v *[]types.MetricDataQuery, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentMetrics(v *[]types.Metric, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv []types.MetricDataQuery
+ var sv []types.Metric
if *v == nil {
- sv = make([]types.MetricDataQuery, 0)
+ sv = make([]types.Metric, 0)
} else {
sv = *v
}
@@ -7263,10 +8373,10 @@ func awsAwsquery_deserializeDocumentMetricDataQueries(v *[]types.MetricDataQuery
}
switch {
case strings.EqualFold("member", t.Name.Local):
- var col types.MetricDataQuery
+ var col types.Metric
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
destAddr := &col
- if err := awsAwsquery_deserializeDocumentMetricDataQuery(&destAddr, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentMetric(&destAddr, nodeDecoder); err != nil {
return err
}
col = *destAddr
@@ -7285,22 +8395,22 @@ func awsAwsquery_deserializeDocumentMetricDataQueries(v *[]types.MetricDataQuery
return nil
}
-func awsAwsquery_deserializeDocumentMetricDataQueriesUnwrapped(v *[]types.MetricDataQuery, decoder smithyxml.NodeDecoder) error {
- var sv []types.MetricDataQuery
+func awsAwsquery_deserializeDocumentMetricsUnwrapped(v *[]types.Metric, decoder smithyxml.NodeDecoder) error {
+ var sv []types.Metric
if *v == nil {
- sv = make([]types.MetricDataQuery, 0)
+ sv = make([]types.Metric, 0)
} else {
sv = *v
}
switch {
default:
- var mv types.MetricDataQuery
+ var mv types.Metric
t := decoder.StartEl
_ = t
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
destAddr := &mv
- if err := awsAwsquery_deserializeDocumentMetricDataQuery(&destAddr, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentMetric(&destAddr, nodeDecoder); err != nil {
return err
}
mv = *destAddr
@@ -7309,13 +8419,13 @@ func awsAwsquery_deserializeDocumentMetricDataQueriesUnwrapped(v *[]types.Metric
*v = sv
return nil
}
-func awsAwsquery_deserializeDocumentMetricDataQuery(v **types.MetricDataQuery, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentMetricStat(v **types.MetricStat, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.MetricDataQuery
+ var sv *types.MetricStat
if *v == nil {
- sv = &types.MetricDataQuery{}
+ sv = &types.MetricStat{}
} else {
sv = *v
}
@@ -7331,7 +8441,13 @@ func awsAwsquery_deserializeDocumentMetricDataQuery(v **types.MetricDataQuery, d
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("Expression", t.Name.Local):
+ case strings.EqualFold("Metric", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentMetric(&sv.Metric, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("Period", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -7341,10 +8457,14 @@ func awsAwsquery_deserializeDocumentMetricDataQuery(v **types.MetricDataQuery, d
}
{
xtv := string(val)
- sv.Expression = ptr.String(xtv)
+ i64, err := strconv.ParseInt(xtv, 10, 64)
+ if err != nil {
+ return err
+ }
+ sv.Period = ptr.Int32(int32(i64))
}
- case strings.EqualFold("Id", t.Name.Local):
+ case strings.EqualFold("Stat", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -7354,10 +8474,10 @@ func awsAwsquery_deserializeDocumentMetricDataQuery(v **types.MetricDataQuery, d
}
{
xtv := string(val)
- sv.Id = ptr.String(xtv)
+ sv.Stat = ptr.String(xtv)
}
- case strings.EqualFold("Label", t.Name.Local):
+ case strings.EqualFold("Unit", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -7367,16 +8487,114 @@ func awsAwsquery_deserializeDocumentMetricDataQuery(v **types.MetricDataQuery, d
}
{
xtv := string(val)
- sv.Label = ptr.String(xtv)
+ sv.Unit = types.StandardUnit(xtv)
}
- case strings.EqualFold("MetricStat", t.Name.Local):
+ 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 awsAwsquery_deserializeDocumentMetricStreamEntries(v *[]types.MetricStreamEntry, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv []types.MetricStreamEntry
+ if *v == nil {
+ sv = make([]types.MetricStreamEntry, 0)
+ } else {
+ sv = *v
+ }
+
+ originalDecoder := decoder
+ for {
+ t, done, err := decoder.Token()
+ if err != nil {
+ return err
+ }
+ if done {
+ break
+ }
+ switch {
+ case strings.EqualFold("member", t.Name.Local):
+ var col types.MetricStreamEntry
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentMetricStat(&sv.MetricStat, nodeDecoder); err != nil {
+ destAddr := &col
+ if err := awsAwsquery_deserializeDocumentMetricStreamEntry(&destAddr, nodeDecoder); err != nil {
return err
}
+ col = *destAddr
+ sv = append(sv, col)
- case strings.EqualFold("Period", t.Name.Local):
+ default:
+ err = decoder.Decoder.Skip()
+ if err != nil {
+ return err
+ }
+
+ }
+ decoder = originalDecoder
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsquery_deserializeDocumentMetricStreamEntriesUnwrapped(v *[]types.MetricStreamEntry, decoder smithyxml.NodeDecoder) error {
+ var sv []types.MetricStreamEntry
+ if *v == nil {
+ sv = make([]types.MetricStreamEntry, 0)
+ } else {
+ sv = *v
+ }
+
+ switch {
+ default:
+ var mv types.MetricStreamEntry
+ t := decoder.StartEl
+ _ = t
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &mv
+ if err := awsAwsquery_deserializeDocumentMetricStreamEntry(&destAddr, nodeDecoder); err != nil {
+ return err
+ }
+ mv = *destAddr
+ sv = append(sv, mv)
+ }
+ *v = sv
+ return nil
+}
+func awsAwsquery_deserializeDocumentMetricStreamEntry(v **types.MetricStreamEntry, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.MetricStreamEntry
+ if *v == nil {
+ sv = &types.MetricStreamEntry{}
+ } 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("Arn", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -7386,14 +8604,27 @@ func awsAwsquery_deserializeDocumentMetricDataQuery(v **types.MetricDataQuery, d
}
{
xtv := string(val)
- i64, err := strconv.ParseInt(xtv, 10, 64)
+ sv.Arn = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("CreationDate", 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.Period = ptr.Int32(int32(i64))
+ sv.CreationDate = ptr.Time(t)
}
- case strings.EqualFold("ReturnData", t.Name.Local):
+ case strings.EqualFold("FirehoseArn", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -7402,11 +8633,64 @@ func awsAwsquery_deserializeDocumentMetricDataQuery(v **types.MetricDataQuery, d
break
}
{
- xtv, err := strconv.ParseBool(string(val))
+ xtv := string(val)
+ sv.FirehoseArn = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("LastUpdateDate", 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 fmt.Errorf("expected ReturnData to be of type *bool, got %T instead", val)
+ return err
}
- sv.ReturnData = ptr.Bool(xtv)
+ sv.LastUpdateDate = ptr.Time(t)
+ }
+
+ case strings.EqualFold("Name", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Name = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("OutputFormat", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.OutputFormat = types.MetricStreamOutputFormat(xtv)
+ }
+
+ 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 = ptr.String(xtv)
}
default:
@@ -7423,13 +8707,13 @@ func awsAwsquery_deserializeDocumentMetricDataQuery(v **types.MetricDataQuery, d
return nil
}
-func awsAwsquery_deserializeDocumentMetricDataResult(v **types.MetricDataResult, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentMetricStreamFilter(v **types.MetricStreamFilter, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.MetricDataResult
+ var sv *types.MetricStreamFilter
if *v == nil {
- sv = &types.MetricDataResult{}
+ sv = &types.MetricStreamFilter{}
} else {
sv = *v
}
@@ -7445,39 +8729,7 @@ func awsAwsquery_deserializeDocumentMetricDataResult(v **types.MetricDataResult,
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("Id", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
- return err
- }
- if val == nil {
- break
- }
- {
- xtv := string(val)
- sv.Id = ptr.String(xtv)
- }
-
- case strings.EqualFold("Label", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
- return err
- }
- if val == nil {
- break
- }
- {
- xtv := string(val)
- sv.Label = ptr.String(xtv)
- }
-
- case strings.EqualFold("Messages", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentMetricDataResultMessages(&sv.Messages, nodeDecoder); err != nil {
- return err
- }
-
- case strings.EqualFold("StatusCode", t.Name.Local):
+ case strings.EqualFold("Namespace", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -7487,19 +8739,7 @@ func awsAwsquery_deserializeDocumentMetricDataResult(v **types.MetricDataResult,
}
{
xtv := string(val)
- sv.StatusCode = types.StatusCode(xtv)
- }
-
- case strings.EqualFold("Timestamps", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentTimestamps(&sv.Timestamps, nodeDecoder); err != nil {
- return err
- }
-
- case strings.EqualFold("Values", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentDatapointValues(&sv.Values, nodeDecoder); err != nil {
- return err
+ sv.Namespace = ptr.String(xtv)
}
default:
@@ -7516,13 +8756,13 @@ func awsAwsquery_deserializeDocumentMetricDataResult(v **types.MetricDataResult,
return nil
}
-func awsAwsquery_deserializeDocumentMetricDataResultMessages(v *[]types.MessageData, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentMetricStreamFilters(v *[]types.MetricStreamFilter, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv []types.MessageData
+ var sv []types.MetricStreamFilter
if *v == nil {
- sv = make([]types.MessageData, 0)
+ sv = make([]types.MetricStreamFilter, 0)
} else {
sv = *v
}
@@ -7538,10 +8778,10 @@ func awsAwsquery_deserializeDocumentMetricDataResultMessages(v *[]types.MessageD
}
switch {
case strings.EqualFold("member", t.Name.Local):
- var col types.MessageData
+ var col types.MetricStreamFilter
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
destAddr := &col
- if err := awsAwsquery_deserializeDocumentMessageData(&destAddr, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentMetricStreamFilter(&destAddr, nodeDecoder); err != nil {
return err
}
col = *destAddr
@@ -7560,22 +8800,22 @@ func awsAwsquery_deserializeDocumentMetricDataResultMessages(v *[]types.MessageD
return nil
}
-func awsAwsquery_deserializeDocumentMetricDataResultMessagesUnwrapped(v *[]types.MessageData, decoder smithyxml.NodeDecoder) error {
- var sv []types.MessageData
+func awsAwsquery_deserializeDocumentMetricStreamFiltersUnwrapped(v *[]types.MetricStreamFilter, decoder smithyxml.NodeDecoder) error {
+ var sv []types.MetricStreamFilter
if *v == nil {
- sv = make([]types.MessageData, 0)
+ sv = make([]types.MetricStreamFilter, 0)
} else {
sv = *v
}
switch {
default:
- var mv types.MessageData
+ var mv types.MetricStreamFilter
t := decoder.StartEl
_ = t
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
destAddr := &mv
- if err := awsAwsquery_deserializeDocumentMessageData(&destAddr, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentMetricStreamFilter(&destAddr, nodeDecoder); err != nil {
return err
}
mv = *destAddr
@@ -7584,18 +8824,17 @@ func awsAwsquery_deserializeDocumentMetricDataResultMessagesUnwrapped(v *[]types
*v = sv
return nil
}
-func awsAwsquery_deserializeDocumentMetricDataResults(v *[]types.MetricDataResult, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentMissingRequiredParameterException(v **types.MissingRequiredParameterException, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv []types.MetricDataResult
+ var sv *types.MissingRequiredParameterException
if *v == nil {
- sv = make([]types.MetricDataResult, 0)
+ sv = &types.MissingRequiredParameterException{}
} else {
sv = *v
}
- originalDecoder := decoder
for {
t, done, err := decoder.Token()
if err != nil {
@@ -7604,18 +8843,24 @@ func awsAwsquery_deserializeDocumentMetricDataResults(v *[]types.MetricDataResul
if done {
break
}
+ originalDecoder := decoder
+ decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("member", t.Name.Local):
- var col types.MetricDataResult
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- destAddr := &col
- if err := awsAwsquery_deserializeDocumentMetricDataResult(&destAddr, nodeDecoder); err != nil {
+ case strings.EqualFold("message", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
return err
}
- col = *destAddr
- sv = append(sv, col)
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Message = ptr.String(xtv)
+ }
default:
+ // Do nothing and ignore the unexpected tag element
err = decoder.Decoder.Skip()
if err != nil {
return err
@@ -7628,42 +8873,17 @@ func awsAwsquery_deserializeDocumentMetricDataResults(v *[]types.MetricDataResul
return nil
}
-func awsAwsquery_deserializeDocumentMetricDataResultsUnwrapped(v *[]types.MetricDataResult, decoder smithyxml.NodeDecoder) error {
- var sv []types.MetricDataResult
- if *v == nil {
- sv = make([]types.MetricDataResult, 0)
- } else {
- sv = *v
- }
-
- switch {
- default:
- var mv types.MetricDataResult
- t := decoder.StartEl
- _ = t
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- destAddr := &mv
- if err := awsAwsquery_deserializeDocumentMetricDataResult(&destAddr, nodeDecoder); err != nil {
- return err
- }
- mv = *destAddr
- sv = append(sv, mv)
- }
- *v = sv
- return nil
-}
-func awsAwsquery_deserializeDocumentMetrics(v *[]types.Metric, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentPartialFailure(v **types.PartialFailure, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv []types.Metric
+ var sv *types.PartialFailure
if *v == nil {
- sv = make([]types.Metric, 0)
+ sv = &types.PartialFailure{}
} else {
sv = *v
}
- originalDecoder := decoder
for {
t, done, err := decoder.Token()
if err != nil {
@@ -7672,18 +8892,63 @@ func awsAwsquery_deserializeDocumentMetrics(v *[]types.Metric, decoder smithyxml
if done {
break
}
+ originalDecoder := decoder
+ decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("member", t.Name.Local):
- var col types.Metric
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- destAddr := &col
- if err := awsAwsquery_deserializeDocumentMetric(&destAddr, nodeDecoder); err != nil {
+ case strings.EqualFold("ExceptionType", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
return err
}
- col = *destAddr
- sv = append(sv, col)
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ExceptionType = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("FailureCode", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.FailureCode = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("FailureDescription", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.FailureDescription = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("FailureResource", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.FailureResource = ptr.String(xtv)
+ }
default:
+ // Do nothing and ignore the unexpected tag element
err = decoder.Decoder.Skip()
if err != nil {
return err
@@ -7696,41 +8961,88 @@ func awsAwsquery_deserializeDocumentMetrics(v *[]types.Metric, decoder smithyxml
return nil
}
-func awsAwsquery_deserializeDocumentMetricsUnwrapped(v *[]types.Metric, decoder smithyxml.NodeDecoder) error {
- var sv []types.Metric
+func awsAwsquery_deserializeDocumentRange(v **types.Range, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.Range
if *v == nil {
- sv = make([]types.Metric, 0)
+ sv = &types.Range{}
} else {
sv = *v
}
- switch {
- default:
- var mv types.Metric
- t := decoder.StartEl
- _ = t
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- destAddr := &mv
- if err := awsAwsquery_deserializeDocumentMetric(&destAddr, nodeDecoder); err != nil {
+ for {
+ t, done, err := decoder.Token()
+ if err != nil {
return err
}
- mv = *destAddr
- sv = append(sv, mv)
+ if done {
+ break
+ }
+ originalDecoder := decoder
+ decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
+ switch {
+ case strings.EqualFold("EndTime", 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.EndTime = ptr.Time(t)
+ }
+
+ case strings.EqualFold("StartTime", 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.StartTime = 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 awsAwsquery_deserializeDocumentMetricStat(v **types.MetricStat, decoder smithyxml.NodeDecoder) error {
+
+func awsAwsquery_deserializeDocumentResourceList(v *[]string, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.MetricStat
+ var sv []string
if *v == nil {
- sv = &types.MetricStat{}
+ sv = make([]string, 0)
} else {
sv = *v
}
+ originalDecoder := decoder
for {
t, done, err := decoder.Token()
if err != nil {
@@ -7739,46 +9051,11 @@ func awsAwsquery_deserializeDocumentMetricStat(v **types.MetricStat, decoder smi
if done {
break
}
- originalDecoder := decoder
- decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
+ memberDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ decoder = memberDecoder
switch {
- case strings.EqualFold("Metric", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentMetric(&sv.Metric, nodeDecoder); err != nil {
- return err
- }
-
- case strings.EqualFold("Period", 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.Period = ptr.Int32(int32(i64))
- }
-
- case strings.EqualFold("Stat", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
- return err
- }
- if val == nil {
- break
- }
- {
- xtv := string(val)
- sv.Stat = ptr.String(xtv)
- }
-
- case strings.EqualFold("Unit", t.Name.Local):
+ case strings.EqualFold("member", t.Name.Local):
+ var col string
val, err := decoder.Value()
if err != nil {
return err
@@ -7788,11 +9065,11 @@ func awsAwsquery_deserializeDocumentMetricStat(v **types.MetricStat, decoder smi
}
{
xtv := string(val)
- sv.Unit = types.StandardUnit(xtv)
+ col = xtv
}
+ sv = append(sv, col)
default:
- // Do nothing and ignore the unexpected tag element
err = decoder.Decoder.Skip()
if err != nil {
return err
@@ -7805,13 +9082,42 @@ func awsAwsquery_deserializeDocumentMetricStat(v **types.MetricStat, decoder smi
return nil
}
-func awsAwsquery_deserializeDocumentMissingRequiredParameterException(v **types.MissingRequiredParameterException, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentResourceListUnwrapped(v *[]string, decoder smithyxml.NodeDecoder) error {
+ var sv []string
+ if *v == nil {
+ sv = make([]string, 0)
+ } else {
+ sv = *v
+ }
+
+ switch {
+ default:
+ var mv string
+ t := decoder.StartEl
+ _ = t
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ mv = xtv
+ }
+ sv = append(sv, mv)
+ }
+ *v = sv
+ return nil
+}
+func awsAwsquery_deserializeDocumentResourceNotFound(v **types.ResourceNotFound, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.MissingRequiredParameterException
+ var sv *types.ResourceNotFound
if *v == nil {
- sv = &types.MissingRequiredParameterException{}
+ sv = &types.ResourceNotFound{}
} else {
sv = *v
}
@@ -7854,13 +9160,13 @@ func awsAwsquery_deserializeDocumentMissingRequiredParameterException(v **types.
return nil
}
-func awsAwsquery_deserializeDocumentPartialFailure(v **types.PartialFailure, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentResourceNotFoundException(v **types.ResourceNotFoundException, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.PartialFailure
+ var sv *types.ResourceNotFoundException
if *v == nil {
- sv = &types.PartialFailure{}
+ sv = &types.ResourceNotFoundException{}
} else {
sv = *v
}
@@ -7876,20 +9182,7 @@ func awsAwsquery_deserializeDocumentPartialFailure(v **types.PartialFailure, dec
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("ExceptionType", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
- return err
- }
- if val == nil {
- break
- }
- {
- xtv := string(val)
- sv.ExceptionType = ptr.String(xtv)
- }
-
- case strings.EqualFold("FailureCode", t.Name.Local):
+ case strings.EqualFold("Message", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -7899,10 +9192,10 @@ func awsAwsquery_deserializeDocumentPartialFailure(v **types.PartialFailure, dec
}
{
xtv := string(val)
- sv.FailureCode = ptr.String(xtv)
+ sv.Message = ptr.String(xtv)
}
- case strings.EqualFold("FailureDescription", t.Name.Local):
+ case strings.EqualFold("ResourceId", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -7912,10 +9205,10 @@ func awsAwsquery_deserializeDocumentPartialFailure(v **types.PartialFailure, dec
}
{
xtv := string(val)
- sv.FailureDescription = ptr.String(xtv)
+ sv.ResourceId = ptr.String(xtv)
}
- case strings.EqualFold("FailureResource", t.Name.Local):
+ case strings.EqualFold("ResourceType", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -7925,7 +9218,7 @@ func awsAwsquery_deserializeDocumentPartialFailure(v **types.PartialFailure, dec
}
{
xtv := string(val)
- sv.FailureResource = ptr.String(xtv)
+ sv.ResourceType = ptr.String(xtv)
}
default:
@@ -7942,13 +9235,13 @@ func awsAwsquery_deserializeDocumentPartialFailure(v **types.PartialFailure, dec
return nil
}
-func awsAwsquery_deserializeDocumentRange(v **types.Range, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentTag(v **types.Tag, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.Range
+ var sv *types.Tag
if *v == nil {
- sv = &types.Range{}
+ sv = &types.Tag{}
} else {
sv = *v
}
@@ -7964,7 +9257,7 @@ func awsAwsquery_deserializeDocumentRange(v **types.Range, decoder smithyxml.Nod
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("EndTime", t.Name.Local):
+ case strings.EqualFold("Key", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -7974,14 +9267,10 @@ func awsAwsquery_deserializeDocumentRange(v **types.Range, decoder smithyxml.Nod
}
{
xtv := string(val)
- t, err := smithytime.ParseDateTime(xtv)
- if err != nil {
- return err
- }
- sv.EndTime = ptr.Time(t)
+ sv.Key = ptr.String(xtv)
}
- case strings.EqualFold("StartTime", t.Name.Local):
+ case strings.EqualFold("Value", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -7991,11 +9280,7 @@ func awsAwsquery_deserializeDocumentRange(v **types.Range, decoder smithyxml.Nod
}
{
xtv := string(val)
- t, err := smithytime.ParseDateTime(xtv)
- if err != nil {
- return err
- }
- sv.StartTime = ptr.Time(t)
+ sv.Value = ptr.String(xtv)
}
default:
@@ -8012,13 +9297,81 @@ func awsAwsquery_deserializeDocumentRange(v **types.Range, decoder smithyxml.Nod
return nil
}
-func awsAwsquery_deserializeDocumentResourceList(v *[]string, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentTagList(v *[]types.Tag, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv []string
+ var sv []types.Tag
if *v == nil {
- sv = make([]string, 0)
+ sv = make([]types.Tag, 0)
+ } else {
+ sv = *v
+ }
+
+ originalDecoder := decoder
+ for {
+ t, done, err := decoder.Token()
+ if err != nil {
+ return err
+ }
+ if done {
+ break
+ }
+ switch {
+ case strings.EqualFold("member", t.Name.Local):
+ var col types.Tag
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &col
+ if err := awsAwsquery_deserializeDocumentTag(&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 awsAwsquery_deserializeDocumentTagListUnwrapped(v *[]types.Tag, decoder smithyxml.NodeDecoder) error {
+ var sv []types.Tag
+ if *v == nil {
+ sv = make([]types.Tag, 0)
+ } else {
+ sv = *v
+ }
+
+ switch {
+ default:
+ var mv types.Tag
+ t := decoder.StartEl
+ _ = t
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &mv
+ if err := awsAwsquery_deserializeDocumentTag(&destAddr, nodeDecoder); err != nil {
+ return err
+ }
+ mv = *destAddr
+ sv = append(sv, mv)
+ }
+ *v = sv
+ return nil
+}
+func awsAwsquery_deserializeDocumentTimestamps(v *[]time.Time, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv []time.Time
+ if *v == nil {
+ sv = make([]time.Time, 0)
} else {
sv = *v
}
@@ -8036,7 +9389,7 @@ func awsAwsquery_deserializeDocumentResourceList(v *[]string, decoder smithyxml.
decoder = memberDecoder
switch {
case strings.EqualFold("member", t.Name.Local):
- var col string
+ var col time.Time
val, err := decoder.Value()
if err != nil {
return err
@@ -8046,7 +9399,11 @@ func awsAwsquery_deserializeDocumentResourceList(v *[]string, decoder smithyxml.
}
{
xtv := string(val)
- col = xtv
+ t, err := smithytime.ParseDateTime(xtv)
+ if err != nil {
+ return err
+ }
+ col = t
}
sv = append(sv, col)
@@ -8063,17 +9420,17 @@ func awsAwsquery_deserializeDocumentResourceList(v *[]string, decoder smithyxml.
return nil
}
-func awsAwsquery_deserializeDocumentResourceListUnwrapped(v *[]string, decoder smithyxml.NodeDecoder) error {
- var sv []string
+func awsAwsquery_deserializeDocumentTimestampsUnwrapped(v *[]time.Time, decoder smithyxml.NodeDecoder) error {
+ var sv []time.Time
if *v == nil {
- sv = make([]string, 0)
+ sv = make([]time.Time, 0)
} else {
sv = *v
}
switch {
default:
- var mv string
+ var mv time.Time
t := decoder.StartEl
_ = t
val, err := decoder.Value()
@@ -8085,20 +9442,24 @@ func awsAwsquery_deserializeDocumentResourceListUnwrapped(v *[]string, decoder s
}
{
xtv := string(val)
- mv = xtv
+ t, err := smithytime.ParseDateTime(xtv)
+ if err != nil {
+ return err
+ }
+ mv = t
}
sv = append(sv, mv)
}
*v = sv
return nil
}
-func awsAwsquery_deserializeDocumentResourceNotFound(v **types.ResourceNotFound, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentDeleteAnomalyDetectorOutput(v **DeleteAnomalyDetectorOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.ResourceNotFound
+ var sv *DeleteAnomalyDetectorOutput
if *v == nil {
- sv = &types.ResourceNotFound{}
+ sv = &DeleteAnomalyDetectorOutput{}
} else {
sv = *v
}
@@ -8109,24 +9470,11 @@ func awsAwsquery_deserializeDocumentResourceNotFound(v **types.ResourceNotFound,
return err
}
if done {
- break
- }
- originalDecoder := decoder
- decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
- switch {
- case strings.EqualFold("message", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
- return err
- }
- if val == nil {
- break
- }
- {
- xtv := string(val)
- sv.Message = ptr.String(xtv)
- }
-
+ break
+ }
+ originalDecoder := decoder
+ decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
+ switch {
default:
// Do nothing and ignore the unexpected tag element
err = decoder.Decoder.Skip()
@@ -8141,13 +9489,13 @@ func awsAwsquery_deserializeDocumentResourceNotFound(v **types.ResourceNotFound,
return nil
}
-func awsAwsquery_deserializeDocumentResourceNotFoundException(v **types.ResourceNotFoundException, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentDeleteDashboardsOutput(v **DeleteDashboardsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.ResourceNotFoundException
+ var sv *DeleteDashboardsOutput
if *v == nil {
- sv = &types.ResourceNotFoundException{}
+ sv = &DeleteDashboardsOutput{}
} else {
sv = *v
}
@@ -8163,45 +9511,6 @@ func awsAwsquery_deserializeDocumentResourceNotFoundException(v **types.Resource
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("Message", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
- return err
- }
- if val == nil {
- break
- }
- {
- xtv := string(val)
- sv.Message = ptr.String(xtv)
- }
-
- case strings.EqualFold("ResourceId", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
- return err
- }
- if val == nil {
- break
- }
- {
- xtv := string(val)
- sv.ResourceId = 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 = ptr.String(xtv)
- }
-
default:
// Do nothing and ignore the unexpected tag element
err = decoder.Decoder.Skip()
@@ -8216,13 +9525,13 @@ func awsAwsquery_deserializeDocumentResourceNotFoundException(v **types.Resource
return nil
}
-func awsAwsquery_deserializeDocumentTag(v **types.Tag, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentDeleteInsightRulesOutput(v **DeleteInsightRulesOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.Tag
+ var sv *DeleteInsightRulesOutput
if *v == nil {
- sv = &types.Tag{}
+ sv = &DeleteInsightRulesOutput{}
} else {
sv = *v
}
@@ -8238,31 +9547,11 @@ func awsAwsquery_deserializeDocumentTag(v **types.Tag, decoder smithyxml.NodeDec
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("Key", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
- return err
- }
- if val == nil {
- break
- }
- {
- xtv := string(val)
- sv.Key = ptr.String(xtv)
- }
-
- case strings.EqualFold("Value", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
+ case strings.EqualFold("Failures", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentBatchFailures(&sv.Failures, nodeDecoder); err != nil {
return err
}
- if val == nil {
- break
- }
- {
- xtv := string(val)
- sv.Value = ptr.String(xtv)
- }
default:
// Do nothing and ignore the unexpected tag element
@@ -8278,18 +9567,17 @@ func awsAwsquery_deserializeDocumentTag(v **types.Tag, decoder smithyxml.NodeDec
return nil
}
-func awsAwsquery_deserializeDocumentTagList(v *[]types.Tag, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentDeleteMetricStreamOutput(v **DeleteMetricStreamOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv []types.Tag
+ var sv *DeleteMetricStreamOutput
if *v == nil {
- sv = make([]types.Tag, 0)
+ sv = &DeleteMetricStreamOutput{}
} else {
sv = *v
}
- originalDecoder := decoder
for {
t, done, err := decoder.Token()
if err != nil {
@@ -8298,18 +9586,11 @@ func awsAwsquery_deserializeDocumentTagList(v *[]types.Tag, decoder smithyxml.No
if done {
break
}
+ originalDecoder := decoder
+ decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("member", t.Name.Local):
- var col types.Tag
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- destAddr := &col
- if err := awsAwsquery_deserializeDocumentTag(&destAddr, nodeDecoder); err != nil {
- return err
- }
- col = *destAddr
- sv = append(sv, col)
-
default:
+ // Do nothing and ignore the unexpected tag element
err = decoder.Decoder.Skip()
if err != nil {
return err
@@ -8322,42 +9603,17 @@ func awsAwsquery_deserializeDocumentTagList(v *[]types.Tag, decoder smithyxml.No
return nil
}
-func awsAwsquery_deserializeDocumentTagListUnwrapped(v *[]types.Tag, decoder smithyxml.NodeDecoder) error {
- var sv []types.Tag
- if *v == nil {
- sv = make([]types.Tag, 0)
- } else {
- sv = *v
- }
-
- switch {
- default:
- var mv types.Tag
- t := decoder.StartEl
- _ = t
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- destAddr := &mv
- if err := awsAwsquery_deserializeDocumentTag(&destAddr, nodeDecoder); err != nil {
- return err
- }
- mv = *destAddr
- sv = append(sv, mv)
- }
- *v = sv
- return nil
-}
-func awsAwsquery_deserializeDocumentTimestamps(v *[]time.Time, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentDescribeAlarmHistoryOutput(v **DescribeAlarmHistoryOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv []time.Time
+ var sv *DescribeAlarmHistoryOutput
if *v == nil {
- sv = make([]time.Time, 0)
+ sv = &DescribeAlarmHistoryOutput{}
} else {
sv = *v
}
- originalDecoder := decoder
for {
t, done, err := decoder.Token()
if err != nil {
@@ -8366,11 +9622,16 @@ func awsAwsquery_deserializeDocumentTimestamps(v *[]time.Time, decoder smithyxml
if done {
break
}
- memberDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- decoder = memberDecoder
+ originalDecoder := decoder
+ decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("member", t.Name.Local):
- var col time.Time
+ case strings.EqualFold("AlarmHistoryItems", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentAlarmHistoryItems(&sv.AlarmHistoryItems, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("NextToken", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -8380,15 +9641,11 @@ func awsAwsquery_deserializeDocumentTimestamps(v *[]time.Time, decoder smithyxml
}
{
xtv := string(val)
- t, err := smithytime.ParseDateTime(xtv)
- if err != nil {
- return err
- }
- col = t
+ sv.NextToken = ptr.String(xtv)
}
- sv = append(sv, col)
default:
+ // Do nothing and ignore the unexpected tag element
err = decoder.Decoder.Skip()
if err != nil {
return err
@@ -8401,46 +9658,55 @@ func awsAwsquery_deserializeDocumentTimestamps(v *[]time.Time, decoder smithyxml
return nil
}
-func awsAwsquery_deserializeDocumentTimestampsUnwrapped(v *[]time.Time, decoder smithyxml.NodeDecoder) error {
- var sv []time.Time
+func awsAwsquery_deserializeOpDocumentDescribeAlarmsForMetricOutput(v **DescribeAlarmsForMetricOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *DescribeAlarmsForMetricOutput
if *v == nil {
- sv = make([]time.Time, 0)
+ sv = &DescribeAlarmsForMetricOutput{}
} else {
sv = *v
}
- switch {
- default:
- var mv time.Time
- t := decoder.StartEl
- _ = t
- val, err := decoder.Value()
+ for {
+ t, done, err := decoder.Token()
if err != nil {
return err
}
- if val == nil {
+ if done {
break
}
- {
- xtv := string(val)
- t, err := smithytime.ParseDateTime(xtv)
+ originalDecoder := decoder
+ decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
+ switch {
+ case strings.EqualFold("MetricAlarms", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentMetricAlarms(&sv.MetricAlarms, nodeDecoder); err != nil {
+ return err
+ }
+
+ default:
+ // Do nothing and ignore the unexpected tag element
+ err = decoder.Decoder.Skip()
if err != nil {
return err
}
- mv = t
+
}
- sv = append(sv, mv)
+ decoder = originalDecoder
}
*v = sv
return nil
}
-func awsAwsquery_deserializeOpDocumentDeleteAnomalyDetectorOutput(v **DeleteAnomalyDetectorOutput, decoder smithyxml.NodeDecoder) error {
+
+func awsAwsquery_deserializeOpDocumentDescribeAlarmsOutput(v **DescribeAlarmsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DeleteAnomalyDetectorOutput
+ var sv *DescribeAlarmsOutput
if *v == nil {
- sv = &DeleteAnomalyDetectorOutput{}
+ sv = &DescribeAlarmsOutput{}
} else {
sv = *v
}
@@ -8456,6 +9722,31 @@ func awsAwsquery_deserializeOpDocumentDeleteAnomalyDetectorOutput(v **DeleteAnom
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
+ case strings.EqualFold("CompositeAlarms", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentCompositeAlarms(&sv.CompositeAlarms, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("MetricAlarms", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentMetricAlarms(&sv.MetricAlarms, 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()
@@ -8470,13 +9761,13 @@ func awsAwsquery_deserializeOpDocumentDeleteAnomalyDetectorOutput(v **DeleteAnom
return nil
}
-func awsAwsquery_deserializeOpDocumentDeleteDashboardsOutput(v **DeleteDashboardsOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentDescribeAnomalyDetectorsOutput(v **DescribeAnomalyDetectorsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DeleteDashboardsOutput
+ var sv *DescribeAnomalyDetectorsOutput
if *v == nil {
- sv = &DeleteDashboardsOutput{}
+ sv = &DescribeAnomalyDetectorsOutput{}
} else {
sv = *v
}
@@ -8492,6 +9783,25 @@ func awsAwsquery_deserializeOpDocumentDeleteDashboardsOutput(v **DeleteDashboard
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
+ case strings.EqualFold("AnomalyDetectors", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentAnomalyDetectors(&sv.AnomalyDetectors, 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()
@@ -8506,13 +9816,13 @@ func awsAwsquery_deserializeOpDocumentDeleteDashboardsOutput(v **DeleteDashboard
return nil
}
-func awsAwsquery_deserializeOpDocumentDeleteInsightRulesOutput(v **DeleteInsightRulesOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentDescribeInsightRulesOutput(v **DescribeInsightRulesOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DeleteInsightRulesOutput
+ var sv *DescribeInsightRulesOutput
if *v == nil {
- sv = &DeleteInsightRulesOutput{}
+ sv = &DescribeInsightRulesOutput{}
} else {
sv = *v
}
@@ -8528,12 +9838,25 @@ func awsAwsquery_deserializeOpDocumentDeleteInsightRulesOutput(v **DeleteInsight
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("Failures", t.Name.Local):
+ case strings.EqualFold("InsightRules", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentBatchFailures(&sv.Failures, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentInsightRules(&sv.InsightRules, 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()
@@ -8548,13 +9871,13 @@ func awsAwsquery_deserializeOpDocumentDeleteInsightRulesOutput(v **DeleteInsight
return nil
}
-func awsAwsquery_deserializeOpDocumentDescribeAlarmHistoryOutput(v **DescribeAlarmHistoryOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentDisableInsightRulesOutput(v **DisableInsightRulesOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeAlarmHistoryOutput
+ var sv *DisableInsightRulesOutput
if *v == nil {
- sv = &DescribeAlarmHistoryOutput{}
+ sv = &DisableInsightRulesOutput{}
} else {
sv = *v
}
@@ -8570,24 +9893,11 @@ func awsAwsquery_deserializeOpDocumentDescribeAlarmHistoryOutput(v **DescribeAla
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("AlarmHistoryItems", t.Name.Local):
+ case strings.EqualFold("Failures", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentAlarmHistoryItems(&sv.AlarmHistoryItems, nodeDecoder); err != nil {
- return err
- }
-
- case strings.EqualFold("NextToken", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
+ if err := awsAwsquery_deserializeDocumentBatchFailures(&sv.Failures, nodeDecoder); 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
@@ -8603,13 +9913,13 @@ func awsAwsquery_deserializeOpDocumentDescribeAlarmHistoryOutput(v **DescribeAla
return nil
}
-func awsAwsquery_deserializeOpDocumentDescribeAlarmsForMetricOutput(v **DescribeAlarmsForMetricOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentEnableInsightRulesOutput(v **EnableInsightRulesOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeAlarmsForMetricOutput
+ var sv *EnableInsightRulesOutput
if *v == nil {
- sv = &DescribeAlarmsForMetricOutput{}
+ sv = &EnableInsightRulesOutput{}
} else {
sv = *v
}
@@ -8625,9 +9935,9 @@ func awsAwsquery_deserializeOpDocumentDescribeAlarmsForMetricOutput(v **Describe
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("MetricAlarms", t.Name.Local):
+ case strings.EqualFold("Failures", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentMetricAlarms(&sv.MetricAlarms, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentBatchFailures(&sv.Failures, nodeDecoder); err != nil {
return err
}
@@ -8645,13 +9955,13 @@ func awsAwsquery_deserializeOpDocumentDescribeAlarmsForMetricOutput(v **Describe
return nil
}
-func awsAwsquery_deserializeOpDocumentDescribeAlarmsOutput(v **DescribeAlarmsOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentGetDashboardOutput(v **GetDashboardOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeAlarmsOutput
+ var sv *GetDashboardOutput
if *v == nil {
- sv = &DescribeAlarmsOutput{}
+ sv = &GetDashboardOutput{}
} else {
sv = *v
}
@@ -8667,19 +9977,33 @@ func awsAwsquery_deserializeOpDocumentDescribeAlarmsOutput(v **DescribeAlarmsOut
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("CompositeAlarms", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentCompositeAlarms(&sv.CompositeAlarms, nodeDecoder); err != nil {
+ case strings.EqualFold("DashboardArn", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
return err
}
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.DashboardArn = ptr.String(xtv)
+ }
- case strings.EqualFold("MetricAlarms", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentMetricAlarms(&sv.MetricAlarms, nodeDecoder); err != nil {
+ case strings.EqualFold("DashboardBody", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
return err
}
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.DashboardBody = ptr.String(xtv)
+ }
- case strings.EqualFold("NextToken", t.Name.Local):
+ case strings.EqualFold("DashboardName", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -8689,7 +10013,7 @@ func awsAwsquery_deserializeOpDocumentDescribeAlarmsOutput(v **DescribeAlarmsOut
}
{
xtv := string(val)
- sv.NextToken = ptr.String(xtv)
+ sv.DashboardName = ptr.String(xtv)
}
default:
@@ -8706,13 +10030,13 @@ func awsAwsquery_deserializeOpDocumentDescribeAlarmsOutput(v **DescribeAlarmsOut
return nil
}
-func awsAwsquery_deserializeOpDocumentDescribeAnomalyDetectorsOutput(v **DescribeAnomalyDetectorsOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentGetInsightRuleReportOutput(v **GetInsightRuleReportOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeAnomalyDetectorsOutput
+ var sv *GetInsightRuleReportOutput
if *v == nil {
- sv = &DescribeAnomalyDetectorsOutput{}
+ sv = &GetInsightRuleReportOutput{}
} else {
sv = *v
}
@@ -8728,13 +10052,37 @@ func awsAwsquery_deserializeOpDocumentDescribeAnomalyDetectorsOutput(v **Describ
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("AnomalyDetectors", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentAnomalyDetectors(&sv.AnomalyDetectors, nodeDecoder); err != nil {
+ case strings.EqualFold("AggregateValue", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ f64, err := strconv.ParseFloat(xtv, 64)
+ if err != nil {
+ return err
+ }
+ sv.AggregateValue = ptr.Float64(f64)
+ }
+
+ case strings.EqualFold("AggregationStatistic", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
return err
}
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.AggregationStatistic = ptr.String(xtv)
+ }
- case strings.EqualFold("NextToken", t.Name.Local):
+ case strings.EqualFold("ApproximateUniqueCount", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -8744,7 +10092,29 @@ func awsAwsquery_deserializeOpDocumentDescribeAnomalyDetectorsOutput(v **Describ
}
{
xtv := string(val)
- sv.NextToken = ptr.String(xtv)
+ i64, err := strconv.ParseInt(xtv, 10, 64)
+ if err != nil {
+ return err
+ }
+ sv.ApproximateUniqueCount = ptr.Int64(i64)
+ }
+
+ case strings.EqualFold("Contributors", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentInsightRuleContributors(&sv.Contributors, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("KeyLabels", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentInsightRuleContributorKeyLabels(&sv.KeyLabels, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("MetricDatapoints", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentInsightRuleMetricDatapoints(&sv.MetricDatapoints, nodeDecoder); err != nil {
+ return err
}
default:
@@ -8761,13 +10131,13 @@ func awsAwsquery_deserializeOpDocumentDescribeAnomalyDetectorsOutput(v **Describ
return nil
}
-func awsAwsquery_deserializeOpDocumentDescribeInsightRulesOutput(v **DescribeInsightRulesOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentGetMetricDataOutput(v **GetMetricDataOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeInsightRulesOutput
+ var sv *GetMetricDataOutput
if *v == nil {
- sv = &DescribeInsightRulesOutput{}
+ sv = &GetMetricDataOutput{}
} else {
sv = *v
}
@@ -8783,9 +10153,15 @@ func awsAwsquery_deserializeOpDocumentDescribeInsightRulesOutput(v **DescribeIns
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("InsightRules", t.Name.Local):
+ case strings.EqualFold("Messages", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentInsightRules(&sv.InsightRules, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentMetricDataResultMessages(&sv.Messages, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("MetricDataResults", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentMetricDataResults(&sv.MetricDataResults, nodeDecoder); err != nil {
return err
}
@@ -8816,13 +10192,13 @@ func awsAwsquery_deserializeOpDocumentDescribeInsightRulesOutput(v **DescribeIns
return nil
}
-func awsAwsquery_deserializeOpDocumentDisableInsightRulesOutput(v **DisableInsightRulesOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentGetMetricStatisticsOutput(v **GetMetricStatisticsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DisableInsightRulesOutput
+ var sv *GetMetricStatisticsOutput
if *v == nil {
- sv = &DisableInsightRulesOutput{}
+ sv = &GetMetricStatisticsOutput{}
} else {
sv = *v
}
@@ -8838,11 +10214,24 @@ func awsAwsquery_deserializeOpDocumentDisableInsightRulesOutput(v **DisableInsig
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("Failures", t.Name.Local):
+ case strings.EqualFold("Datapoints", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentBatchFailures(&sv.Failures, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentDatapoints(&sv.Datapoints, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("Label", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
return err
}
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Label = ptr.String(xtv)
+ }
default:
// Do nothing and ignore the unexpected tag element
@@ -8858,13 +10247,13 @@ func awsAwsquery_deserializeOpDocumentDisableInsightRulesOutput(v **DisableInsig
return nil
}
-func awsAwsquery_deserializeOpDocumentEnableInsightRulesOutput(v **EnableInsightRulesOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentGetMetricStreamOutput(v **GetMetricStreamOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *EnableInsightRulesOutput
+ var sv *GetMetricStreamOutput
if *v == nil {
- sv = &EnableInsightRulesOutput{}
+ sv = &GetMetricStreamOutput{}
} else {
sv = *v
}
@@ -8880,49 +10269,92 @@ func awsAwsquery_deserializeOpDocumentEnableInsightRulesOutput(v **EnableInsight
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("Failures", t.Name.Local):
+ case strings.EqualFold("Arn", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Arn = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("CreationDate", 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.CreationDate = ptr.Time(t)
+ }
+
+ case strings.EqualFold("ExcludeFilters", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentBatchFailures(&sv.Failures, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentMetricStreamFilters(&sv.ExcludeFilters, nodeDecoder); err != nil {
return err
}
- default:
- // Do nothing and ignore the unexpected tag element
- err = decoder.Decoder.Skip()
+ case strings.EqualFold("FirehoseArn", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.FirehoseArn = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("IncludeFilters", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentMetricStreamFilters(&sv.IncludeFilters, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("LastUpdateDate", 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.LastUpdateDate = ptr.Time(t)
+ }
+
+ case strings.EqualFold("Name", t.Name.Local):
+ val, err := decoder.Value()
if err != nil {
return err
}
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Name = ptr.String(xtv)
+ }
- }
- decoder = originalDecoder
- }
- *v = sv
- return nil
-}
-
-func awsAwsquery_deserializeOpDocumentGetDashboardOutput(v **GetDashboardOutput, decoder smithyxml.NodeDecoder) error {
- if v == nil {
- return fmt.Errorf("unexpected nil of type %T", v)
- }
- var sv *GetDashboardOutput
- if *v == nil {
- sv = &GetDashboardOutput{}
- } 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("DashboardArn", t.Name.Local):
+ case strings.EqualFold("OutputFormat", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -8932,10 +10364,10 @@ func awsAwsquery_deserializeOpDocumentGetDashboardOutput(v **GetDashboardOutput,
}
{
xtv := string(val)
- sv.DashboardArn = ptr.String(xtv)
+ sv.OutputFormat = types.MetricStreamOutputFormat(xtv)
}
- case strings.EqualFold("DashboardBody", t.Name.Local):
+ case strings.EqualFold("RoleArn", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -8945,10 +10377,10 @@ func awsAwsquery_deserializeOpDocumentGetDashboardOutput(v **GetDashboardOutput,
}
{
xtv := string(val)
- sv.DashboardBody = ptr.String(xtv)
+ sv.RoleArn = ptr.String(xtv)
}
- case strings.EqualFold("DashboardName", t.Name.Local):
+ case strings.EqualFold("State", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -8958,7 +10390,7 @@ func awsAwsquery_deserializeOpDocumentGetDashboardOutput(v **GetDashboardOutput,
}
{
xtv := string(val)
- sv.DashboardName = ptr.String(xtv)
+ sv.State = ptr.String(xtv)
}
default:
@@ -8975,13 +10407,13 @@ func awsAwsquery_deserializeOpDocumentGetDashboardOutput(v **GetDashboardOutput,
return nil
}
-func awsAwsquery_deserializeOpDocumentGetInsightRuleReportOutput(v **GetInsightRuleReportOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentGetMetricWidgetImageOutput(v **GetMetricWidgetImageOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *GetInsightRuleReportOutput
+ var sv *GetMetricWidgetImageOutput
if *v == nil {
- sv = &GetInsightRuleReportOutput{}
+ sv = &GetMetricWidgetImageOutput{}
} else {
sv = *v
}
@@ -8997,24 +10429,8 @@ func awsAwsquery_deserializeOpDocumentGetInsightRuleReportOutput(v **GetInsightR
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("AggregateValue", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
- return err
- }
- if val == nil {
- break
- }
- {
- xtv := string(val)
- f64, err := strconv.ParseFloat(xtv, 64)
- if err != nil {
- return err
- }
- sv.AggregateValue = ptr.Float64(f64)
- }
-
- case strings.EqualFold("AggregationStatistic", t.Name.Local):
+ case strings.EqualFold("MetricWidgetImage", t.Name.Local):
+ var data string
val, err := decoder.Value()
if err != nil {
return err
@@ -9024,43 +10440,12 @@ func awsAwsquery_deserializeOpDocumentGetInsightRuleReportOutput(v **GetInsightR
}
{
xtv := string(val)
- sv.AggregationStatistic = ptr.String(xtv)
+ data = xtv
}
-
- case strings.EqualFold("ApproximateUniqueCount", t.Name.Local):
- val, err := decoder.Value()
+ sv.MetricWidgetImage, err = base64.StdEncoding.DecodeString(data)
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.ApproximateUniqueCount = ptr.Int64(i64)
- }
-
- case strings.EqualFold("Contributors", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentInsightRuleContributors(&sv.Contributors, nodeDecoder); err != nil {
- return err
- }
-
- case strings.EqualFold("KeyLabels", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentInsightRuleContributorKeyLabels(&sv.KeyLabels, nodeDecoder); err != nil {
- return err
- }
-
- case strings.EqualFold("MetricDatapoints", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentInsightRuleMetricDatapoints(&sv.MetricDatapoints, nodeDecoder); err != nil {
- return err
- }
default:
// Do nothing and ignore the unexpected tag element
@@ -9076,13 +10461,13 @@ func awsAwsquery_deserializeOpDocumentGetInsightRuleReportOutput(v **GetInsightR
return nil
}
-func awsAwsquery_deserializeOpDocumentGetMetricDataOutput(v **GetMetricDataOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentListDashboardsOutput(v **ListDashboardsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *GetMetricDataOutput
+ var sv *ListDashboardsOutput
if *v == nil {
- sv = &GetMetricDataOutput{}
+ sv = &ListDashboardsOutput{}
} else {
sv = *v
}
@@ -9098,15 +10483,9 @@ func awsAwsquery_deserializeOpDocumentGetMetricDataOutput(v **GetMetricDataOutpu
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("Messages", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentMetricDataResultMessages(&sv.Messages, nodeDecoder); err != nil {
- return err
- }
-
- case strings.EqualFold("MetricDataResults", t.Name.Local):
+ case strings.EqualFold("DashboardEntries", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentMetricDataResults(&sv.MetricDataResults, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentDashboardEntries(&sv.DashboardEntries, nodeDecoder); err != nil {
return err
}
@@ -9137,13 +10516,13 @@ func awsAwsquery_deserializeOpDocumentGetMetricDataOutput(v **GetMetricDataOutpu
return nil
}
-func awsAwsquery_deserializeOpDocumentGetMetricStatisticsOutput(v **GetMetricStatisticsOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentListMetricsOutput(v **ListMetricsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *GetMetricStatisticsOutput
+ var sv *ListMetricsOutput
if *v == nil {
- sv = &GetMetricStatisticsOutput{}
+ sv = &ListMetricsOutput{}
} else {
sv = *v
}
@@ -9159,13 +10538,13 @@ func awsAwsquery_deserializeOpDocumentGetMetricStatisticsOutput(v **GetMetricSta
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("Datapoints", t.Name.Local):
+ case strings.EqualFold("Metrics", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentDatapoints(&sv.Datapoints, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentMetrics(&sv.Metrics, nodeDecoder); err != nil {
return err
}
- case strings.EqualFold("Label", t.Name.Local):
+ case strings.EqualFold("NextToken", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -9175,7 +10554,7 @@ func awsAwsquery_deserializeOpDocumentGetMetricStatisticsOutput(v **GetMetricSta
}
{
xtv := string(val)
- sv.Label = ptr.String(xtv)
+ sv.NextToken = ptr.String(xtv)
}
default:
@@ -9192,13 +10571,13 @@ func awsAwsquery_deserializeOpDocumentGetMetricStatisticsOutput(v **GetMetricSta
return nil
}
-func awsAwsquery_deserializeOpDocumentGetMetricWidgetImageOutput(v **GetMetricWidgetImageOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentListMetricStreamsOutput(v **ListMetricStreamsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *GetMetricWidgetImageOutput
+ var sv *ListMetricStreamsOutput
if *v == nil {
- sv = &GetMetricWidgetImageOutput{}
+ sv = &ListMetricStreamsOutput{}
} else {
sv = *v
}
@@ -9214,8 +10593,13 @@ func awsAwsquery_deserializeOpDocumentGetMetricWidgetImageOutput(v **GetMetricWi
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("MetricWidgetImage", t.Name.Local):
- var data string
+ case strings.EqualFold("Entries", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentMetricStreamEntries(&sv.Entries, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("NextToken", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -9225,11 +10609,7 @@ func awsAwsquery_deserializeOpDocumentGetMetricWidgetImageOutput(v **GetMetricWi
}
{
xtv := string(val)
- data = xtv
- }
- sv.MetricWidgetImage, err = base64.StdEncoding.DecodeString(data)
- if err != nil {
- return err
+ sv.NextToken = ptr.String(xtv)
}
default:
@@ -9246,13 +10626,13 @@ func awsAwsquery_deserializeOpDocumentGetMetricWidgetImageOutput(v **GetMetricWi
return nil
}
-func awsAwsquery_deserializeOpDocumentListDashboardsOutput(v **ListDashboardsOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentListTagsForResourceOutput(v **ListTagsForResourceOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *ListDashboardsOutput
+ var sv *ListTagsForResourceOutput
if *v == nil {
- sv = &ListDashboardsOutput{}
+ sv = &ListTagsForResourceOutput{}
} else {
sv = *v
}
@@ -9268,25 +10648,48 @@ func awsAwsquery_deserializeOpDocumentListDashboardsOutput(v **ListDashboardsOut
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("DashboardEntries", t.Name.Local):
+ case strings.EqualFold("Tags", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentDashboardEntries(&sv.DashboardEntries, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentTagList(&sv.Tags, nodeDecoder); err != nil {
return err
}
- case strings.EqualFold("NextToken", t.Name.Local):
- val, err := decoder.Value()
+ default:
+ // Do nothing and ignore the unexpected tag element
+ err = decoder.Decoder.Skip()
if err != nil {
return err
}
- if val == nil {
- break
- }
- {
- xtv := string(val)
- sv.NextToken = ptr.String(xtv)
- }
+ }
+ decoder = originalDecoder
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsquery_deserializeOpDocumentPutAnomalyDetectorOutput(v **PutAnomalyDetectorOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *PutAnomalyDetectorOutput
+ if *v == nil {
+ sv = &PutAnomalyDetectorOutput{}
+ } 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 {
default:
// Do nothing and ignore the unexpected tag element
err = decoder.Decoder.Skip()
@@ -9301,13 +10704,13 @@ func awsAwsquery_deserializeOpDocumentListDashboardsOutput(v **ListDashboardsOut
return nil
}
-func awsAwsquery_deserializeOpDocumentListMetricsOutput(v **ListMetricsOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentPutDashboardOutput(v **PutDashboardOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *ListMetricsOutput
+ var sv *PutDashboardOutput
if *v == nil {
- sv = &ListMetricsOutput{}
+ sv = &PutDashboardOutput{}
} else {
sv = *v
}
@@ -9323,24 +10726,11 @@ func awsAwsquery_deserializeOpDocumentListMetricsOutput(v **ListMetricsOutput, d
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("Metrics", t.Name.Local):
+ case strings.EqualFold("DashboardValidationMessages", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentMetrics(&sv.Metrics, nodeDecoder); err != nil {
- return err
- }
-
- case strings.EqualFold("NextToken", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
+ if err := awsAwsquery_deserializeDocumentDashboardValidationMessages(&sv.DashboardValidationMessages, nodeDecoder); 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
@@ -9356,13 +10746,13 @@ func awsAwsquery_deserializeOpDocumentListMetricsOutput(v **ListMetricsOutput, d
return nil
}
-func awsAwsquery_deserializeOpDocumentListTagsForResourceOutput(v **ListTagsForResourceOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentPutInsightRuleOutput(v **PutInsightRuleOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *ListTagsForResourceOutput
+ var sv *PutInsightRuleOutput
if *v == nil {
- sv = &ListTagsForResourceOutput{}
+ sv = &PutInsightRuleOutput{}
} else {
sv = *v
}
@@ -9378,12 +10768,6 @@ func awsAwsquery_deserializeOpDocumentListTagsForResourceOutput(v **ListTagsForR
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("Tags", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentTagList(&sv.Tags, nodeDecoder); err != nil {
- return err
- }
-
default:
// Do nothing and ignore the unexpected tag element
err = decoder.Decoder.Skip()
@@ -9398,13 +10782,13 @@ func awsAwsquery_deserializeOpDocumentListTagsForResourceOutput(v **ListTagsForR
return nil
}
-func awsAwsquery_deserializeOpDocumentPutAnomalyDetectorOutput(v **PutAnomalyDetectorOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentPutMetricStreamOutput(v **PutMetricStreamOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *PutAnomalyDetectorOutput
+ var sv *PutMetricStreamOutput
if *v == nil {
- sv = &PutAnomalyDetectorOutput{}
+ sv = &PutMetricStreamOutput{}
} else {
sv = *v
}
@@ -9420,6 +10804,19 @@ func awsAwsquery_deserializeOpDocumentPutAnomalyDetectorOutput(v **PutAnomalyDet
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
+ case strings.EqualFold("Arn", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Arn = ptr.String(xtv)
+ }
+
default:
// Do nothing and ignore the unexpected tag element
err = decoder.Decoder.Skip()
@@ -9434,13 +10831,13 @@ func awsAwsquery_deserializeOpDocumentPutAnomalyDetectorOutput(v **PutAnomalyDet
return nil
}
-func awsAwsquery_deserializeOpDocumentPutDashboardOutput(v **PutDashboardOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentStartMetricStreamsOutput(v **StartMetricStreamsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *PutDashboardOutput
+ var sv *StartMetricStreamsOutput
if *v == nil {
- sv = &PutDashboardOutput{}
+ sv = &StartMetricStreamsOutput{}
} else {
sv = *v
}
@@ -9456,12 +10853,6 @@ func awsAwsquery_deserializeOpDocumentPutDashboardOutput(v **PutDashboardOutput,
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("DashboardValidationMessages", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentDashboardValidationMessages(&sv.DashboardValidationMessages, nodeDecoder); err != nil {
- return err
- }
-
default:
// Do nothing and ignore the unexpected tag element
err = decoder.Decoder.Skip()
@@ -9476,13 +10867,13 @@ func awsAwsquery_deserializeOpDocumentPutDashboardOutput(v **PutDashboardOutput,
return nil
}
-func awsAwsquery_deserializeOpDocumentPutInsightRuleOutput(v **PutInsightRuleOutput, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeOpDocumentStopMetricStreamsOutput(v **StopMetricStreamsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *PutInsightRuleOutput
+ var sv *StopMetricStreamsOutput
if *v == nil {
- sv = &PutInsightRuleOutput{}
+ sv = &StopMetricStreamsOutput{}
} else {
sv = *v
}
diff --git a/service/cloudwatch/go.mod b/service/cloudwatch/go.mod
index edd5c20fa5c..87c68496538 100644
--- a/service/cloudwatch/go.mod
+++ b/service/cloudwatch/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/cloudwatch/go.sum b/service/cloudwatch/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/cloudwatch/go.sum
+++ b/service/cloudwatch/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/cloudwatch/serializers.go b/service/cloudwatch/serializers.go
index 02d00110322..a82877bcf48 100644
--- a/service/cloudwatch/serializers.go
+++ b/service/cloudwatch/serializers.go
@@ -239,6 +239,62 @@ func (m *awsAwsquery_serializeOpDeleteInsightRules) HandleSerialize(ctx context.
return next.HandleSerialize(ctx, in)
}
+type awsAwsquery_serializeOpDeleteMetricStream struct {
+}
+
+func (*awsAwsquery_serializeOpDeleteMetricStream) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsquery_serializeOpDeleteMetricStream) 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.(*DeleteMetricStreamInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("DeleteMetricStream")
+ body.Key("Version").String("2010-08-01")
+
+ if err := awsAwsquery_serializeOpDocumentDeleteMetricStreamInput(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 awsAwsquery_serializeOpDescribeAlarmHistory struct {
}
@@ -967,6 +1023,62 @@ func (m *awsAwsquery_serializeOpGetMetricStatistics) HandleSerialize(ctx context
return next.HandleSerialize(ctx, in)
}
+type awsAwsquery_serializeOpGetMetricStream struct {
+}
+
+func (*awsAwsquery_serializeOpGetMetricStream) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsquery_serializeOpGetMetricStream) 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.(*GetMetricStreamInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("GetMetricStream")
+ body.Key("Version").String("2010-08-01")
+
+ if err := awsAwsquery_serializeOpDocumentGetMetricStreamInput(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 awsAwsquery_serializeOpGetMetricWidgetImage struct {
}
@@ -1135,6 +1247,62 @@ func (m *awsAwsquery_serializeOpListMetrics) HandleSerialize(ctx context.Context
return next.HandleSerialize(ctx, in)
}
+type awsAwsquery_serializeOpListMetricStreams struct {
+}
+
+func (*awsAwsquery_serializeOpListMetricStreams) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsquery_serializeOpListMetricStreams) 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.(*ListMetricStreamsInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("ListMetricStreams")
+ body.Key("Version").String("2010-08-01")
+
+ if err := awsAwsquery_serializeOpDocumentListMetricStreamsInput(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 awsAwsquery_serializeOpListTagsForResource struct {
}
@@ -1527,6 +1695,62 @@ func (m *awsAwsquery_serializeOpPutMetricData) HandleSerialize(ctx context.Conte
return next.HandleSerialize(ctx, in)
}
+type awsAwsquery_serializeOpPutMetricStream struct {
+}
+
+func (*awsAwsquery_serializeOpPutMetricStream) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsquery_serializeOpPutMetricStream) 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.(*PutMetricStreamInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("PutMetricStream")
+ body.Key("Version").String("2010-08-01")
+
+ if err := awsAwsquery_serializeOpDocumentPutMetricStreamInput(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 awsAwsquery_serializeOpSetAlarmState struct {
}
@@ -1583,6 +1807,118 @@ func (m *awsAwsquery_serializeOpSetAlarmState) HandleSerialize(ctx context.Conte
return next.HandleSerialize(ctx, in)
}
+type awsAwsquery_serializeOpStartMetricStreams struct {
+}
+
+func (*awsAwsquery_serializeOpStartMetricStreams) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsquery_serializeOpStartMetricStreams) 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.(*StartMetricStreamsInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("StartMetricStreams")
+ body.Key("Version").String("2010-08-01")
+
+ if err := awsAwsquery_serializeOpDocumentStartMetricStreamsInput(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 awsAwsquery_serializeOpStopMetricStreams struct {
+}
+
+func (*awsAwsquery_serializeOpStopMetricStreams) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsquery_serializeOpStopMetricStreams) 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.(*StopMetricStreamsInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("StopMetricStreams")
+ body.Key("Version").String("2010-08-01")
+
+ if err := awsAwsquery_serializeOpDocumentStopMetricStreamsInput(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 awsAwsquery_serializeOpTagResource struct {
}
@@ -2077,6 +2413,46 @@ func awsAwsquery_serializeDocumentMetricStat(v *types.MetricStat, value query.Va
return nil
}
+func awsAwsquery_serializeDocumentMetricStreamFilter(v *types.MetricStreamFilter, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.Namespace != nil {
+ objectKey := object.Key("Namespace")
+ objectKey.String(*v.Namespace)
+ }
+
+ return nil
+}
+
+func awsAwsquery_serializeDocumentMetricStreamFilters(v []types.MetricStreamFilter, value query.Value) error {
+ if len(v) == 0 {
+ return nil
+ }
+ array := value.Array("member")
+
+ for i := range v {
+ av := array.Value()
+ if err := awsAwsquery_serializeDocumentMetricStreamFilter(&v[i], av); err != nil {
+ return err
+ }
+ }
+ return nil
+}
+
+func awsAwsquery_serializeDocumentMetricStreamNames(v []string, value query.Value) error {
+ if len(v) == 0 {
+ return nil
+ }
+ array := value.Array("member")
+
+ for i := range v {
+ av := array.Value()
+ av.String(v[i])
+ }
+ return nil
+}
+
func awsAwsquery_serializeDocumentRange(v *types.Range, value query.Value) error {
object := value.Object()
_ = object
@@ -2276,6 +2652,18 @@ func awsAwsquery_serializeOpDocumentDeleteInsightRulesInput(v *DeleteInsightRule
return nil
}
+func awsAwsquery_serializeOpDocumentDeleteMetricStreamInput(v *DeleteMetricStreamInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.Name != nil {
+ objectKey := object.Key("Name")
+ objectKey.String(*v.Name)
+ }
+
+ return nil
+}
+
func awsAwsquery_serializeOpDocumentDescribeAlarmHistoryInput(v *DescribeAlarmHistoryInput, value query.Value) error {
object := value.Object()
_ = object
@@ -2692,6 +3080,18 @@ func awsAwsquery_serializeOpDocumentGetMetricStatisticsInput(v *GetMetricStatist
return nil
}
+func awsAwsquery_serializeOpDocumentGetMetricStreamInput(v *GetMetricStreamInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.Name != nil {
+ objectKey := object.Key("Name")
+ objectKey.String(*v.Name)
+ }
+
+ return nil
+}
+
func awsAwsquery_serializeOpDocumentGetMetricWidgetImageInput(v *GetMetricWidgetImageInput, value query.Value) error {
object := value.Object()
_ = object
@@ -2760,6 +3160,23 @@ func awsAwsquery_serializeOpDocumentListMetricsInput(v *ListMetricsInput, value
return nil
}
+func awsAwsquery_serializeOpDocumentListMetricStreamsInput(v *ListMetricStreamsInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ 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 awsAwsquery_serializeOpDocumentListTagsForResourceInput(v *ListTagsForResourceInput, value query.Value) error {
object := value.Object()
_ = object
@@ -3057,6 +3474,54 @@ func awsAwsquery_serializeOpDocumentPutMetricDataInput(v *PutMetricDataInput, va
return nil
}
+func awsAwsquery_serializeOpDocumentPutMetricStreamInput(v *PutMetricStreamInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.ExcludeFilters != nil {
+ objectKey := object.Key("ExcludeFilters")
+ if err := awsAwsquery_serializeDocumentMetricStreamFilters(v.ExcludeFilters, objectKey); err != nil {
+ return err
+ }
+ }
+
+ if v.FirehoseArn != nil {
+ objectKey := object.Key("FirehoseArn")
+ objectKey.String(*v.FirehoseArn)
+ }
+
+ if v.IncludeFilters != nil {
+ objectKey := object.Key("IncludeFilters")
+ if err := awsAwsquery_serializeDocumentMetricStreamFilters(v.IncludeFilters, objectKey); err != nil {
+ return err
+ }
+ }
+
+ if v.Name != nil {
+ objectKey := object.Key("Name")
+ objectKey.String(*v.Name)
+ }
+
+ if len(v.OutputFormat) > 0 {
+ objectKey := object.Key("OutputFormat")
+ objectKey.String(string(v.OutputFormat))
+ }
+
+ if v.RoleArn != nil {
+ objectKey := object.Key("RoleArn")
+ objectKey.String(*v.RoleArn)
+ }
+
+ if v.Tags != nil {
+ objectKey := object.Key("Tags")
+ if err := awsAwsquery_serializeDocumentTagList(v.Tags, objectKey); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsAwsquery_serializeOpDocumentSetAlarmStateInput(v *SetAlarmStateInput, value query.Value) error {
object := value.Object()
_ = object
@@ -3084,6 +3549,34 @@ func awsAwsquery_serializeOpDocumentSetAlarmStateInput(v *SetAlarmStateInput, va
return nil
}
+func awsAwsquery_serializeOpDocumentStartMetricStreamsInput(v *StartMetricStreamsInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.Names != nil {
+ objectKey := object.Key("Names")
+ if err := awsAwsquery_serializeDocumentMetricStreamNames(v.Names, objectKey); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsAwsquery_serializeOpDocumentStopMetricStreamsInput(v *StopMetricStreamsInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.Names != nil {
+ objectKey := object.Key("Names")
+ if err := awsAwsquery_serializeDocumentMetricStreamNames(v.Names, objectKey); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsAwsquery_serializeOpDocumentTagResourceInput(v *TagResourceInput, value query.Value) error {
object := value.Object()
_ = object
diff --git a/service/cloudwatch/types/enums.go b/service/cloudwatch/types/enums.go
index 22e708abd83..03c894fd3dd 100644
--- a/service/cloudwatch/types/enums.go
+++ b/service/cloudwatch/types/enums.go
@@ -88,6 +88,24 @@ func (HistoryItemType) Values() []HistoryItemType {
}
}
+type MetricStreamOutputFormat string
+
+// Enum values for MetricStreamOutputFormat
+const (
+ MetricStreamOutputFormatJson MetricStreamOutputFormat = "json"
+ MetricStreamOutputFormatOpenTelemetry07 MetricStreamOutputFormat = "opentelemetry0.7"
+)
+
+// Values returns all known values for MetricStreamOutputFormat. 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 (MetricStreamOutputFormat) Values() []MetricStreamOutputFormat {
+ return []MetricStreamOutputFormat{
+ "json",
+ "opentelemetry0.7",
+ }
+}
+
type RecentlyActive string
// Enum values for RecentlyActive
diff --git a/service/cloudwatch/types/types.go b/service/cloudwatch/types/types.go
index 1199a36f949..889c1c43df9 100644
--- a/service/cloudwatch/types/types.go
+++ b/service/cloudwatch/types/types.go
@@ -685,6 +685,41 @@ type MetricStat struct {
Unit StandardUnit
}
+// This structure contains the configuration information about one metric stream.
+type MetricStreamEntry struct {
+
+ // The ARN of the metric stream.
+ Arn *string
+
+ // The date that the metric stream was originally created.
+ CreationDate *time.Time
+
+ // The ARN of the Kinesis Firehose devlivery stream that is used for this metric
+ // stream.
+ FirehoseArn *string
+
+ // The date that the configuration of this metric stream was most recently updated.
+ LastUpdateDate *time.Time
+
+ // The name of the metric stream.
+ Name *string
+
+ // The output format of this metric stream. Valid values are json and
+ // opentelemetry0.7.
+ OutputFormat MetricStreamOutputFormat
+
+ // The current state of this stream. Valid values are running and stopped.
+ State *string
+}
+
+// This structure contains the name of one of the metric namespaces that is listed
+// in a filter of a metric stream.
+type MetricStreamFilter struct {
+
+ // The name of the metric namespace in the filter.
+ Namespace *string
+}
+
// This array is empty if the API operation was successful for all the rules
// specified in the request. If the operation could not process one of the rules,
// the following data is returned for each of those rules.
diff --git a/service/cloudwatch/validators.go b/service/cloudwatch/validators.go
index 47bac6eb292..5be205cc80b 100644
--- a/service/cloudwatch/validators.go
+++ b/service/cloudwatch/validators.go
@@ -90,6 +90,26 @@ func (m *validateOpDeleteInsightRules) HandleInitialize(ctx context.Context, in
return next.HandleInitialize(ctx, in)
}
+type validateOpDeleteMetricStream struct {
+}
+
+func (*validateOpDeleteMetricStream) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDeleteMetricStream) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DeleteMetricStreamInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDeleteMetricStreamInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpDescribeAlarmsForMetric struct {
}
@@ -290,6 +310,26 @@ func (m *validateOpGetMetricStatistics) HandleInitialize(ctx context.Context, in
return next.HandleInitialize(ctx, in)
}
+type validateOpGetMetricStream struct {
+}
+
+func (*validateOpGetMetricStream) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpGetMetricStream) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*GetMetricStreamInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpGetMetricStreamInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpGetMetricWidgetImage struct {
}
@@ -470,6 +510,26 @@ func (m *validateOpPutMetricData) HandleInitialize(ctx context.Context, in middl
return next.HandleInitialize(ctx, in)
}
+type validateOpPutMetricStream struct {
+}
+
+func (*validateOpPutMetricStream) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpPutMetricStream) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*PutMetricStreamInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpPutMetricStreamInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpSetAlarmState struct {
}
@@ -490,6 +550,46 @@ func (m *validateOpSetAlarmState) HandleInitialize(ctx context.Context, in middl
return next.HandleInitialize(ctx, in)
}
+type validateOpStartMetricStreams struct {
+}
+
+func (*validateOpStartMetricStreams) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpStartMetricStreams) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*StartMetricStreamsInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpStartMetricStreamsInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpStopMetricStreams struct {
+}
+
+func (*validateOpStopMetricStreams) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpStopMetricStreams) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*StopMetricStreamsInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpStopMetricStreamsInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpTagResource struct {
}
@@ -546,6 +646,10 @@ func addOpDeleteInsightRulesValidationMiddleware(stack *middleware.Stack) error
return stack.Initialize.Add(&validateOpDeleteInsightRules{}, middleware.After)
}
+func addOpDeleteMetricStreamValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDeleteMetricStream{}, middleware.After)
+}
+
func addOpDescribeAlarmsForMetricValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpDescribeAlarmsForMetric{}, middleware.After)
}
@@ -586,6 +690,10 @@ func addOpGetMetricStatisticsValidationMiddleware(stack *middleware.Stack) error
return stack.Initialize.Add(&validateOpGetMetricStatistics{}, middleware.After)
}
+func addOpGetMetricStreamValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpGetMetricStream{}, middleware.After)
+}
+
func addOpGetMetricWidgetImageValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpGetMetricWidgetImage{}, middleware.After)
}
@@ -622,10 +730,22 @@ func addOpPutMetricDataValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpPutMetricData{}, middleware.After)
}
+func addOpPutMetricStreamValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpPutMetricStream{}, middleware.After)
+}
+
func addOpSetAlarmStateValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpSetAlarmState{}, middleware.After)
}
+func addOpStartMetricStreamsValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpStartMetricStreams{}, middleware.After)
+}
+
+func addOpStopMetricStreamsValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpStopMetricStreams{}, middleware.After)
+}
+
func addOpTagResourceValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpTagResource{}, middleware.After)
}
@@ -1004,6 +1124,21 @@ func validateOpDeleteInsightRulesInput(v *DeleteInsightRulesInput) error {
}
}
+func validateOpDeleteMetricStreamInput(v *DeleteMetricStreamInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DeleteMetricStreamInput"}
+ if v.Name == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Name"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpDescribeAlarmsForMetricInput(v *DescribeAlarmsForMetricInput) error {
if v == nil {
return nil
@@ -1200,6 +1335,21 @@ func validateOpGetMetricStatisticsInput(v *GetMetricStatisticsInput) error {
}
}
+func validateOpGetMetricStreamInput(v *GetMetricStreamInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "GetMetricStreamInput"}
+ if v.Name == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Name"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpGetMetricWidgetImageInput(v *GetMetricWidgetImageInput) error {
if v == nil {
return nil
@@ -1400,6 +1550,35 @@ func validateOpPutMetricDataInput(v *PutMetricDataInput) error {
}
}
+func validateOpPutMetricStreamInput(v *PutMetricStreamInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "PutMetricStreamInput"}
+ if v.Name == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Name"))
+ }
+ if v.FirehoseArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("FirehoseArn"))
+ }
+ if v.RoleArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("RoleArn"))
+ }
+ if len(v.OutputFormat) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("OutputFormat"))
+ }
+ if v.Tags != nil {
+ if err := validateTagList(v.Tags); err != nil {
+ invalidParams.AddNested("Tags", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpSetAlarmStateInput(v *SetAlarmStateInput) error {
if v == nil {
return nil
@@ -1421,6 +1600,36 @@ func validateOpSetAlarmStateInput(v *SetAlarmStateInput) error {
}
}
+func validateOpStartMetricStreamsInput(v *StartMetricStreamsInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "StartMetricStreamsInput"}
+ if v.Names == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Names"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpStopMetricStreamsInput(v *StopMetricStreamsInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "StopMetricStreamsInput"}
+ if v.Names == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Names"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpTagResourceInput(v *TagResourceInput) error {
if v == nil {
return nil
diff --git a/service/cloudwatchevents/api_op_PutTargets.go b/service/cloudwatchevents/api_op_PutTargets.go
index 833276b7c90..ba3164f1f62 100644
--- a/service/cloudwatchevents/api_op_PutTargets.go
+++ b/service/cloudwatchevents/api_op_PutTargets.go
@@ -60,20 +60,22 @@ import (
// * Custom/SaaS HTTPS APIs via EventBridge
// API Destinations
//
-// Creating rules with built-in targets is supported only in the
-// AWS Management Console. The built-in targets are EC2 CreateSnapshot API call,
-// EC2 RebootInstances API call, EC2 StopInstances API call, and EC2
-// TerminateInstances API call. For some target types, PutTargets provides
-// target-specific parameters. If the target is a Kinesis data stream, you can
-// optionally specify which shard the event goes to by using the KinesisParameters
-// argument. To invoke a command on multiple EC2 instances with one rule, you can
-// use the RunCommandParameters field. To be able to make API calls against the
-// resources that you own, Amazon EventBridge (CloudWatch Events) needs the
-// appropriate permissions. For AWS Lambda and Amazon SNS resources, EventBridge
-// relies on resource-based policies. For EC2 instances, Kinesis data streams, AWS
-// Step Functions state machines and API Gateway REST APIs, EventBridge relies on
-// IAM roles that you specify in the RoleARN argument in PutTargets. For more
-// information, see Authentication and Access Control
+// * Amazon SageMaker Model Building Pipelines
+//
+// Creating rules
+// with built-in targets is supported only in the AWS Management Console. The
+// built-in targets are EC2 CreateSnapshot API call, EC2 RebootInstances API call,
+// EC2 StopInstances API call, and EC2 TerminateInstances API call. For some target
+// types, PutTargets provides target-specific parameters. If the target is a
+// Kinesis data stream, you can optionally specify which shard the event goes to by
+// using the KinesisParameters argument. To invoke a command on multiple EC2
+// instances with one rule, you can use the RunCommandParameters field. To be able
+// to make API calls against the resources that you own, Amazon EventBridge
+// (CloudWatch Events) needs the appropriate permissions. For AWS Lambda and Amazon
+// SNS resources, EventBridge relies on resource-based policies. For EC2 instances,
+// Kinesis data streams, AWS Step Functions state machines and API Gateway REST
+// APIs, EventBridge relies on IAM roles that you specify in the RoleARN argument
+// in PutTargets. For more information, see Authentication and Access Control
// (https://docs.aws.amazon.com/eventbridge/latest/userguide/auth-and-access-control-eventbridge.html)
// in the Amazon EventBridge User Guide. If another AWS account is in the same
// region and has granted you permission (using PutPermission), you can send events
diff --git a/service/cloudwatchevents/deserializers.go b/service/cloudwatchevents/deserializers.go
index 00fff2a94cd..892967be9ad 100644
--- a/service/cloudwatchevents/deserializers.go
+++ b/service/cloudwatchevents/deserializers.go
@@ -9754,6 +9754,125 @@ func awsAwsjson11_deserializeDocumentRunCommandTargetValues(v *[]string, value i
return nil
}
+func awsAwsjson11_deserializeDocumentSageMakerPipelineParameter(v **types.SageMakerPipelineParameter, 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.SageMakerPipelineParameter
+ if *v == nil {
+ sv = &types.SageMakerPipelineParameter{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Name":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected SageMakerPipelineParameterName to be of type string, got %T instead", value)
+ }
+ sv.Name = ptr.String(jtv)
+ }
+
+ case "Value":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected SageMakerPipelineParameterValue to be of type string, got %T instead", value)
+ }
+ sv.Value = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentSageMakerPipelineParameterList(v *[]types.SageMakerPipelineParameter, 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.SageMakerPipelineParameter
+ if *v == nil {
+ cv = []types.SageMakerPipelineParameter{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.SageMakerPipelineParameter
+ destAddr := &col
+ if err := awsAwsjson11_deserializeDocumentSageMakerPipelineParameter(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentSageMakerPipelineParameters(v **types.SageMakerPipelineParameters, 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.SageMakerPipelineParameters
+ if *v == nil {
+ sv = &types.SageMakerPipelineParameters{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "PipelineParameterList":
+ if err := awsAwsjson11_deserializeDocumentSageMakerPipelineParameterList(&sv.PipelineParameterList, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeDocumentSqsParameters(v **types.SqsParameters, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -10025,6 +10144,11 @@ func awsAwsjson11_deserializeDocumentTarget(v **types.Target, value interface{})
return err
}
+ case "SageMakerPipelineParameters":
+ if err := awsAwsjson11_deserializeDocumentSageMakerPipelineParameters(&sv.SageMakerPipelineParameters, value); err != nil {
+ return err
+ }
+
case "SqsParameters":
if err := awsAwsjson11_deserializeDocumentSqsParameters(&sv.SqsParameters, value); err != nil {
return err
diff --git a/service/cloudwatchevents/go.mod b/service/cloudwatchevents/go.mod
index fde15649aed..105850ea850 100644
--- a/service/cloudwatchevents/go.mod
+++ b/service/cloudwatchevents/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/cloudwatchevents/go.sum b/service/cloudwatchevents/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/cloudwatchevents/go.sum
+++ b/service/cloudwatchevents/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/cloudwatchevents/serializers.go b/service/cloudwatchevents/serializers.go
index 28a45bece30..e026df4edd6 100644
--- a/service/cloudwatchevents/serializers.go
+++ b/service/cloudwatchevents/serializers.go
@@ -3177,6 +3177,50 @@ func awsAwsjson11_serializeDocumentRunCommandTargetValues(v []string, value smit
return nil
}
+func awsAwsjson11_serializeDocumentSageMakerPipelineParameter(v *types.SageMakerPipelineParameter, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Name != nil {
+ ok := object.Key("Name")
+ ok.String(*v.Name)
+ }
+
+ if v.Value != nil {
+ ok := object.Key("Value")
+ ok.String(*v.Value)
+ }
+
+ return nil
+}
+
+func awsAwsjson11_serializeDocumentSageMakerPipelineParameterList(v []types.SageMakerPipelineParameter, value smithyjson.Value) error {
+ array := value.Array()
+ defer array.Close()
+
+ for i := range v {
+ av := array.Value()
+ if err := awsAwsjson11_serializeDocumentSageMakerPipelineParameter(&v[i], av); err != nil {
+ return err
+ }
+ }
+ return nil
+}
+
+func awsAwsjson11_serializeDocumentSageMakerPipelineParameters(v *types.SageMakerPipelineParameters, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.PipelineParameterList != nil {
+ ok := object.Key("PipelineParameterList")
+ if err := awsAwsjson11_serializeDocumentSageMakerPipelineParameterList(v.PipelineParameterList, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeDocumentSqsParameters(v *types.SqsParameters, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -3333,6 +3377,13 @@ func awsAwsjson11_serializeDocumentTarget(v *types.Target, value smithyjson.Valu
}
}
+ if v.SageMakerPipelineParameters != nil {
+ ok := object.Key("SageMakerPipelineParameters")
+ if err := awsAwsjson11_serializeDocumentSageMakerPipelineParameters(v.SageMakerPipelineParameters, ok); err != nil {
+ return err
+ }
+ }
+
if v.SqsParameters != nil {
ok := object.Key("SqsParameters")
if err := awsAwsjson11_serializeDocumentSqsParameters(v.SqsParameters, ok); err != nil {
diff --git a/service/cloudwatchevents/types/types.go b/service/cloudwatchevents/types/types.go
index bbdcf60e4d4..b605b9040a6 100644
--- a/service/cloudwatchevents/types/types.go
+++ b/service/cloudwatchevents/types/types.go
@@ -893,6 +893,30 @@ type RunCommandTarget struct {
Values []string
}
+// Name/Value pair of a parameter to start execution of a SageMaker Model Building
+// Pipeline.
+type SageMakerPipelineParameter struct {
+
+ // Name of parameter to start execution of a SageMaker Model Building Pipeline.
+ //
+ // This member is required.
+ Name *string
+
+ // Value of parameter to start execution of a SageMaker Model Building Pipeline.
+ //
+ // This member is required.
+ Value *string
+}
+
+// These are custom parameters to use when the target is a SageMaker Model Building
+// Pipeline that starts based on EventBridge events.
+type SageMakerPipelineParameters struct {
+
+ // List of Parameter names and values for SageMaker Model Building Pipeline
+ // execution.
+ PipelineParameterList []SageMakerPipelineParameter
+}
+
// This structure includes the custom parameter to be used when the target is an
// SQS FIFO queue.
type SqsParameters struct {
@@ -1004,6 +1028,12 @@ type Target struct {
// Parameters used when you are using the rule to invoke Amazon EC2 Run Command.
RunCommandParameters *RunCommandParameters
+ // Contains the SageMaker Model Building Pipeline parameters to start execution of
+ // a SageMaker Model Building Pipeline. If you specify a SageMaker Model Building
+ // Pipeline as a target, you can use this to specify parameters to start a pipeline
+ // execution based on EventBridge events.
+ SageMakerPipelineParameters *SageMakerPipelineParameters
+
// Contains the message group ID to use when the target is a FIFO queue. If you
// specify an SQS FIFO queue as a target, the queue must have content-based
// deduplication enabled.
diff --git a/service/cloudwatchevents/validators.go b/service/cloudwatchevents/validators.go
index 5c6aaf20322..6ff824088e9 100644
--- a/service/cloudwatchevents/validators.go
+++ b/service/cloudwatchevents/validators.go
@@ -1332,6 +1332,58 @@ func validateRunCommandTargets(v []types.RunCommandTarget) error {
}
}
+func validateSageMakerPipelineParameter(v *types.SageMakerPipelineParameter) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "SageMakerPipelineParameter"}
+ if v.Name == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Name"))
+ }
+ if v.Value == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Value"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateSageMakerPipelineParameterList(v []types.SageMakerPipelineParameter) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "SageMakerPipelineParameterList"}
+ for i := range v {
+ if err := validateSageMakerPipelineParameter(&v[i]); err != nil {
+ invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateSageMakerPipelineParameters(v *types.SageMakerPipelineParameters) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "SageMakerPipelineParameters"}
+ if v.PipelineParameterList != nil {
+ if err := validateSageMakerPipelineParameterList(v.PipelineParameterList); err != nil {
+ invalidParams.AddNested("PipelineParameterList", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateTag(v *types.Tag) error {
if v == nil {
return nil
@@ -1408,6 +1460,11 @@ func validateTarget(v *types.Target) error {
invalidParams.AddNested("RedshiftDataParameters", err.(smithy.InvalidParamsError))
}
}
+ if v.SageMakerPipelineParameters != nil {
+ if err := validateSageMakerPipelineParameters(v.SageMakerPipelineParameters); err != nil {
+ invalidParams.AddNested("SageMakerPipelineParameters", err.(smithy.InvalidParamsError))
+ }
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
diff --git a/service/cloudwatchlogs/go.mod b/service/cloudwatchlogs/go.mod
index 4c881aeec3a..f116531f739 100644
--- a/service/cloudwatchlogs/go.mod
+++ b/service/cloudwatchlogs/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/cloudwatchlogs/go.sum b/service/cloudwatchlogs/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/cloudwatchlogs/go.sum
+++ b/service/cloudwatchlogs/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/codeartifact/api_op_AssociateExternalConnection.go b/service/codeartifact/api_op_AssociateExternalConnection.go
index c67e2f703cd..62eeec45dd6 100644
--- a/service/codeartifact/api_op_AssociateExternalConnection.go
+++ b/service/codeartifact/api_op_AssociateExternalConnection.go
@@ -55,9 +55,6 @@ type AssociateExternalConnectionInput struct {
// *
// public:maven-commonsware - for the CommonsWare Android repository.
//
- // *
- // public:nuget-org - for the NuGet Gallery.
- //
// This member is required.
ExternalConnection *string
diff --git a/service/codeartifact/api_op_CopyPackageVersions.go b/service/codeartifact/api_op_CopyPackageVersions.go
index 56fa112f82c..9cf39dffaf9 100644
--- a/service/codeartifact/api_op_CopyPackageVersions.go
+++ b/service/codeartifact/api_op_CopyPackageVersions.go
@@ -51,8 +51,6 @@ type CopyPackageVersionsInput struct {
// * maven: A Maven package that contains compiled code in a
// distributable format, such as a JAR file.
//
- // * nuget: A NuGet package.
- //
// This member is required.
Format types.PackageFormat
@@ -93,9 +91,6 @@ type CopyPackageVersionsInput struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
// A list of key-value pairs. The keys are package versions and the values are
diff --git a/service/codeartifact/api_op_CreateRepository.go b/service/codeartifact/api_op_CreateRepository.go
index ed8f4dc3641..9b882adb5e3 100644
--- a/service/codeartifact/api_op_CreateRepository.go
+++ b/service/codeartifact/api_op_CreateRepository.go
@@ -29,7 +29,7 @@ func (c *Client) CreateRepository(ctx context.Context, params *CreateRepositoryI
type CreateRepositoryInput struct {
- // The domain that contains the created repository.
+ // The name of the domain that contains the created repository.
//
// This member is required.
Domain *string
diff --git a/service/codeartifact/api_op_DeletePackageVersions.go b/service/codeartifact/api_op_DeletePackageVersions.go
index 705c245fd81..86ac1944331 100644
--- a/service/codeartifact/api_op_DeletePackageVersions.go
+++ b/service/codeartifact/api_op_DeletePackageVersions.go
@@ -50,8 +50,6 @@ type DeletePackageVersionsInput struct {
//
// * maven
//
- // * nuget
- //
// This member is required.
Format types.PackageFormat
@@ -99,9 +97,6 @@ type DeletePackageVersionsInput struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
}
diff --git a/service/codeartifact/api_op_DescribePackageVersion.go b/service/codeartifact/api_op_DescribePackageVersion.go
index ac8b448355b..9cb1ec08a1d 100644
--- a/service/codeartifact/api_op_DescribePackageVersion.go
+++ b/service/codeartifact/api_op_DescribePackageVersion.go
@@ -46,8 +46,6 @@ type DescribePackageVersionInput struct {
//
// * maven
//
- // * nuget
- //
// This member is required.
Format types.PackageFormat
@@ -81,9 +79,6 @@ type DescribePackageVersionInput struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
}
diff --git a/service/codeartifact/api_op_DisposePackageVersions.go b/service/codeartifact/api_op_DisposePackageVersions.go
index 9ed019fe8b4..56410370faf 100644
--- a/service/codeartifact/api_op_DisposePackageVersions.go
+++ b/service/codeartifact/api_op_DisposePackageVersions.go
@@ -52,8 +52,6 @@ type DisposePackageVersionsInput struct {
//
// * maven
//
- // * nuget
- //
// This member is required.
Format types.PackageFormat
@@ -102,9 +100,6 @@ type DisposePackageVersionsInput struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
// The revisions of the package versions you want to dispose.
diff --git a/service/codeartifact/api_op_GetPackageVersionAsset.go b/service/codeartifact/api_op_GetPackageVersionAsset.go
index 7c2df424cdd..afe7e68de93 100644
--- a/service/codeartifact/api_op_GetPackageVersionAsset.go
+++ b/service/codeartifact/api_op_GetPackageVersionAsset.go
@@ -37,8 +37,8 @@ type GetPackageVersionAssetInput struct {
// This member is required.
Asset *string
- // The domain that contains the repository that contains the package version with
- // the requested asset.
+ // The name of the domain that contains the repository that contains the package
+ // version with the requested asset.
//
// This member is required.
Domain *string
@@ -52,8 +52,6 @@ type GetPackageVersionAssetInput struct {
//
// * maven
//
- // * nuget
- //
// This member is required.
Format types.PackageFormat
@@ -87,9 +85,6 @@ type GetPackageVersionAssetInput struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
// The name of the package version revision that contains the requested asset.
diff --git a/service/codeartifact/api_op_GetPackageVersionReadme.go b/service/codeartifact/api_op_GetPackageVersionReadme.go
index 8a2169aaecd..703b91ec8ed 100644
--- a/service/codeartifact/api_op_GetPackageVersionReadme.go
+++ b/service/codeartifact/api_op_GetPackageVersionReadme.go
@@ -48,8 +48,6 @@ type GetPackageVersionReadmeInput struct {
//
// * maven
//
- // * nuget
- //
// This member is required.
Format types.PackageFormat
@@ -83,9 +81,6 @@ type GetPackageVersionReadmeInput struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
}
@@ -99,8 +94,6 @@ type GetPackageVersionReadmeOutput struct {
// * pypi
//
// * maven
- //
- // * nuget
Format types.PackageFormat
// The namespace of the package. The package component that specifies its namespace
@@ -114,9 +107,6 @@ type GetPackageVersionReadmeOutput struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
// The name of the package that contains the returned readme file.
diff --git a/service/codeartifact/api_op_GetRepositoryEndpoint.go b/service/codeartifact/api_op_GetRepositoryEndpoint.go
index cc80de0ec95..061c4bde9c6 100644
--- a/service/codeartifact/api_op_GetRepositoryEndpoint.go
+++ b/service/codeartifact/api_op_GetRepositoryEndpoint.go
@@ -19,8 +19,6 @@ import (
// * pypi
//
// * maven
-//
-// * nuget
func (c *Client) GetRepositoryEndpoint(ctx context.Context, params *GetRepositoryEndpointInput, optFns ...func(*Options)) (*GetRepositoryEndpointOutput, error) {
if params == nil {
params = &GetRepositoryEndpointInput{}
@@ -52,8 +50,6 @@ type GetRepositoryEndpointInput struct {
//
// * maven
//
- // * nuget
- //
// This member is required.
Format types.PackageFormat
diff --git a/service/codeartifact/api_op_ListPackageVersionAssets.go b/service/codeartifact/api_op_ListPackageVersionAssets.go
index 1998ba324da..35522ac04fc 100644
--- a/service/codeartifact/api_op_ListPackageVersionAssets.go
+++ b/service/codeartifact/api_op_ListPackageVersionAssets.go
@@ -49,9 +49,6 @@ type ListPackageVersionAssetsInput struct {
// * maven: A Maven package that contains
// compiled code in a distributable format, such as a JAR file.
//
- // * nuget: A NuGet
- // package.
- //
// This member is required.
Format types.PackageFormat
@@ -89,9 +86,6 @@ type ListPackageVersionAssetsInput struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
// The token for the next set of results. Use the value returned in the previous
@@ -120,9 +114,6 @@ type ListPackageVersionAssetsOutput struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
// If there are additional results, this is the token for the next set of results.
diff --git a/service/codeartifact/api_op_ListPackageVersionDependencies.go b/service/codeartifact/api_op_ListPackageVersionDependencies.go
index 520c0f02fe4..26665fd5a63 100644
--- a/service/codeartifact/api_op_ListPackageVersionDependencies.go
+++ b/service/codeartifact/api_op_ListPackageVersionDependencies.go
@@ -35,8 +35,8 @@ func (c *Client) ListPackageVersionDependencies(ctx context.Context, params *Lis
type ListPackageVersionDependenciesInput struct {
- // The domain that contains the repository that contains the requested package
- // version dependencies.
+ // The name of the domain that contains the repository that contains the requested
+ // package version dependencies.
//
// This member is required.
Domain *string
@@ -52,8 +52,6 @@ type ListPackageVersionDependenciesInput struct {
// * maven: A Maven package that contains compiled
// code in a distributable format, such as a JAR file.
//
- // * nuget: A NuGet package.
- //
// This member is required.
Format types.PackageFormat
@@ -87,9 +85,6 @@ type ListPackageVersionDependenciesInput struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
// The token for the next set of results. Use the value returned in the previous
@@ -112,8 +107,6 @@ type ListPackageVersionDependenciesOutput struct {
// * pypi
//
// * maven
- //
- // * nuget
Format types.PackageFormat
// The namespace of the package. The package component that specifies its namespace
@@ -127,9 +120,6 @@ type ListPackageVersionDependenciesOutput struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
// The token for the next set of results. Use the value returned in the previous
diff --git a/service/codeartifact/api_op_ListPackageVersions.go b/service/codeartifact/api_op_ListPackageVersions.go
index 2412e94fc41..1bfcd2c9abc 100644
--- a/service/codeartifact/api_op_ListPackageVersions.go
+++ b/service/codeartifact/api_op_ListPackageVersions.go
@@ -49,8 +49,6 @@ type ListPackageVersionsInput struct {
// * maven: A Maven package that contains compiled code in a
// distributable format, such as a JAR file.
//
- // * nuget: A NuGet package.
- //
// This member is required.
Format types.PackageFormat
@@ -82,9 +80,6 @@ type ListPackageVersionsInput struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
// The token for the next set of results. Use the value returned in the previous
@@ -130,8 +125,6 @@ type ListPackageVersionsOutput struct {
//
// *
// maven
- //
- // * nuget
Format types.PackageFormat
// The namespace of the package. The package component that specifies its namespace
@@ -145,9 +138,6 @@ type ListPackageVersionsOutput struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
// If there are additional results, this is the token for the next set of results.
diff --git a/service/codeartifact/api_op_ListPackages.go b/service/codeartifact/api_op_ListPackages.go
index 35145a8f600..9cc674be526 100644
--- a/service/codeartifact/api_op_ListPackages.go
+++ b/service/codeartifact/api_op_ListPackages.go
@@ -32,8 +32,8 @@ func (c *Client) ListPackages(ctx context.Context, params *ListPackagesInput, op
type ListPackagesInput struct {
- // The domain that contains the repository that contains the requested list of
- // packages.
+ // The name of the domain that contains the repository that contains the requested
+ // list of packages.
//
// This member is required.
Domain *string
@@ -57,8 +57,6 @@ type ListPackagesInput struct {
// * maven:
// A Maven package that contains compiled code in a distributable format, such as a
// JAR file.
- //
- // * nuget: A NuGet package.
Format types.PackageFormat
// The maximum number of results to return per page.
@@ -75,9 +73,6 @@ type ListPackagesInput struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
// The token for the next set of results. Use the value returned in the previous
diff --git a/service/codeartifact/api_op_UpdatePackageVersionsStatus.go b/service/codeartifact/api_op_UpdatePackageVersionsStatus.go
index 70793199131..c1c78580d72 100644
--- a/service/codeartifact/api_op_UpdatePackageVersionsStatus.go
+++ b/service/codeartifact/api_op_UpdatePackageVersionsStatus.go
@@ -29,8 +29,8 @@ func (c *Client) UpdatePackageVersionsStatus(ctx context.Context, params *Update
type UpdatePackageVersionsStatusInput struct {
- // The domain that contains the repository that contains the package versions with
- // a status to be updated.
+ // The name of the domain that contains the repository that contains the package
+ // versions with a status to be updated.
//
// This member is required.
Domain *string
@@ -44,8 +44,6 @@ type UpdatePackageVersionsStatusInput struct {
//
// * maven
//
- // * nuget
- //
// This member is required.
Format types.PackageFormat
@@ -91,9 +89,6 @@ type UpdatePackageVersionsStatusInput struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
// A map of package versions and package version revisions. The map key is the
diff --git a/service/codeartifact/doc.go b/service/codeartifact/doc.go
index 5564b94f679..4b22ea7691d 100644
--- a/service/codeartifact/doc.go
+++ b/service/codeartifact/doc.go
@@ -4,32 +4,32 @@
// for CodeArtifact.
//
// AWS CodeArtifact is a fully managed artifact repository compatible with
-// language-native package managers and build tools such as npm, Apache Maven,
-// NuGet, and pip. You can use CodeArtifact to share packages with development
-// teams and pull packages. Packages can be pulled from both public and
-// CodeArtifact repositories. You can also create an upstream relationship between
-// a CodeArtifact repository and another repository, which effectively merges their
-// contents from the point of view of a package manager client. AWS CodeArtifact
-// Components Use the information in this guide to help you work with the following
-// CodeArtifact components:
-//
-// * Repository: A CodeArtifact repository contains a set
-// of package versions
+// language-native package managers and build tools such as npm, Apache Maven, and
+// pip. You can use CodeArtifact to share packages with development teams and pull
+// packages. Packages can be pulled from both public and CodeArtifact repositories.
+// You can also create an upstream relationship between a CodeArtifact repository
+// and another repository, which effectively merges their contents from the point
+// of view of a package manager client. AWS CodeArtifact Components Use the
+// information in this guide to help you work with the following CodeArtifact
+// components:
+//
+// * Repository: A CodeArtifact repository contains a set of package
+// versions
// (https://docs.aws.amazon.com/codeartifact/latest/ug/welcome.html#welcome-concepts-package-version),
// each of which maps to a set of assets, or files. Repositories are polyglot, so a
// single repository can contain packages of any supported type. Each repository
// exposes endpoints for fetching and publishing packages using tools like the npm
-// CLI, the NuGet CLI, the Maven CLI ( mvn ), and pip .
-//
-// * Domain: Repositories are
-// aggregated into a higher-level entity known as a domain. All package assets and
-// metadata are stored in the domain, but are consumed through repositories. A
-// given package asset, such as a Maven JAR file, is stored once per domain, no
-// matter how many repositories it's present in. All of the assets and metadata in
-// a domain are encrypted with the same customer master key (CMK) stored in AWS Key
-// Management Service (AWS KMS). Each repository is a member of a single domain and
-// can't be moved to a different domain. The domain allows organizational policy to
-// be applied across multiple repositories, such as which accounts can access
+// CLI, the Maven CLI ( mvn ), and pip .
+//
+// * Domain: Repositories are aggregated
+// into a higher-level entity known as a domain. All package assets and metadata
+// are stored in the domain, but are consumed through repositories. A given package
+// asset, such as a Maven JAR file, is stored once per domain, no matter how many
+// repositories it's present in. All of the assets and metadata in a domain are
+// encrypted with the same customer master key (CMK) stored in AWS Key Management
+// Service (AWS KMS). Each repository is a member of a single domain and can't be
+// moved to a different domain. The domain allows organizational policy to be
+// applied across multiple repositories, such as which accounts can access
// repositories in the domain, and which public repositories can be used as sources
// of packages. Although an organization can have multiple domains, we recommend a
// single production domain that contains all published artifacts so that teams can
@@ -39,9 +39,8 @@
// bundle of software and the metadata required to resolve dependencies and install
// the software. CodeArtifact supports npm
// (https://docs.aws.amazon.com/codeartifact/latest/ug/using-npm.html), PyPI
-// (https://docs.aws.amazon.com/codeartifact/latest/ug/using-python.html), Maven
-// (https://docs.aws.amazon.com/codeartifact/latest/ug/using-maven), and NuGet
-// (https://docs.aws.amazon.com/codeartifact/latest/ug/using-nuget) package
+// (https://docs.aws.amazon.com/codeartifact/latest/ug/using-python.html), and
+// Maven (https://docs.aws.amazon.com/codeartifact/latest/ug/using-maven) package
// formats.
//
// In CodeArtifact, a package consists of:
@@ -152,8 +151,6 @@
//
// * maven
//
-// * nuget
-//
// *
// GetRepositoryPermissionsPolicy: Returns the resource policy that is set on a
// repository.
@@ -180,9 +177,6 @@
// * ListRepositoriesInDomain: Returns a
// list of the repositories in a domain.
//
-// * ListTagsForResource: Returns a list of
-// the tags associated with a resource.
-//
// * PutDomainPermissionsPolicy: Attaches a
// resource policy to a domain.
//
@@ -190,14 +184,8 @@
// resource policy on a repository that specifies permissions to access it.
//
// *
-// TagResource: Adds or updates tags for a resource.
-//
-// * UntagResource: Removes a
-// tag from a resource.
+// UpdatePackageVersionsStatus: Updates the status of one or more versions of a
+// package.
//
-// * UpdatePackageVersionsStatus: Updates the status of one
-// or more versions of a package.
-//
-// * UpdateRepository: Updates the properties of a
-// repository.
+// * UpdateRepository: Updates the properties of a repository.
package codeartifact
diff --git a/service/codeartifact/go.mod b/service/codeartifact/go.mod
index fee5b81045c..f05184ae767 100644
--- a/service/codeartifact/go.mod
+++ b/service/codeartifact/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/codeartifact/go.sum b/service/codeartifact/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/codeartifact/go.sum
+++ b/service/codeartifact/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/codeartifact/types/types.go b/service/codeartifact/types/types.go
index d6480491126..d2226c80d74 100644
--- a/service/codeartifact/types/types.go
+++ b/service/codeartifact/types/types.go
@@ -118,9 +118,6 @@ type PackageDependency struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
// The name of the package that this package depends on.
@@ -145,8 +142,6 @@ type PackageSummary struct {
// * pypi
//
// * maven
- //
- // * nuget
Format PackageFormat
// The namespace of the package. The package component that specifies its namespace
@@ -160,9 +155,6 @@ type PackageSummary struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
// The name of the package.
@@ -187,8 +179,6 @@ type PackageVersionDescription struct {
//
// * maven: A Maven package that contains compiled code in a
// distributable format, such as a JAR file.
- //
- // * nuget: A NuGet package.
Format PackageFormat
// The homepage associated with the package.
@@ -208,9 +198,6 @@ type PackageVersionDescription struct {
// * A Python package
// does not contain a corresponding component, so Python packages do not have a
// namespace.
- //
- // * A NuGet package does not contain a corresponding component, so
- // NuGet packages do not have a namespace.
Namespace *string
// The name of the requested package.
@@ -358,9 +345,6 @@ type RepositoryExternalConnectionInfo struct {
//
// * maven: A Maven package that contains
// compiled code in a distributable format, such as a JAR file.
- //
- // * nuget: A NuGet
- // package.
PackageFormat PackageFormat
// The status of the external connection of a repository. There is one valid value,
diff --git a/service/codebuild/go.mod b/service/codebuild/go.mod
index 8cf37b64f78..2f0ff23875e 100644
--- a/service/codebuild/go.mod
+++ b/service/codebuild/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/codebuild/go.sum b/service/codebuild/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/codebuild/go.sum
+++ b/service/codebuild/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/codecommit/go.mod b/service/codecommit/go.mod
index 4fdef693016..b5795730978 100644
--- a/service/codecommit/go.mod
+++ b/service/codecommit/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/codecommit/go.sum b/service/codecommit/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/codecommit/go.sum
+++ b/service/codecommit/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/codedeploy/go.mod b/service/codedeploy/go.mod
index 8e5781e3771..5c4752199d3 100644
--- a/service/codedeploy/go.mod
+++ b/service/codedeploy/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/codedeploy/go.sum b/service/codedeploy/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/codedeploy/go.sum
+++ b/service/codedeploy/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/codeguruprofiler/go.mod b/service/codeguruprofiler/go.mod
index 21d205786ef..8ff2ca1adbb 100644
--- a/service/codeguruprofiler/go.mod
+++ b/service/codeguruprofiler/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/codeguruprofiler/go.sum b/service/codeguruprofiler/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/codeguruprofiler/go.sum
+++ b/service/codeguruprofiler/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/codegurureviewer/go.mod b/service/codegurureviewer/go.mod
index 847ae222649..51b7048e8e2 100644
--- a/service/codegurureviewer/go.mod
+++ b/service/codegurureviewer/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/codegurureviewer/go.sum b/service/codegurureviewer/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/codegurureviewer/go.sum
+++ b/service/codegurureviewer/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/codepipeline/go.mod b/service/codepipeline/go.mod
index cfa69f39625..b93249e8a0c 100644
--- a/service/codepipeline/go.mod
+++ b/service/codepipeline/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/codepipeline/go.sum b/service/codepipeline/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/codepipeline/go.sum
+++ b/service/codepipeline/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/codestar/go.mod b/service/codestar/go.mod
index 1ab1a1e04b6..1e8a0ff40b5 100644
--- a/service/codestar/go.mod
+++ b/service/codestar/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/codestar/go.sum b/service/codestar/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/codestar/go.sum
+++ b/service/codestar/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/codestarconnections/go.mod b/service/codestarconnections/go.mod
index 434602f89d4..d36b26015e0 100644
--- a/service/codestarconnections/go.mod
+++ b/service/codestarconnections/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/codestarconnections/go.sum b/service/codestarconnections/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/codestarconnections/go.sum
+++ b/service/codestarconnections/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/codestarnotifications/go.mod b/service/codestarnotifications/go.mod
index 96c6b041993..f0fc0de6c0c 100644
--- a/service/codestarnotifications/go.mod
+++ b/service/codestarnotifications/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/codestarnotifications/go.sum b/service/codestarnotifications/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/codestarnotifications/go.sum
+++ b/service/codestarnotifications/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/cognitoidentity/go.mod b/service/cognitoidentity/go.mod
index 2794790a2d5..6e10f961e46 100644
--- a/service/cognitoidentity/go.mod
+++ b/service/cognitoidentity/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/cognitoidentity/go.sum b/service/cognitoidentity/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/cognitoidentity/go.sum
+++ b/service/cognitoidentity/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/cognitoidentityprovider/go.mod b/service/cognitoidentityprovider/go.mod
index 3bb3c52f9d3..0c6e872ff4f 100644
--- a/service/cognitoidentityprovider/go.mod
+++ b/service/cognitoidentityprovider/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/cognitoidentityprovider/go.sum b/service/cognitoidentityprovider/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/cognitoidentityprovider/go.sum
+++ b/service/cognitoidentityprovider/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/cognitosync/api_op_BulkPublish.go b/service/cognitosync/api_op_BulkPublish.go
index 7d704b5179c..5b8bf670c54 100644
--- a/service/cognitosync/api_op_BulkPublish.go
+++ b/service/cognitosync/api_op_BulkPublish.go
@@ -13,7 +13,7 @@ import (
// Initiates a bulk publish of all existing datasets for an Identity Pool to the
// configured stream. Customers are limited to one successful bulk publish per 24
// hours. Bulk publish is an asynchronous request, customers can see the status of
-// the request via the GetBulkPublishDetails operation. This API can only be called
+// the request via the GetBulkPublishDetails operation.This API can only be called
// with developer credentials. You cannot call this API with the temporary user
// credentials provided by Cognito Identity.
func (c *Client) BulkPublish(ctx context.Context, params *BulkPublishInput, optFns ...func(*Options)) (*BulkPublishOutput, error) {
diff --git a/service/cognitosync/api_op_DescribeDataset.go b/service/cognitosync/api_op_DescribeDataset.go
index b77c3d4c508..77237ffa6ff 100644
--- a/service/cognitosync/api_op_DescribeDataset.go
+++ b/service/cognitosync/api_op_DescribeDataset.go
@@ -58,11 +58,11 @@ type DescribeDatasetInput struct {
// Response to a successful DescribeDataset request.
type DescribeDatasetOutput struct {
- // Metadata for a collection of data for an identity. An identity can have multiple
- // datasets. A dataset can be general or associated with a particular entity in an
- // application (like a saved game). Datasets are automatically created if they
- // don't exist. Data is synced by dataset, and a dataset can hold up to 1MB of
- // key-value pairs
+ // Meta data for a collection of data for an identity. An identity can have
+ // multiple datasets. A dataset can be general or associated with a particular
+ // entity in an application (like a saved game). Datasets are automatically created
+ // if they don't exist. Data is synced by dataset, and a dataset can hold up to 1MB
+ // of key-value pairs.
Dataset *types.Dataset
// Metadata pertaining to the operation's result.
diff --git a/service/cognitosync/api_op_DescribeIdentityPoolUsage.go b/service/cognitosync/api_op_DescribeIdentityPoolUsage.go
index db07c15a27d..0b92fcd5538 100644
--- a/service/cognitosync/api_op_DescribeIdentityPoolUsage.go
+++ b/service/cognitosync/api_op_DescribeIdentityPoolUsage.go
@@ -14,6 +14,23 @@ import (
// Gets usage details (for example, data storage) about a particular identity pool.
// This API can only be called with developer credentials. You cannot call this API
// with the temporary user credentials provided by Cognito Identity.
+// DescribeIdentityPoolUsage The following examples have been edited for
+// readability. POST / HTTP/1.1 CONTENT-TYPE: application/json X-AMZN-REQUESTID:
+// 8dc0e749-c8cd-48bd-8520-da6be00d528b X-AMZ-TARGET:
+// com.amazonaws.cognito.sync.model.AWSCognitoSyncService.DescribeIdentityPoolUsage
+// HOST: cognito-sync.us-east-1.amazonaws.com:443 X-AMZ-DATE: 20141111T205737Z
+// AUTHORIZATION: AWS4-HMAC-SHA256 Credential=,
+// SignedHeaders=content-type;host;x-amz-date;x-amz-target;x-amzn-requestid,
+// Signature= { "Operation":
+// "com.amazonaws.cognito.sync.model#DescribeIdentityPoolUsage", "Service":
+// "com.amazonaws.cognito.sync.model#AWSCognitoSyncService", "Input": {
+// "IdentityPoolId": "IDENTITY_POOL_ID" } } 1.1 200 OK x-amzn-requestid:
+// 8dc0e749-c8cd-48bd-8520-da6be00d528b content-type: application/json
+// content-length: 271 date: Tue, 11 Nov 2014 20:57:37 GMT { "Output": { "__type":
+// "com.amazonaws.cognito.sync.model#DescribeIdentityPoolUsageResponse",
+// "IdentityPoolUsage": { "DataStorage": 0, "IdentityPoolId": "IDENTITY_POOL_ID",
+// "LastModifiedDate": 1.413231134115E9, "SyncSessionsCount": null } }, "Version":
+// "1.0" }
func (c *Client) DescribeIdentityPoolUsage(ctx context.Context, params *DescribeIdentityPoolUsageInput, optFns ...func(*Options)) (*DescribeIdentityPoolUsageOutput, error) {
if params == nil {
params = &DescribeIdentityPoolUsageInput{}
diff --git a/service/cognitosync/api_op_DescribeIdentityUsage.go b/service/cognitosync/api_op_DescribeIdentityUsage.go
index 216d27f1f09..3f8729eff88 100644
--- a/service/cognitosync/api_op_DescribeIdentityUsage.go
+++ b/service/cognitosync/api_op_DescribeIdentityUsage.go
@@ -13,7 +13,25 @@ import (
// Gets usage information for an identity, including number of datasets and data
// usage. This API can be called with temporary user credentials provided by
-// Cognito Identity or with developer credentials.
+// Cognito Identity or with developer credentials. DescribeIdentityUsage The
+// following examples have been edited for readability. POST / HTTP/1.1
+// CONTENT-TYPE: application/json X-AMZN-REQUESTID:
+// 33f9b4e4-a177-4aad-a3bb-6edb7980b283 X-AMZ-TARGET:
+// com.amazonaws.cognito.sync.model.AWSCognitoSyncService.DescribeIdentityUsage
+// HOST: cognito-sync.us-east-1.amazonaws.com:443 X-AMZ-DATE: 20141111T215129Z
+// AUTHORIZATION: AWS4-HMAC-SHA256 Credential=,
+// SignedHeaders=content-type;host;x-amz-date;x-amz-target;x-amzn-requestid,
+// Signature= { "Operation":
+// "com.amazonaws.cognito.sync.model#DescribeIdentityUsage", "Service":
+// "com.amazonaws.cognito.sync.model#AWSCognitoSyncService", "Input": {
+// "IdentityPoolId": "IDENTITY_POOL_ID", "IdentityId": "IDENTITY_ID" } } 1.1 200 OK
+// x-amzn-requestid: 33f9b4e4-a177-4aad-a3bb-6edb7980b283 content-type:
+// application/json content-length: 318 date: Tue, 11 Nov 2014 21:51:29 GMT {
+// "Output": { "__type":
+// "com.amazonaws.cognito.sync.model#DescribeIdentityUsageResponse",
+// "IdentityUsage": { "DataStorage": 16, "DatasetCount": 1, "IdentityId":
+// "IDENTITY_ID", "IdentityPoolId": "IDENTITY_POOL_ID", "LastModifiedDate":
+// 1.412974081336E9 } }, "Version": "1.0" }
func (c *Client) DescribeIdentityUsage(ctx context.Context, params *DescribeIdentityUsageInput, optFns ...func(*Options)) (*DescribeIdentityUsageOutput, error) {
if params == nil {
params = &DescribeIdentityUsageInput{}
diff --git a/service/cognitosync/api_op_GetBulkPublishDetails.go b/service/cognitosync/api_op_GetBulkPublishDetails.go
index 3e2803cf67a..8f88d9cf6bb 100644
--- a/service/cognitosync/api_op_GetBulkPublishDetails.go
+++ b/service/cognitosync/api_op_GetBulkPublishDetails.go
@@ -12,7 +12,7 @@ import (
"time"
)
-// Get the status of the last BulkPublish operation for an identity pool. This API
+// Get the status of the last BulkPublish operation for an identity pool.This API
// can only be called with developer credentials. You cannot call this API with the
// temporary user credentials provided by Cognito Identity.
func (c *Client) GetBulkPublishDetails(ctx context.Context, params *GetBulkPublishDetailsInput, optFns ...func(*Options)) (*GetBulkPublishDetailsOutput, error) {
@@ -50,19 +50,11 @@ type GetBulkPublishDetailsOutput struct {
// The date/time at which the last bulk publish was initiated.
BulkPublishStartTime *time.Time
- // Status of the last bulk publish operation, valid values are:
- //
- // * NOT_STARTED - No
- // bulk publish has been requested for this identity pool
- //
- // * IN_PROGRESS - Data is
- // being published to the configured stream
- //
- // * SUCCEEDED - All data for the
- // identity pool has been published to the configured stream
- //
- // * FAILED - Some
- // portion of the data has failed to publish, check FailureMessage for the cause.
+ // Status of the last bulk publish operation, valid values are: NOT_STARTED - No
+ // bulk publish has been requested for this identity pool IN_PROGRESS - Data is
+ // being published to the configured stream SUCCEEDED - All data for the identity
+ // pool has been published to the configured stream FAILED - Some portion of the
+ // data has failed to publish, check FailureMessage for the cause.
BulkPublishStatus types.BulkPublishStatus
// If BulkPublishStatus is FAILED this field will contain the error message that
diff --git a/service/cognitosync/api_op_GetCognitoEvents.go b/service/cognitosync/api_op_GetCognitoEvents.go
index e3acf866fb7..e4b9a76d023 100644
--- a/service/cognitosync/api_op_GetCognitoEvents.go
+++ b/service/cognitosync/api_op_GetCognitoEvents.go
@@ -11,9 +11,8 @@ import (
)
// Gets the events and the corresponding Lambda functions associated with an
-// identity pool. This API can only be called with developer credentials. You
-// cannot call this API with the temporary user credentials provided by Cognito
-// Identity.
+// identity pool.This API can only be called with developer credentials. You cannot
+// call this API with the temporary user credentials provided by Cognito Identity.
func (c *Client) GetCognitoEvents(ctx context.Context, params *GetCognitoEventsInput, optFns ...func(*Options)) (*GetCognitoEventsOutput, error) {
if params == nil {
params = &GetCognitoEventsInput{}
diff --git a/service/cognitosync/api_op_GetIdentityPoolConfiguration.go b/service/cognitosync/api_op_GetIdentityPoolConfiguration.go
index 342cc39b98d..3c206ce79b7 100644
--- a/service/cognitosync/api_op_GetIdentityPoolConfiguration.go
+++ b/service/cognitosync/api_op_GetIdentityPoolConfiguration.go
@@ -11,9 +11,25 @@ import (
smithyhttp "github.com/aws/smithy-go/transport/http"
)
-// Gets the configuration settings of an identity pool. This API can only be called
+// Gets the configuration settings of an identity pool.This API can only be called
// with developer credentials. You cannot call this API with the temporary user
-// credentials provided by Cognito Identity.
+// credentials provided by Cognito Identity. GetIdentityPoolConfiguration The
+// following examples have been edited for readability. POST / HTTP/1.1
+// CONTENT-TYPE: application/json X-AMZN-REQUESTID:
+// b1cfdd4b-f620-4fe4-be0f-02024a1d33da X-AMZ-TARGET:
+// com.amazonaws.cognito.sync.model.AWSCognitoSyncService.GetIdentityPoolConfiguration
+// HOST: cognito-sync.us-east-1.amazonaws.com X-AMZ-DATE: 20141004T195722Z
+// AUTHORIZATION: AWS4-HMAC-SHA256 Credential=,
+// SignedHeaders=content-type;content-length;host;x-amz-date;x-amz-target,
+// Signature= { "Operation":
+// "com.amazonaws.cognito.sync.model#GetIdentityPoolConfiguration", "Service":
+// "com.amazonaws.cognito.sync.model#AWSCognitoSyncService", "Input": {
+// "IdentityPoolId": "ID_POOL_ID" } } 1.1 200 OK x-amzn-requestid:
+// b1cfdd4b-f620-4fe4-be0f-02024a1d33da date: Sat, 04 Oct 2014 19:57:22 GMT
+// content-type: application/json content-length: 332 { "Output": { "__type":
+// "com.amazonaws.cognito.sync.model#GetIdentityPoolConfigurationResponse",
+// "IdentityPoolId": "ID_POOL_ID", "PushSync": { "ApplicationArns":
+// ["PLATFORMARN1", "PLATFORMARN2"], "RoleArn": "ROLEARN" } }, "Version": "1.0" }
func (c *Client) GetIdentityPoolConfiguration(ctx context.Context, params *GetIdentityPoolConfigurationInput, optFns ...func(*Options)) (*GetIdentityPoolConfigurationOutput, error) {
if params == nil {
params = &GetIdentityPoolConfigurationInput{}
diff --git a/service/cognitosync/api_op_ListDatasets.go b/service/cognitosync/api_op_ListDatasets.go
index 18f8f08dcc0..431491411e6 100644
--- a/service/cognitosync/api_op_ListDatasets.go
+++ b/service/cognitosync/api_op_ListDatasets.go
@@ -16,7 +16,24 @@ import (
// need to have access to the identity data. ListDatasets can be called with
// temporary user credentials provided by Cognito Identity or with developer
// credentials. You should use the Cognito Identity credentials to make this API
-// call.
+// call. ListDatasets The following examples have been edited for readability. POST
+// / HTTP/1.1 CONTENT-TYPE: application/json X-AMZN-REQUESTID:
+// 15225768-209f-4078-aaed-7494ace9f2db X-AMZ-TARGET:
+// com.amazonaws.cognito.sync.model.AWSCognitoSyncService.ListDatasets HOST:
+// cognito-sync.us-east-1.amazonaws.com:443 X-AMZ-DATE: 20141111T215640Z
+// AUTHORIZATION: AWS4-HMAC-SHA256 Credential=,
+// SignedHeaders=content-type;host;x-amz-date;x-amz-target;x-amzn-requestid,
+// Signature= { "Operation": "com.amazonaws.cognito.sync.model#ListDatasets",
+// "Service": "com.amazonaws.cognito.sync.model#AWSCognitoSyncService", "Input": {
+// "IdentityPoolId": "IDENTITY_POOL_ID", "IdentityId": "IDENTITY_ID", "MaxResults":
+// "3" } } 1.1 200 OK x-amzn-requestid: 15225768-209f-4078-aaed-7494ace9f2db,
+// 15225768-209f-4078-aaed-7494ace9f2db content-type: application/json
+// content-length: 355 date: Tue, 11 Nov 2014 21:56:40 GMT { "Output": { "__type":
+// "com.amazonaws.cognito.sync.model#ListDatasetsResponse", "Count": 1, "Datasets":
+// [ { "CreationDate": 1.412974057151E9, "DataStorage": 16, "DatasetName":
+// "my_list", "IdentityId": "IDENTITY_ID", "LastModifiedBy": "123456789012",
+// "LastModifiedDate": 1.412974057244E9, "NumRecords": 1 }], "NextToken": null },
+// "Version": "1.0" }
func (c *Client) ListDatasets(ctx context.Context, params *ListDatasetsInput, optFns ...func(*Options)) (*ListDatasetsOutput, error) {
if params == nil {
params = &ListDatasetsInput{}
@@ -48,7 +65,7 @@ type ListDatasetsInput struct {
IdentityPoolId *string
// The maximum number of results to be returned.
- MaxResults *string
+ MaxResults int32
// A pagination token for obtaining the next page of results.
NextToken *string
diff --git a/service/cognitosync/api_op_ListIdentityPoolUsage.go b/service/cognitosync/api_op_ListIdentityPoolUsage.go
index 4e82222d382..9342dddb878 100644
--- a/service/cognitosync/api_op_ListIdentityPoolUsage.go
+++ b/service/cognitosync/api_op_ListIdentityPoolUsage.go
@@ -14,6 +14,27 @@ import (
// Gets a list of identity pools registered with Cognito. ListIdentityPoolUsage can
// only be called with developer credentials. You cannot make this API call with
// the temporary user credentials provided by Cognito Identity.
+// ListIdentityPoolUsage The following examples have been edited for readability.
+// POST / HTTP/1.1 CONTENT-TYPE: application/json X-AMZN-REQUESTID:
+// 9be7c425-ef05-48c0-aef3-9f0ff2fe17d3 X-AMZ-TARGET:
+// com.amazonaws.cognito.sync.model.AWSCognitoSyncService.ListIdentityPoolUsage
+// HOST: cognito-sync.us-east-1.amazonaws.com:443 X-AMZ-DATE: 20141111T211414Z
+// AUTHORIZATION: AWS4-HMAC-SHA256 Credential=,
+// SignedHeaders=content-type;host;x-amz-date;x-amz-target;x-amzn-requestid,
+// Signature= { "Operation":
+// "com.amazonaws.cognito.sync.model#ListIdentityPoolUsage", "Service":
+// "com.amazonaws.cognito.sync.model#AWSCognitoSyncService", "Input": {
+// "MaxResults": "2" } } 1.1 200 OK x-amzn-requestid:
+// 9be7c425-ef05-48c0-aef3-9f0ff2fe17d3 content-type: application/json
+// content-length: 519 date: Tue, 11 Nov 2014 21:14:14 GMT { "Output": { "__type":
+// "com.amazonaws.cognito.sync.model#ListIdentityPoolUsageResponse", "Count": 2,
+// "IdentityPoolUsages": [ { "DataStorage": 0, "IdentityPoolId":
+// "IDENTITY_POOL_ID", "LastModifiedDate": 1.413836234607E9, "SyncSessionsCount":
+// null }, { "DataStorage": 0, "IdentityPoolId": "IDENTITY_POOL_ID",
+// "LastModifiedDate": 1.410892165601E9, "SyncSessionsCount": null }],
+// "MaxResults": 2, "NextToken":
+// "dXMtZWFzdC0xOjBjMWJhMDUyLWUwOTgtNDFmYS1hNzZlLWVhYTJjMTI1Zjg2MQ==" }, "Version":
+// "1.0" }
func (c *Client) ListIdentityPoolUsage(ctx context.Context, params *ListIdentityPoolUsageInput, optFns ...func(*Options)) (*ListIdentityPoolUsageOutput, error) {
if params == nil {
params = &ListIdentityPoolUsageInput{}
diff --git a/service/cognitosync/api_op_ListRecords.go b/service/cognitosync/api_op_ListRecords.go
index ebe96334b5c..ecc0b6e75fa 100644
--- a/service/cognitosync/api_op_ListRecords.go
+++ b/service/cognitosync/api_op_ListRecords.go
@@ -16,7 +16,25 @@ import (
// its own data. Thus, the credentials used to make this API call need to have
// access to the identity data. ListRecords can be called with temporary user
// credentials provided by Cognito Identity or with developer credentials. You
-// should use Cognito Identity credentials to make this API call.
+// should use Cognito Identity credentials to make this API call. ListRecords The
+// following examples have been edited for readability. POST / HTTP/1.1
+// CONTENT-TYPE: application/json X-AMZN-REQUESTID:
+// b3d2e31e-d6b7-4612-8e84-c9ba288dab5d X-AMZ-TARGET:
+// com.amazonaws.cognito.sync.model.AWSCognitoSyncService.ListRecords HOST:
+// cognito-sync.us-east-1.amazonaws.com:443 X-AMZ-DATE: 20141111T183230Z
+// AUTHORIZATION: AWS4-HMAC-SHA256 Credential=,
+// SignedHeaders=content-type;host;x-amz-date;x-amz-target;x-amzn-requestid,
+// Signature= { "Operation": "com.amazonaws.cognito.sync.model#ListRecords",
+// "Service": "com.amazonaws.cognito.sync.model#AWSCognitoSyncService", "Input": {
+// "IdentityPoolId": "IDENTITY_POOL_ID", "IdentityId": "IDENTITY_ID",
+// "DatasetName": "newDataSet" } } 1.1 200 OK x-amzn-requestid:
+// b3d2e31e-d6b7-4612-8e84-c9ba288dab5d content-type: application/json
+// content-length: 623 date: Tue, 11 Nov 2014 18:32:30 GMT { "Output": { "__type":
+// "com.amazonaws.cognito.sync.model#ListRecordsResponse", "Count": 0,
+// "DatasetDeletedAfterRequestedSyncCount": false, "DatasetExists": false,
+// "DatasetSyncCount": 0, "LastModifiedBy": null, "MergedDatasetNames": null,
+// "NextToken": null, "Records": [], "SyncSessionToken": "SYNC_SESSION_TOKEN" },
+// "Version": "1.0" }
func (c *Client) ListRecords(ctx context.Context, params *ListRecordsInput, optFns ...func(*Options)) (*ListRecordsOutput, error) {
if params == nil {
params = &ListRecordsInput{}
diff --git a/service/cognitosync/api_op_RegisterDevice.go b/service/cognitosync/api_op_RegisterDevice.go
index 967cb35cc37..60d6a2e6db0 100644
--- a/service/cognitosync/api_op_RegisterDevice.go
+++ b/service/cognitosync/api_op_RegisterDevice.go
@@ -11,9 +11,23 @@ import (
smithyhttp "github.com/aws/smithy-go/transport/http"
)
-// Registers a device to receive push sync notifications. This API can only be
+// Registers a device to receive push sync notifications.This API can only be
// called with temporary credentials provided by Cognito Identity. You cannot call
-// this API with developer credentials.
+// this API with developer credentials. RegisterDevice The following examples have
+// been edited for readability. POST / HTTP/1.1 CONTENT-TYPE: application/json
+// X-AMZN-REQUESTID: 368f9200-3eca-449e-93b3-7b9c08d8e185 X-AMZ-TARGET:
+// com.amazonaws.cognito.sync.model.AWSCognitoSyncService.RegisterDevice HOST:
+// cognito-sync.us-east-1.amazonaws.com X-AMZ-DATE: 20141004T194643Z
+// X-AMZ-SECURITY-TOKEN: AUTHORIZATION: AWS4-HMAC-SHA256 Credential=,
+// SignedHeaders=content-type;content-length;host;x-amz-date;x-amz-target,
+// Signature= { "Operation": "com.amazonaws.cognito.sync.model#RegisterDevice",
+// "Service": "com.amazonaws.cognito.sync.model#AWSCognitoSyncService", "Input": {
+// "IdentityPoolId": "ID_POOL_ID", "IdentityId": "IDENTITY_ID", "Platform": "GCM",
+// "Token": "PUSH_TOKEN" } } 1.1 200 OK x-amzn-requestid:
+// 368f9200-3eca-449e-93b3-7b9c08d8e185 date: Sat, 04 Oct 2014 19:46:44 GMT
+// content-type: application/json content-length: 145 { "Output": { "__type":
+// "com.amazonaws.cognito.sync.model#RegisterDeviceResponse", "DeviceId":
+// "5cd28fbe-dd83-47ab-9f83-19093a5fb014" }, "Version": "1.0" }
func (c *Client) RegisterDevice(ctx context.Context, params *RegisterDeviceInput, optFns ...func(*Options)) (*RegisterDeviceOutput, error) {
if params == nil {
params = &RegisterDeviceInput{}
diff --git a/service/cognitosync/api_op_SetCognitoEvents.go b/service/cognitosync/api_op_SetCognitoEvents.go
index c22e9202a4f..5e026db6ef2 100644
--- a/service/cognitosync/api_op_SetCognitoEvents.go
+++ b/service/cognitosync/api_op_SetCognitoEvents.go
@@ -13,8 +13,8 @@ import (
// Sets the AWS Lambda function for a given event type for an identity pool. This
// request only updates the key/value pair specified. Other key/values pairs are
// not updated. To remove a key value pair, pass a empty value for the particular
-// key. This API can only be called with developer credentials. You cannot call
-// this API with the temporary user credentials provided by Cognito Identity.
+// key.This API can only be called with developer credentials. You cannot call this
+// API with the temporary user credentials provided by Cognito Identity.
func (c *Client) SetCognitoEvents(ctx context.Context, params *SetCognitoEventsInput, optFns ...func(*Options)) (*SetCognitoEventsOutput, error) {
if params == nil {
params = &SetCognitoEventsInput{}
@@ -30,7 +30,7 @@ func (c *Client) SetCognitoEvents(ctx context.Context, params *SetCognitoEventsI
return out, nil
}
-// A request to configure Cognito Events.
+// A request to configure Cognito Events""
type SetCognitoEventsInput struct {
// The events to configure
diff --git a/service/cognitosync/api_op_SetIdentityPoolConfiguration.go b/service/cognitosync/api_op_SetIdentityPoolConfiguration.go
index f61f43b5bed..fdc99a6220a 100644
--- a/service/cognitosync/api_op_SetIdentityPoolConfiguration.go
+++ b/service/cognitosync/api_op_SetIdentityPoolConfiguration.go
@@ -11,9 +11,27 @@ import (
smithyhttp "github.com/aws/smithy-go/transport/http"
)
-// Sets the necessary configuration for push sync. This API can only be called with
+// Sets the necessary configuration for push sync.This API can only be called with
// developer credentials. You cannot call this API with the temporary user
-// credentials provided by Cognito Identity.
+// credentials provided by Cognito Identity. SetIdentityPoolConfiguration The
+// following examples have been edited for readability. POST / HTTP/1.1
+// CONTENT-TYPE: application/json X-AMZN-REQUESTID:
+// a46db021-f5dd-45d6-af5b-7069fa4a211b X-AMZ-TARGET:
+// com.amazonaws.cognito.sync.model.AWSCognitoSyncService.SetIdentityPoolConfiguration
+// HOST: cognito-sync.us-east-1.amazonaws.com X-AMZ-DATE: 20141004T200006Z
+// AUTHORIZATION: AWS4-HMAC-SHA256 Credential=,
+// SignedHeaders=content-type;content-length;host;x-amz-date;x-amz-target,
+// Signature= { "Operation":
+// "com.amazonaws.cognito.sync.model#SetIdentityPoolConfiguration", "Service":
+// "com.amazonaws.cognito.sync.model#AWSCognitoSyncService", "Input": {
+// "IdentityPoolId": "ID_POOL_ID", "PushSync": { "ApplicationArns":
+// ["PLATFORMARN1", "PLATFORMARN2"], "RoleArn": "ROLEARN" } } } 1.1 200 OK
+// x-amzn-requestid: a46db021-f5dd-45d6-af5b-7069fa4a211b date: Sat, 04 Oct 2014
+// 20:00:06 GMT content-type: application/json content-length: 332 { "Output": {
+// "__type":
+// "com.amazonaws.cognito.sync.model#SetIdentityPoolConfigurationResponse",
+// "IdentityPoolId": "ID_POOL_ID", "PushSync": { "ApplicationArns":
+// ["PLATFORMARN1", "PLATFORMARN2"], "RoleArn": "ROLEARN" } }, "Version": "1.0" }
func (c *Client) SetIdentityPoolConfiguration(ctx context.Context, params *SetIdentityPoolConfigurationInput, optFns ...func(*Options)) (*SetIdentityPoolConfigurationOutput, error) {
if params == nil {
params = &SetIdentityPoolConfigurationInput{}
diff --git a/service/cognitosync/api_op_SubscribeToDataset.go b/service/cognitosync/api_op_SubscribeToDataset.go
index abc737fc748..e82b6aec18e 100644
--- a/service/cognitosync/api_op_SubscribeToDataset.go
+++ b/service/cognitosync/api_op_SubscribeToDataset.go
@@ -11,8 +11,23 @@ import (
)
// Subscribes to receive notifications when a dataset is modified by another
-// device. This API can only be called with temporary credentials provided by
+// device.This API can only be called with temporary credentials provided by
// Cognito Identity. You cannot call this API with developer credentials.
+// SubscribeToDataset The following examples have been edited for readability. POST
+// / HTTP/1.1 CONTENT-TYPE: application/json X-AMZN-REQUESTID:
+// 8b9932b7-201d-4418-a960-0a470e11de9f X-AMZ-TARGET:
+// com.amazonaws.cognito.sync.model.AWSCognitoSyncService.SubscribeToDataset HOST:
+// cognito-sync.us-east-1.amazonaws.com X-AMZ-DATE: 20141004T195350Z
+// X-AMZ-SECURITY-TOKEN: AUTHORIZATION: AWS4-HMAC-SHA256 Credential=,
+// SignedHeaders=content-type;content-length;host;x-amz-date;x-amz-target,
+// Signature= { "Operation": "com.amazonaws.cognito.sync.model#SubscribeToDataset",
+// "Service": "com.amazonaws.cognito.sync.model#AWSCognitoSyncService", "Input": {
+// "IdentityPoolId": "ID_POOL_ID", "IdentityId": "IDENTITY_ID", "DatasetName":
+// "Rufus", "DeviceId": "5cd28fbe-dd83-47ab-9f83-19093a5fb014" } } 1.1 200 OK
+// x-amzn-requestid: 8b9932b7-201d-4418-a960-0a470e11de9f date: Sat, 04 Oct 2014
+// 19:53:50 GMT content-type: application/json content-length: 99 { "Output": {
+// "__type": "com.amazonaws.cognito.sync.model#SubscribeToDatasetResponse" },
+// "Version": "1.0" }
func (c *Client) SubscribeToDataset(ctx context.Context, params *SubscribeToDatasetInput, optFns ...func(*Options)) (*SubscribeToDatasetOutput, error) {
if params == nil {
params = &SubscribeToDatasetInput{}
diff --git a/service/cognitosync/api_op_UnsubscribeFromDataset.go b/service/cognitosync/api_op_UnsubscribeFromDataset.go
index 58e964762ba..1c3f6df83b1 100644
--- a/service/cognitosync/api_op_UnsubscribeFromDataset.go
+++ b/service/cognitosync/api_op_UnsubscribeFromDataset.go
@@ -11,8 +11,24 @@ import (
)
// Unsubscribes from receiving notifications when a dataset is modified by another
-// device. This API can only be called with temporary credentials provided by
+// device.This API can only be called with temporary credentials provided by
// Cognito Identity. You cannot call this API with developer credentials.
+// UnsubscribeFromDataset The following examples have been edited for readability.
+// POST / HTTP/1.1 CONTENT-TYPE: application/json X-AMZ-REQUESTSUPERTRACE: true
+// X-AMZN-REQUESTID: 676896d6-14ca-45b1-8029-6d36b10a077e X-AMZ-TARGET:
+// com.amazonaws.cognito.sync.model.AWSCognitoSyncService.UnsubscribeFromDataset
+// HOST: cognito-sync.us-east-1.amazonaws.com X-AMZ-DATE: 20141004T195446Z
+// X-AMZ-SECURITY-TOKEN: AUTHORIZATION: AWS4-HMAC-SHA256 Credential=,
+// SignedHeaders=content-type;content-length;host;x-amz-date;x-amz-target,
+// Signature= { "Operation":
+// "com.amazonaws.cognito.sync.model#UnsubscribeFromDataset", "Service":
+// "com.amazonaws.cognito.sync.model#AWSCognitoSyncService", "Input": {
+// "IdentityPoolId": "ID_POOL_ID", "IdentityId": "IDENTITY_ID", "DatasetName":
+// "Rufus", "DeviceId": "5cd28fbe-dd83-47ab-9f83-19093a5fb014" } } 1.1 200 OK
+// x-amzn-requestid: 676896d6-14ca-45b1-8029-6d36b10a077e date: Sat, 04 Oct 2014
+// 19:54:46 GMT content-type: application/json content-length: 103 { "Output": {
+// "__type": "com.amazonaws.cognito.sync.model#UnsubscribeFromDatasetResponse" },
+// "Version": "1.0" }
func (c *Client) UnsubscribeFromDataset(ctx context.Context, params *UnsubscribeFromDatasetInput, optFns ...func(*Options)) (*UnsubscribeFromDatasetOutput, error) {
if params == nil {
params = &UnsubscribeFromDatasetInput{}
diff --git a/service/cognitosync/api_op_UpdateRecords.go b/service/cognitosync/api_op_UpdateRecords.go
index 22254a1cd74..5ab406b5a0f 100644
--- a/service/cognitosync/api_op_UpdateRecords.go
+++ b/service/cognitosync/api_op_UpdateRecords.go
@@ -15,7 +15,7 @@ import (
// The sync count in the record patch is your last known sync count for that
// record. The server will reject an UpdateRecords request with a
// ResourceConflictException if you try to patch a record with a new value but a
-// stale sync count. For example, if the sync count on the server is 5 for a key
+// stale sync count.For example, if the sync count on the server is 5 for a key
// called highScore and you try and submit a new highScore with sync count of 4,
// the request will be rejected. To obtain the current sync count for a record,
// call ListRecords. On a successful update of the record, the response returns the
diff --git a/service/cognitosync/deserializers.go b/service/cognitosync/deserializers.go
index 3dbe30e8cd3..763ae4e1757 100644
--- a/service/cognitosync/deserializers.go
+++ b/service/cognitosync/deserializers.go
@@ -2708,9 +2708,6 @@ func awsRestjson1_deserializeOpErrorUpdateRecords(response *smithyhttp.Response,
case strings.EqualFold("InvalidParameterException", errorCode):
return awsRestjson1_deserializeErrorInvalidParameterException(response, errorBody)
- case strings.EqualFold("LambdaSocketTimeoutException", errorCode):
- return awsRestjson1_deserializeErrorLambdaSocketTimeoutException(response, errorBody)
-
case strings.EqualFold("LambdaThrottledException", errorCode):
return awsRestjson1_deserializeErrorLambdaThrottledException(response, errorBody)
@@ -3027,42 +3024,6 @@ func awsRestjson1_deserializeErrorInvalidParameterException(response *smithyhttp
return output
}
-func awsRestjson1_deserializeErrorLambdaSocketTimeoutException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.LambdaSocketTimeoutException{}
- var buff [1024]byte
- ringBuffer := smithyio.NewRingBuffer(buff[:])
-
- body := io.TeeReader(errorBody, 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 err
- }
-
- err := awsRestjson1_deserializeDocumentLambdaSocketTimeoutException(&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 awsRestjson1_deserializeErrorLambdaThrottledException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
output := &types.LambdaThrottledException{}
var buff [1024]byte
@@ -3377,15 +3338,6 @@ func awsRestjson1_deserializeDocumentCognitoStreams(v **types.CognitoStreams, va
for key, value := range shape {
switch key {
- case "DisabledReason":
- if value != nil {
- jtv, ok := value.(string)
- if !ok {
- return fmt.Errorf("expected String to be of type string, got %T instead", value)
- }
- sv.DisabledReason = ptr.String(jtv)
- }
-
case "RoleArn":
if value != nil {
jtv, ok := value.(string)
@@ -4043,46 +3995,6 @@ func awsRestjson1_deserializeDocumentInvalidParameterException(v **types.Invalid
return nil
}
-func awsRestjson1_deserializeDocumentLambdaSocketTimeoutException(v **types.LambdaSocketTimeoutException, 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.LambdaSocketTimeoutException
- if *v == nil {
- sv = &types.LambdaSocketTimeoutException{}
- } 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 ExceptionMessage to be of type string, got %T instead", value)
- }
- sv.Message = ptr.String(jtv)
- }
-
- default:
- _, _ = key, value
-
- }
- }
- *v = sv
- return nil
-}
-
func awsRestjson1_deserializeDocumentLambdaThrottledException(v **types.LambdaThrottledException, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
diff --git a/service/cognitosync/doc.go b/service/cognitosync/doc.go
index 886cec12fd1..f21440fde0d 100644
--- a/service/cognitosync/doc.go
+++ b/service/cognitosync/doc.go
@@ -15,11 +15,11 @@
// accessible only to credentials assigned to that identity. In order to use the
// Cognito Sync service, you need to make API calls using credentials retrieved
// with Amazon Cognito Identity service
-// (https://docs.aws.amazon.com/cognitoidentity/latest/APIReference/Welcome.html).
+// (http://docs.aws.amazon.com/cognitoidentity/latest/APIReference/Welcome.html).
// If you want to use Cognito Sync in an Android or iOS application, you will
// probably want to make API calls via the AWS Mobile SDK. To learn more, see the
// Developer Guide for Android
-// (https://docs.aws.amazon.com/mobile/sdkforandroid/developerguide/cognito-sync.html)
+// (http://docs.aws.amazon.com/mobile/sdkforandroid/developerguide/cognito-sync.html)
// and the Developer Guide for iOS
-// (https://docs.aws.amazon.com/mobile/sdkforios/developerguide/cognito-sync.html).
+// (http://docs.aws.amazon.com/mobile/sdkforios/developerguide/cognito-sync.html).
package cognitosync
diff --git a/service/cognitosync/go.mod b/service/cognitosync/go.mod
index 2a3161d3482..1cba7f33d29 100644
--- a/service/cognitosync/go.mod
+++ b/service/cognitosync/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/cognitosync/go.sum b/service/cognitosync/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/cognitosync/go.sum
+++ b/service/cognitosync/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/cognitosync/serializers.go b/service/cognitosync/serializers.go
index c9e0e724ccc..83d0b519a3c 100644
--- a/service/cognitosync/serializers.go
+++ b/service/cognitosync/serializers.go
@@ -588,8 +588,8 @@ func awsRestjson1_serializeOpHttpBindingsListDatasetsInput(v *ListDatasetsInput,
}
}
- if v.MaxResults != nil {
- encoder.SetQuery("maxResults").String(*v.MaxResults)
+ if v.MaxResults != 0 {
+ encoder.SetQuery("maxResults").Integer(v.MaxResults)
}
if v.NextToken != nil {
@@ -1317,11 +1317,6 @@ func awsRestjson1_serializeDocumentCognitoStreams(v *types.CognitoStreams, value
object := value.Object()
defer object.Close()
- if v.DisabledReason != nil {
- ok := object.Key("DisabledReason")
- ok.String(*v.DisabledReason)
- }
-
if v.RoleArn != nil {
ok := object.Key("RoleArn")
ok.String(*v.RoleArn)
diff --git a/service/cognitosync/types/errors.go b/service/cognitosync/types/errors.go
index f1a81424b59..1d489375cc0 100644
--- a/service/cognitosync/types/errors.go
+++ b/service/cognitosync/types/errors.go
@@ -79,7 +79,6 @@ func (e *InternalErrorException) ErrorMessage() string {
func (e *InternalErrorException) ErrorCode() string { return "InternalErrorException" }
func (e *InternalErrorException) ErrorFault() smithy.ErrorFault { return smithy.FaultServer }
-// This exception is thrown when Amazon Cognito detects an invalid configuration.
type InvalidConfigurationException struct {
Message *string
}
@@ -134,25 +133,6 @@ func (e *InvalidParameterException) ErrorMessage() string {
func (e *InvalidParameterException) ErrorCode() string { return "InvalidParameterException" }
func (e *InvalidParameterException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
-// This exception is thrown when your Lambda function fails to respond within 5
-// seconds. For more information, see Amazon Cognito Events
-// (http://docs.aws.amazon.com/cognito/latest/developerguide/cognito-events.html).
-type LambdaSocketTimeoutException struct {
- Message *string
-}
-
-func (e *LambdaSocketTimeoutException) Error() string {
- return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
-}
-func (e *LambdaSocketTimeoutException) ErrorMessage() string {
- if e.Message == nil {
- return ""
- }
- return *e.Message
-}
-func (e *LambdaSocketTimeoutException) ErrorCode() string { return "LambdaSocketTimeoutException" }
-func (e *LambdaSocketTimeoutException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
-
// AWS Lambda throttled your account, please contact AWS Support
type LambdaThrottledException struct {
Message *string
diff --git a/service/cognitosync/types/types.go b/service/cognitosync/types/types.go
index d6b758836f8..c8def31e2a9 100644
--- a/service/cognitosync/types/types.go
+++ b/service/cognitosync/types/types.go
@@ -9,10 +9,6 @@ import (
// Configuration options for configure Cognito streams.
type CognitoStreams struct {
- // A string containing the reason why streaming of updates to the identity pool was
- // disabled.
- DisabledReason *string
-
// The ARN of the role Amazon Cognito can assume in order to publish to the stream.
// This role must grant access to Amazon Cognito (cognito-sync) to invoke PutRecord
// on your Cognito stream.
@@ -22,14 +18,9 @@ type CognitoStreams struct {
// developers account and in the same region as the identity pool.
StreamName *string
- // Status of the Cognito streams. Valid values are:
- //
- // * ENABLED - Streaming of
- // updates to identity pool is enabled.
- //
- // * DISABLED - Streaming of updates to
- // identity pool is disabled. Bulk publish will also fail if StreamingStatus is
- // DISABLED.
+ // Status of the Cognito streams. Valid values are: ENABLED - Streaming of updates
+ // to identity pool is enabled. DISABLED - Streaming of updates to identity pool is
+ // disabled. Bulk publish will also fail if StreamingStatus is DISABLED.
StreamingStatus StreamingStatus
}
diff --git a/service/comprehend/api_op_CreateDocumentClassifier.go b/service/comprehend/api_op_CreateDocumentClassifier.go
index 026f9e3dd3a..ac3b64ff692 100644
--- a/service/comprehend/api_op_CreateDocumentClassifier.go
+++ b/service/comprehend/api_op_CreateDocumentClassifier.go
@@ -69,6 +69,17 @@ type CreateDocumentClassifierInput struct {
// separated by a delimiter. The default delimiter between labels is a pipe (|).
Mode types.DocumentClassifierMode
+ // ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses to
+ // encrypt trained custom models. The ModelKmsKeyId can be either of the following
+ // formats:
+ //
+ // * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
+ //
+ // * Amazon
+ // Resource Name (ARN) of a KMS Key:
+ // "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
+ ModelKmsKeyId *string
+
// Enables the addition of output results configuration parameters for custom
// classifier jobs.
OutputDataConfig *types.DocumentClassifierOutputDataConfig
diff --git a/service/comprehend/api_op_CreateEndpoint.go b/service/comprehend/api_op_CreateEndpoint.go
index dfa277ee081..676dc5b2277 100644
--- a/service/comprehend/api_op_CreateEndpoint.go
+++ b/service/comprehend/api_op_CreateEndpoint.go
@@ -55,6 +55,11 @@ type CreateEndpointInput struct {
// ResourceInUseException.
ClientRequestToken *string
+ // The Amazon Resource Name (ARN) of the AWS identity and Access Management (IAM)
+ // role that grants Amazon Comprehend read access to trained custom models
+ // encrypted with a customer managed key (ModelKmsKeyId).
+ DataAccessRoleArn *string
+
// Tags associated with the endpoint being created. A tag is a key-value pair that
// adds metadata to the endpoint. For example, a tag with "Sales" as the key might
// be added to an endpoint to indicate its use by the sales department.
diff --git a/service/comprehend/api_op_CreateEntityRecognizer.go b/service/comprehend/api_op_CreateEntityRecognizer.go
index cec7333185b..79532bb277b 100644
--- a/service/comprehend/api_op_CreateEntityRecognizer.go
+++ b/service/comprehend/api_op_CreateEntityRecognizer.go
@@ -63,6 +63,17 @@ type CreateEntityRecognizerInput struct {
// Amazon Comprehend generates one.
ClientRequestToken *string
+ // ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses to
+ // encrypt trained custom models. The ModelKmsKeyId can be either of the following
+ // formats
+ //
+ // * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
+ //
+ // * Amazon Resource
+ // Name (ARN) of a KMS Key:
+ // "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
+ ModelKmsKeyId *string
+
// Tags to be associated with the entity recognizer being created. A tag is a
// key-value pair that adds as a metadata to a resource used by Amazon Comprehend.
// For example, a tag with "Sales" as the key might be added to a resource to
diff --git a/service/comprehend/deserializers.go b/service/comprehend/deserializers.go
index 5fd1e0863dc..48f7e82febe 100644
--- a/service/comprehend/deserializers.go
+++ b/service/comprehend/deserializers.go
@@ -9144,6 +9144,15 @@ func awsAwsjson11_deserializeDocumentDocumentClassifierProperties(v **types.Docu
sv.Mode = types.DocumentClassifierMode(jtv)
}
+ case "ModelKmsKeyId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected KmsKeyId to be of type string, got %T instead", value)
+ }
+ sv.ModelKmsKeyId = ptr.String(jtv)
+ }
+
case "OutputDataConfig":
if err := awsAwsjson11_deserializeDocumentDocumentClassifierOutputDataConfig(&sv.OutputDataConfig, value); err != nil {
return err
@@ -9568,6 +9577,15 @@ func awsAwsjson11_deserializeDocumentEndpointProperties(v **types.EndpointProper
sv.CurrentInferenceUnits = ptr.Int32(int32(i64))
}
+ case "DataAccessRoleArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected IamRoleArn to be of type string, got %T instead", value)
+ }
+ sv.DataAccessRoleArn = ptr.String(jtv)
+ }
+
case "DesiredInferenceUnits":
if value != nil {
jtv, ok := value.(json.Number)
@@ -10516,6 +10534,15 @@ func awsAwsjson11_deserializeDocumentEntityRecognizerProperties(v **types.Entity
sv.Message = ptr.String(jtv)
}
+ case "ModelKmsKeyId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected KmsKeyId to be of type string, got %T instead", value)
+ }
+ sv.ModelKmsKeyId = ptr.String(jtv)
+ }
+
case "RecognizerMetadata":
if err := awsAwsjson11_deserializeDocumentEntityRecognizerMetadata(&sv.RecognizerMetadata, value); err != nil {
return err
diff --git a/service/comprehend/go.mod b/service/comprehend/go.mod
index adde9c4eb6d..b659fdbd829 100644
--- a/service/comprehend/go.mod
+++ b/service/comprehend/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/comprehend/go.sum b/service/comprehend/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/comprehend/go.sum
+++ b/service/comprehend/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/comprehend/serializers.go b/service/comprehend/serializers.go
index a2394fc69b9..750bc914089 100644
--- a/service/comprehend/serializers.go
+++ b/service/comprehend/serializers.go
@@ -3713,6 +3713,11 @@ func awsAwsjson11_serializeOpDocumentCreateDocumentClassifierInput(v *CreateDocu
ok.String(string(v.Mode))
}
+ if v.ModelKmsKeyId != nil {
+ ok := object.Key("ModelKmsKeyId")
+ ok.String(*v.ModelKmsKeyId)
+ }
+
if v.OutputDataConfig != nil {
ok := object.Key("OutputDataConfig")
if err := awsAwsjson11_serializeDocumentDocumentClassifierOutputDataConfig(v.OutputDataConfig, ok); err != nil {
@@ -3751,6 +3756,11 @@ func awsAwsjson11_serializeOpDocumentCreateEndpointInput(v *CreateEndpointInput,
ok.String(*v.ClientRequestToken)
}
+ if v.DataAccessRoleArn != nil {
+ ok := object.Key("DataAccessRoleArn")
+ ok.String(*v.DataAccessRoleArn)
+ }
+
if v.DesiredInferenceUnits != nil {
ok := object.Key("DesiredInferenceUnits")
ok.Integer(*v.DesiredInferenceUnits)
@@ -3802,6 +3812,11 @@ func awsAwsjson11_serializeOpDocumentCreateEntityRecognizerInput(v *CreateEntity
ok.String(string(v.LanguageCode))
}
+ if v.ModelKmsKeyId != nil {
+ ok := object.Key("ModelKmsKeyId")
+ ok.String(*v.ModelKmsKeyId)
+ }
+
if v.RecognizerName != nil {
ok := object.Key("RecognizerName")
ok.String(*v.RecognizerName)
diff --git a/service/comprehend/types/types.go b/service/comprehend/types/types.go
index 078e25d8be0..7448ed06ffd 100644
--- a/service/comprehend/types/types.go
+++ b/service/comprehend/types/types.go
@@ -394,6 +394,17 @@ type DocumentClassifierProperties struct {
// the classifier is trained.
Mode DocumentClassifierMode
+ // ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses to
+ // encrypt trained custom models. The ModelKmsKeyId can be either of the following
+ // formats:
+ //
+ // * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
+ //
+ // * Amazon
+ // Resource Name (ARN) of a KMS Key:
+ // "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
+ ModelKmsKeyId *string
+
// Provides output results configuration parameters for custom classifier jobs.
OutputDataConfig *DocumentClassifierOutputDataConfig
@@ -562,6 +573,11 @@ type EndpointProperties struct {
// The number of inference units currently used by the model using this endpoint.
CurrentInferenceUnits *int32
+ // The Amazon Resource Name (ARN) of the AWS identity and Access Management (IAM)
+ // role that grants Amazon Comprehend read access to trained custom models
+ // encrypted with a customer managed key (ModelKmsKeyId).
+ DataAccessRoleArn *string
+
// The desired number of inference units to be used by the model using this
// endpoint. Each inference unit represents of a throughput of 100 characters per
// second.
@@ -884,6 +900,17 @@ type EntityRecognizerProperties struct {
// A description of the status of the recognizer.
Message *string
+ // ID for the AWS Key Management Service (KMS) key that Amazon Comprehend uses to
+ // encrypt trained custom models. The ModelKmsKeyId can be either of the following
+ // formats:
+ //
+ // * KMS Key ID: "1234abcd-12ab-34cd-56ef-1234567890ab"
+ //
+ // * Amazon
+ // Resource Name (ARN) of a KMS Key:
+ // "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
+ ModelKmsKeyId *string
+
// Provides information about an entity recognizer.
RecognizerMetadata *EntityRecognizerMetadata
diff --git a/service/comprehendmedical/go.mod b/service/comprehendmedical/go.mod
index 39fe1934ca1..4404d21fc86 100644
--- a/service/comprehendmedical/go.mod
+++ b/service/comprehendmedical/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/comprehendmedical/go.sum b/service/comprehendmedical/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/comprehendmedical/go.sum
+++ b/service/comprehendmedical/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/computeoptimizer/go.mod b/service/computeoptimizer/go.mod
index 466c75c61b1..840b491d4ed 100644
--- a/service/computeoptimizer/go.mod
+++ b/service/computeoptimizer/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/computeoptimizer/go.sum b/service/computeoptimizer/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/computeoptimizer/go.sum
+++ b/service/computeoptimizer/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/configservice/api_op_DescribeAggregateComplianceByConformancePacks.go b/service/configservice/api_op_DescribeAggregateComplianceByConformancePacks.go
new file mode 100644
index 00000000000..bf390e48697
--- /dev/null
+++ b/service/configservice/api_op_DescribeAggregateComplianceByConformancePacks.go
@@ -0,0 +1,135 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package configservice
+
+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/configservice/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Returns a list of the conformance packs and their associated compliance status
+// with the count of compliant and noncompliant AWS Config rules within each
+// conformance pack. The results can return an empty result page, but if you have a
+// nextToken, the results are displayed on the next page.
+func (c *Client) DescribeAggregateComplianceByConformancePacks(ctx context.Context, params *DescribeAggregateComplianceByConformancePacksInput, optFns ...func(*Options)) (*DescribeAggregateComplianceByConformancePacksOutput, error) {
+ if params == nil {
+ params = &DescribeAggregateComplianceByConformancePacksInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DescribeAggregateComplianceByConformancePacks", params, optFns, addOperationDescribeAggregateComplianceByConformancePacksMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DescribeAggregateComplianceByConformancePacksOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DescribeAggregateComplianceByConformancePacksInput struct {
+
+ // The name of the configuration aggregator.
+ //
+ // This member is required.
+ ConfigurationAggregatorName *string
+
+ // Filters the result by AggregateConformancePackComplianceFilters object.
+ Filters *types.AggregateConformancePackComplianceFilters
+
+ // The maximum number of conformance packs details returned on each page. The
+ // default is maximum. If you specify 0, AWS Config uses the default.
+ Limit int32
+
+ // The nextToken string returned on a previous page that you use to get the next
+ // page of results in a paginated response.
+ NextToken *string
+}
+
+type DescribeAggregateComplianceByConformancePacksOutput struct {
+
+ // Returns the AggregateComplianceByConformancePack object.
+ AggregateComplianceByConformancePacks []types.AggregateComplianceByConformancePack
+
+ // The nextToken string returned on a previous page that you use to get the next
+ // page of results in a paginated response.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDescribeAggregateComplianceByConformancePacksMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpDescribeAggregateComplianceByConformancePacks{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpDescribeAggregateComplianceByConformancePacks{}, 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 = addOpDescribeAggregateComplianceByConformancePacksValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDescribeAggregateComplianceByConformancePacks(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_opDescribeAggregateComplianceByConformancePacks(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "config",
+ OperationName: "DescribeAggregateComplianceByConformancePacks",
+ }
+}
diff --git a/service/configservice/api_op_GetAggregateConformancePackComplianceSummary.go b/service/configservice/api_op_GetAggregateConformancePackComplianceSummary.go
new file mode 100644
index 00000000000..eccc7b36b4c
--- /dev/null
+++ b/service/configservice/api_op_GetAggregateConformancePackComplianceSummary.go
@@ -0,0 +1,142 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package configservice
+
+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/configservice/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Returns the count of compliant and noncompliant conformance packs across all AWS
+// Accounts and AWS Regions. You can filter based on AWS Account ID or AWS Region.
+// The results can return an empty result page, but if you have a nextToken, the
+// results are displayed on the next page.
+func (c *Client) GetAggregateConformancePackComplianceSummary(ctx context.Context, params *GetAggregateConformancePackComplianceSummaryInput, optFns ...func(*Options)) (*GetAggregateConformancePackComplianceSummaryOutput, error) {
+ if params == nil {
+ params = &GetAggregateConformancePackComplianceSummaryInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetAggregateConformancePackComplianceSummary", params, optFns, addOperationGetAggregateConformancePackComplianceSummaryMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetAggregateConformancePackComplianceSummaryOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetAggregateConformancePackComplianceSummaryInput struct {
+
+ // The name of the configuration aggregator.
+ //
+ // This member is required.
+ ConfigurationAggregatorName *string
+
+ // Filters the results based on the
+ // AggregateConformancePackComplianceSummaryFilters object.
+ Filters *types.AggregateConformancePackComplianceSummaryFilters
+
+ // Groups the result based on AWS Account ID or AWS Region.
+ GroupByKey types.AggregateConformancePackComplianceSummaryGroupKey
+
+ // The maximum number of results returned on each page. The default is maximum. If
+ // you specify 0, AWS Config uses the default.
+ Limit int32
+
+ // The nextToken string returned on a previous page that you use to get the next
+ // page of results in a paginated response.
+ NextToken *string
+}
+
+type GetAggregateConformancePackComplianceSummaryOutput struct {
+
+ // Returns a list of AggregateConformancePackComplianceSummary object.
+ AggregateConformancePackComplianceSummaries []types.AggregateConformancePackComplianceSummary
+
+ // Groups the result based on AWS Account ID or AWS Region.
+ GroupByKey *string
+
+ // The nextToken string returned on a previous page that you use to get the next
+ // page of results in a paginated response.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetAggregateConformancePackComplianceSummaryMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpGetAggregateConformancePackComplianceSummary{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpGetAggregateConformancePackComplianceSummary{}, 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 = addOpGetAggregateConformancePackComplianceSummaryValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetAggregateConformancePackComplianceSummary(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_opGetAggregateConformancePackComplianceSummary(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "config",
+ OperationName: "GetAggregateConformancePackComplianceSummary",
+ }
+}
diff --git a/service/configservice/api_op_PutOrganizationConformancePack.go b/service/configservice/api_op_PutOrganizationConformancePack.go
index 8dbade47ab8..4102b8354c0 100644
--- a/service/configservice/api_op_PutOrganizationConformancePack.go
+++ b/service/configservice/api_op_PutOrganizationConformancePack.go
@@ -30,8 +30,8 @@ import (
// conformance pack is created or updated.
//
// You cannot update a conformance pack
-// while it is in this state. You can create 6 conformance packs with 25 AWS Config
-// rules in each pack and 3 delegated administrator per organization.
+// while it is in this state. You can create 50 conformance packs with 25 AWS
+// Config rules in each pack and 3 delegated administrator per organization.
func (c *Client) PutOrganizationConformancePack(ctx context.Context, params *PutOrganizationConformancePackInput, optFns ...func(*Options)) (*PutOrganizationConformancePackOutput, error) {
if params == nil {
params = &PutOrganizationConformancePackInput{}
@@ -58,7 +58,7 @@ type PutOrganizationConformancePackInput struct {
ConformancePackInputParameters []types.ConformancePackInputParameter
// Amazon S3 bucket where AWS Config stores conformance pack templates. This field
- // is optional.
+ // is optional. If used, it must be prefixed with awsconfigconforms.
DeliveryS3Bucket *string
// The prefix for the Amazon S3 bucket. This field is optional.
diff --git a/service/configservice/deserializers.go b/service/configservice/deserializers.go
index 5eb7da69086..48fe4f343fd 100644
--- a/service/configservice/deserializers.go
+++ b/service/configservice/deserializers.go
@@ -1947,6 +1947,126 @@ func awsAwsjson11_deserializeOpErrorDescribeAggregateComplianceByConfigRules(res
}
}
+type awsAwsjson11_deserializeOpDescribeAggregateComplianceByConformancePacks struct {
+}
+
+func (*awsAwsjson11_deserializeOpDescribeAggregateComplianceByConformancePacks) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_deserializeOpDescribeAggregateComplianceByConformancePacks) 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_deserializeOpErrorDescribeAggregateComplianceByConformancePacks(response, &metadata)
+ }
+ output := &DescribeAggregateComplianceByConformancePacksOutput{}
+ 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_deserializeOpDocumentDescribeAggregateComplianceByConformancePacksOutput(&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_deserializeOpErrorDescribeAggregateComplianceByConformancePacks(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("InvalidLimitException", errorCode):
+ return awsAwsjson11_deserializeErrorInvalidLimitException(response, errorBody)
+
+ case strings.EqualFold("InvalidNextTokenException", errorCode):
+ return awsAwsjson11_deserializeErrorInvalidNextTokenException(response, errorBody)
+
+ case strings.EqualFold("NoSuchConfigurationAggregatorException", errorCode):
+ return awsAwsjson11_deserializeErrorNoSuchConfigurationAggregatorException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsAwsjson11_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
type awsAwsjson11_deserializeOpDescribeAggregationAuthorizations struct {
}
@@ -4860,6 +4980,126 @@ func awsAwsjson11_deserializeOpErrorGetAggregateConfigRuleComplianceSummary(resp
}
}
+type awsAwsjson11_deserializeOpGetAggregateConformancePackComplianceSummary struct {
+}
+
+func (*awsAwsjson11_deserializeOpGetAggregateConformancePackComplianceSummary) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_deserializeOpGetAggregateConformancePackComplianceSummary) 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_deserializeOpErrorGetAggregateConformancePackComplianceSummary(response, &metadata)
+ }
+ output := &GetAggregateConformancePackComplianceSummaryOutput{}
+ 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_deserializeOpDocumentGetAggregateConformancePackComplianceSummaryOutput(&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_deserializeOpErrorGetAggregateConformancePackComplianceSummary(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("InvalidLimitException", errorCode):
+ return awsAwsjson11_deserializeErrorInvalidLimitException(response, errorBody)
+
+ case strings.EqualFold("InvalidNextTokenException", errorCode):
+ return awsAwsjson11_deserializeErrorInvalidNextTokenException(response, errorBody)
+
+ case strings.EqualFold("NoSuchConfigurationAggregatorException", errorCode):
+ return awsAwsjson11_deserializeErrorNoSuchConfigurationAggregatorException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsAwsjson11_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
type awsAwsjson11_deserializeOpGetAggregateDiscoveredResourceCounts struct {
}
@@ -11346,23 +11586,296 @@ func awsAwsjson11_deserializeDocumentAccountAggregationSourceAccountList(v *[]st
cv = *v
}
- for _, value := range shape {
- var col string
- if value != nil {
- jtv, ok := value.(string)
- if !ok {
- return fmt.Errorf("expected AccountId to be of type string, got %T instead", value)
+ for _, value := range shape {
+ var col string
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AccountId to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentAccountAggregationSourceList(v *[]types.AccountAggregationSource, 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.AccountAggregationSource
+ if *v == nil {
+ cv = []types.AccountAggregationSource{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.AccountAggregationSource
+ destAddr := &col
+ if err := awsAwsjson11_deserializeDocumentAccountAggregationSource(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentAggregateComplianceByConfigRule(v **types.AggregateComplianceByConfigRule, 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.AggregateComplianceByConfigRule
+ if *v == nil {
+ sv = &types.AggregateComplianceByConfigRule{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AccountId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AccountId to be of type string, got %T instead", value)
+ }
+ sv.AccountId = ptr.String(jtv)
+ }
+
+ case "AwsRegion":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AwsRegion to be of type string, got %T instead", value)
+ }
+ sv.AwsRegion = ptr.String(jtv)
+ }
+
+ case "Compliance":
+ if err := awsAwsjson11_deserializeDocumentCompliance(&sv.Compliance, value); err != nil {
+ return err
+ }
+
+ case "ConfigRuleName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ConfigRuleName to be of type string, got %T instead", value)
+ }
+ sv.ConfigRuleName = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentAggregateComplianceByConfigRuleList(v *[]types.AggregateComplianceByConfigRule, 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.AggregateComplianceByConfigRule
+ if *v == nil {
+ cv = []types.AggregateComplianceByConfigRule{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.AggregateComplianceByConfigRule
+ destAddr := &col
+ if err := awsAwsjson11_deserializeDocumentAggregateComplianceByConfigRule(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentAggregateComplianceByConformancePack(v **types.AggregateComplianceByConformancePack, 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.AggregateComplianceByConformancePack
+ if *v == nil {
+ sv = &types.AggregateComplianceByConformancePack{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AccountId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AccountId to be of type string, got %T instead", value)
+ }
+ sv.AccountId = ptr.String(jtv)
+ }
+
+ case "AwsRegion":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AwsRegion to be of type string, got %T instead", value)
+ }
+ sv.AwsRegion = ptr.String(jtv)
+ }
+
+ case "Compliance":
+ if err := awsAwsjson11_deserializeDocumentAggregateConformancePackCompliance(&sv.Compliance, value); err != nil {
+ return err
+ }
+
+ case "ConformancePackName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ConformancePackName to be of type string, got %T instead", value)
+ }
+ sv.ConformancePackName = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentAggregateComplianceByConformancePackList(v *[]types.AggregateComplianceByConformancePack, 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.AggregateComplianceByConformancePack
+ if *v == nil {
+ cv = []types.AggregateComplianceByConformancePack{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.AggregateComplianceByConformancePack
+ destAddr := &col
+ if err := awsAwsjson11_deserializeDocumentAggregateComplianceByConformancePack(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentAggregateComplianceCount(v **types.AggregateComplianceCount, 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.AggregateComplianceCount
+ if *v == nil {
+ sv = &types.AggregateComplianceCount{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "ComplianceSummary":
+ if err := awsAwsjson11_deserializeDocumentComplianceSummary(&sv.ComplianceSummary, value); err != nil {
+ return err
+ }
+
+ case "GroupName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected StringWithCharLimit256 to be of type string, got %T instead", value)
+ }
+ sv.GroupName = ptr.String(jtv)
}
- col = jtv
- }
- cv = append(cv, col)
+ default:
+ _, _ = key, value
+
+ }
}
- *v = cv
+ *v = sv
return nil
}
-func awsAwsjson11_deserializeDocumentAccountAggregationSourceList(v *[]types.AccountAggregationSource, value interface{}) error {
+func awsAwsjson11_deserializeDocumentAggregateComplianceCountList(v *[]types.AggregateComplianceCount, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
@@ -11375,17 +11888,17 @@ func awsAwsjson11_deserializeDocumentAccountAggregationSourceList(v *[]types.Acc
return fmt.Errorf("unexpected JSON type %v", value)
}
- var cv []types.AccountAggregationSource
+ var cv []types.AggregateComplianceCount
if *v == nil {
- cv = []types.AccountAggregationSource{}
+ cv = []types.AggregateComplianceCount{}
} else {
cv = *v
}
for _, value := range shape {
- var col types.AccountAggregationSource
+ var col types.AggregateComplianceCount
destAddr := &col
- if err := awsAwsjson11_deserializeDocumentAccountAggregationSource(&destAddr, value); err != nil {
+ if err := awsAwsjson11_deserializeDocumentAggregateComplianceCount(&destAddr, value); err != nil {
return err
}
col = *destAddr
@@ -11396,7 +11909,7 @@ func awsAwsjson11_deserializeDocumentAccountAggregationSourceList(v *[]types.Acc
return nil
}
-func awsAwsjson11_deserializeDocumentAggregateComplianceByConfigRule(v **types.AggregateComplianceByConfigRule, value interface{}) error {
+func awsAwsjson11_deserializeDocumentAggregateConformancePackCompliance(v **types.AggregateConformancePackCompliance, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
@@ -11409,45 +11922,61 @@ func awsAwsjson11_deserializeDocumentAggregateComplianceByConfigRule(v **types.A
return fmt.Errorf("unexpected JSON type %v", value)
}
- var sv *types.AggregateComplianceByConfigRule
+ var sv *types.AggregateConformancePackCompliance
if *v == nil {
- sv = &types.AggregateComplianceByConfigRule{}
+ sv = &types.AggregateConformancePackCompliance{}
} else {
sv = *v
}
for key, value := range shape {
switch key {
- case "AccountId":
+ case "ComplianceType":
if value != nil {
jtv, ok := value.(string)
if !ok {
- return fmt.Errorf("expected AccountId to be of type string, got %T instead", value)
+ return fmt.Errorf("expected ConformancePackComplianceType to be of type string, got %T instead", value)
}
- sv.AccountId = ptr.String(jtv)
+ sv.ComplianceType = types.ConformancePackComplianceType(jtv)
}
- case "AwsRegion":
+ case "CompliantRuleCount":
if value != nil {
- jtv, ok := value.(string)
+ jtv, ok := value.(json.Number)
if !ok {
- return fmt.Errorf("expected AwsRegion to be of type string, got %T instead", value)
+ return fmt.Errorf("expected Integer to be json.Number, got %T instead", value)
}
- sv.AwsRegion = ptr.String(jtv)
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.CompliantRuleCount = int32(i64)
}
- case "Compliance":
- if err := awsAwsjson11_deserializeDocumentCompliance(&sv.Compliance, value); err != nil {
- return err
+ case "NonCompliantRuleCount":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Integer to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.NonCompliantRuleCount = int32(i64)
}
- case "ConfigRuleName":
+ case "TotalRuleCount":
if value != nil {
- jtv, ok := value.(string)
+ jtv, ok := value.(json.Number)
if !ok {
- return fmt.Errorf("expected ConfigRuleName to be of type string, got %T instead", value)
+ return fmt.Errorf("expected Integer to be json.Number, got %T instead", value)
}
- sv.ConfigRuleName = ptr.String(jtv)
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.TotalRuleCount = int32(i64)
}
default:
@@ -11459,7 +11988,7 @@ func awsAwsjson11_deserializeDocumentAggregateComplianceByConfigRule(v **types.A
return nil
}
-func awsAwsjson11_deserializeDocumentAggregateComplianceByConfigRuleList(v *[]types.AggregateComplianceByConfigRule, value interface{}) error {
+func awsAwsjson11_deserializeDocumentAggregateConformancePackComplianceCount(v **types.AggregateConformancePackComplianceCount, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
@@ -11467,33 +11996,56 @@ func awsAwsjson11_deserializeDocumentAggregateComplianceByConfigRuleList(v *[]ty
return nil
}
- shape, ok := value.([]interface{})
+ shape, ok := value.(map[string]interface{})
if !ok {
return fmt.Errorf("unexpected JSON type %v", value)
}
- var cv []types.AggregateComplianceByConfigRule
+ var sv *types.AggregateConformancePackComplianceCount
if *v == nil {
- cv = []types.AggregateComplianceByConfigRule{}
+ sv = &types.AggregateConformancePackComplianceCount{}
} else {
- cv = *v
+ sv = *v
}
- for _, value := range shape {
- var col types.AggregateComplianceByConfigRule
- destAddr := &col
- if err := awsAwsjson11_deserializeDocumentAggregateComplianceByConfigRule(&destAddr, value); err != nil {
- return err
- }
- col = *destAddr
- cv = append(cv, col)
+ for key, value := range shape {
+ switch key {
+ case "CompliantConformancePackCount":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Integer to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.CompliantConformancePackCount = int32(i64)
+ }
+
+ case "NonCompliantConformancePackCount":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Integer to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.NonCompliantConformancePackCount = int32(i64)
+ }
+
+ default:
+ _, _ = key, value
+ }
}
- *v = cv
+ *v = sv
return nil
}
-func awsAwsjson11_deserializeDocumentAggregateComplianceCount(v **types.AggregateComplianceCount, value interface{}) error {
+func awsAwsjson11_deserializeDocumentAggregateConformancePackComplianceSummary(v **types.AggregateConformancePackComplianceSummary, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
@@ -11506,9 +12058,9 @@ func awsAwsjson11_deserializeDocumentAggregateComplianceCount(v **types.Aggregat
return fmt.Errorf("unexpected JSON type %v", value)
}
- var sv *types.AggregateComplianceCount
+ var sv *types.AggregateConformancePackComplianceSummary
if *v == nil {
- sv = &types.AggregateComplianceCount{}
+ sv = &types.AggregateConformancePackComplianceSummary{}
} else {
sv = *v
}
@@ -11516,7 +12068,7 @@ func awsAwsjson11_deserializeDocumentAggregateComplianceCount(v **types.Aggregat
for key, value := range shape {
switch key {
case "ComplianceSummary":
- if err := awsAwsjson11_deserializeDocumentComplianceSummary(&sv.ComplianceSummary, value); err != nil {
+ if err := awsAwsjson11_deserializeDocumentAggregateConformancePackComplianceCount(&sv.ComplianceSummary, value); err != nil {
return err
}
@@ -11538,7 +12090,7 @@ func awsAwsjson11_deserializeDocumentAggregateComplianceCount(v **types.Aggregat
return nil
}
-func awsAwsjson11_deserializeDocumentAggregateComplianceCountList(v *[]types.AggregateComplianceCount, value interface{}) error {
+func awsAwsjson11_deserializeDocumentAggregateConformancePackComplianceSummaryList(v *[]types.AggregateConformancePackComplianceSummary, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
@@ -11551,17 +12103,17 @@ func awsAwsjson11_deserializeDocumentAggregateComplianceCountList(v *[]types.Agg
return fmt.Errorf("unexpected JSON type %v", value)
}
- var cv []types.AggregateComplianceCount
+ var cv []types.AggregateConformancePackComplianceSummary
if *v == nil {
- cv = []types.AggregateComplianceCount{}
+ cv = []types.AggregateConformancePackComplianceSummary{}
} else {
cv = *v
}
for _, value := range shape {
- var col types.AggregateComplianceCount
+ var col types.AggregateConformancePackComplianceSummary
destAddr := &col
- if err := awsAwsjson11_deserializeDocumentAggregateComplianceCount(&destAddr, value); err != nil {
+ if err := awsAwsjson11_deserializeDocumentAggregateConformancePackComplianceSummary(&destAddr, value); err != nil {
return err
}
col = *destAddr
@@ -14241,6 +14793,11 @@ func awsAwsjson11_deserializeDocumentConformancePackRuleCompliance(v **types.Con
sv.ConfigRuleName = ptr.String(jtv)
}
+ case "Controls":
+ if err := awsAwsjson11_deserializeDocumentControlsList(&sv.Controls, value); err != nil {
+ return err
+ }
+
default:
_, _ = key, value
@@ -14503,6 +15060,42 @@ func awsAwsjson11_deserializeDocumentConformancePackTemplateValidationException(
return nil
}
+func awsAwsjson11_deserializeDocumentControlsList(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 StringWithCharLimit128 to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
func awsAwsjson11_deserializeDocumentDeliveryChannel(v **types.DeliveryChannel, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -21131,6 +21724,51 @@ func awsAwsjson11_deserializeOpDocumentDescribeAggregateComplianceByConfigRulesO
return nil
}
+func awsAwsjson11_deserializeOpDocumentDescribeAggregateComplianceByConformancePacksOutput(v **DescribeAggregateComplianceByConformancePacksOutput, 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 *DescribeAggregateComplianceByConformancePacksOutput
+ if *v == nil {
+ sv = &DescribeAggregateComplianceByConformancePacksOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AggregateComplianceByConformancePacks":
+ if err := awsAwsjson11_deserializeDocumentAggregateComplianceByConformancePackList(&sv.AggregateComplianceByConformancePacks, 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_deserializeOpDocumentDescribeAggregationAuthorizationsOutput(v **DescribeAggregationAuthorizationsOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -22229,6 +22867,60 @@ func awsAwsjson11_deserializeOpDocumentGetAggregateConfigRuleComplianceSummaryOu
return nil
}
+func awsAwsjson11_deserializeOpDocumentGetAggregateConformancePackComplianceSummaryOutput(v **GetAggregateConformancePackComplianceSummaryOutput, 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 *GetAggregateConformancePackComplianceSummaryOutput
+ if *v == nil {
+ sv = &GetAggregateConformancePackComplianceSummaryOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AggregateConformancePackComplianceSummaries":
+ if err := awsAwsjson11_deserializeDocumentAggregateConformancePackComplianceSummaryList(&sv.AggregateConformancePackComplianceSummaries, value); err != nil {
+ return err
+ }
+
+ case "GroupByKey":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected StringWithCharLimit256 to be of type string, got %T instead", value)
+ }
+ sv.GroupByKey = ptr.String(jtv)
+ }
+
+ 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_deserializeOpDocumentGetAggregateDiscoveredResourceCountsOutput(v **GetAggregateDiscoveredResourceCountsOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
diff --git a/service/configservice/go.mod b/service/configservice/go.mod
index 5313c499886..cb658b62ac3 100644
--- a/service/configservice/go.mod
+++ b/service/configservice/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/configservice/go.sum b/service/configservice/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/configservice/go.sum
+++ b/service/configservice/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/configservice/serializers.go b/service/configservice/serializers.go
index 3f7d5829340..5146ea802aa 100644
--- a/service/configservice/serializers.go
+++ b/service/configservice/serializers.go
@@ -909,6 +909,53 @@ func (m *awsAwsjson11_serializeOpDescribeAggregateComplianceByConfigRules) Handl
return next.HandleSerialize(ctx, in)
}
+type awsAwsjson11_serializeOpDescribeAggregateComplianceByConformancePacks struct {
+}
+
+func (*awsAwsjson11_serializeOpDescribeAggregateComplianceByConformancePacks) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_serializeOpDescribeAggregateComplianceByConformancePacks) 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.(*DescribeAggregateComplianceByConformancePacksInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("StarlingDoveService.DescribeAggregateComplianceByConformancePacks")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentDescribeAggregateComplianceByConformancePacksInput(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_serializeOpDescribeAggregationAuthorizations struct {
}
@@ -2084,6 +2131,53 @@ func (m *awsAwsjson11_serializeOpGetAggregateConfigRuleComplianceSummary) Handle
return next.HandleSerialize(ctx, in)
}
+type awsAwsjson11_serializeOpGetAggregateConformancePackComplianceSummary struct {
+}
+
+func (*awsAwsjson11_serializeOpGetAggregateConformancePackComplianceSummary) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_serializeOpGetAggregateConformancePackComplianceSummary) 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.(*GetAggregateConformancePackComplianceSummaryInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("StarlingDoveService.GetAggregateConformancePackComplianceSummary")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentGetAggregateConformancePackComplianceSummaryInput(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_serializeOpGetAggregateDiscoveredResourceCounts struct {
}
@@ -4008,6 +4102,50 @@ func awsAwsjson11_serializeDocumentAccountAggregationSourceList(v []types.Accoun
return nil
}
+func awsAwsjson11_serializeDocumentAggregateConformancePackComplianceFilters(v *types.AggregateConformancePackComplianceFilters, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AccountId != nil {
+ ok := object.Key("AccountId")
+ ok.String(*v.AccountId)
+ }
+
+ if v.AwsRegion != nil {
+ ok := object.Key("AwsRegion")
+ ok.String(*v.AwsRegion)
+ }
+
+ if len(v.ComplianceType) > 0 {
+ ok := object.Key("ComplianceType")
+ ok.String(string(v.ComplianceType))
+ }
+
+ if v.ConformancePackName != nil {
+ ok := object.Key("ConformancePackName")
+ ok.String(*v.ConformancePackName)
+ }
+
+ return nil
+}
+
+func awsAwsjson11_serializeDocumentAggregateConformancePackComplianceSummaryFilters(v *types.AggregateConformancePackComplianceSummaryFilters, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AccountId != nil {
+ ok := object.Key("AccountId")
+ ok.String(*v.AccountId)
+ }
+
+ if v.AwsRegion != nil {
+ ok := object.Key("AwsRegion")
+ ok.String(*v.AwsRegion)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeDocumentAggregatedSourceStatusTypeList(v []types.AggregatedSourceStatusType, value smithyjson.Value) error {
array := value.Array()
defer array.Close()
@@ -5581,6 +5719,35 @@ func awsAwsjson11_serializeOpDocumentDescribeAggregateComplianceByConfigRulesInp
return nil
}
+func awsAwsjson11_serializeOpDocumentDescribeAggregateComplianceByConformancePacksInput(v *DescribeAggregateComplianceByConformancePacksInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.ConfigurationAggregatorName != nil {
+ ok := object.Key("ConfigurationAggregatorName")
+ ok.String(*v.ConfigurationAggregatorName)
+ }
+
+ if v.Filters != nil {
+ ok := object.Key("Filters")
+ if err := awsAwsjson11_serializeDocumentAggregateConformancePackComplianceFilters(v.Filters, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.Limit != 0 {
+ ok := object.Key("Limit")
+ ok.Integer(v.Limit)
+ }
+
+ if v.NextToken != nil {
+ ok := object.Key("NextToken")
+ ok.String(*v.NextToken)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeOpDocumentDescribeAggregationAuthorizationsInput(v *DescribeAggregationAuthorizationsInput, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -6167,6 +6334,40 @@ func awsAwsjson11_serializeOpDocumentGetAggregateConfigRuleComplianceSummaryInpu
return nil
}
+func awsAwsjson11_serializeOpDocumentGetAggregateConformancePackComplianceSummaryInput(v *GetAggregateConformancePackComplianceSummaryInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.ConfigurationAggregatorName != nil {
+ ok := object.Key("ConfigurationAggregatorName")
+ ok.String(*v.ConfigurationAggregatorName)
+ }
+
+ if v.Filters != nil {
+ ok := object.Key("Filters")
+ if err := awsAwsjson11_serializeDocumentAggregateConformancePackComplianceSummaryFilters(v.Filters, ok); err != nil {
+ return err
+ }
+ }
+
+ if len(v.GroupByKey) > 0 {
+ ok := object.Key("GroupByKey")
+ ok.String(string(v.GroupByKey))
+ }
+
+ if v.Limit != 0 {
+ ok := object.Key("Limit")
+ ok.Integer(v.Limit)
+ }
+
+ if v.NextToken != nil {
+ ok := object.Key("NextToken")
+ ok.String(*v.NextToken)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeOpDocumentGetAggregateDiscoveredResourceCountsInput(v *GetAggregateDiscoveredResourceCountsInput, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
diff --git a/service/configservice/types/enums.go b/service/configservice/types/enums.go
index fd8e70a8a05..8819d217f0f 100644
--- a/service/configservice/types/enums.go
+++ b/service/configservice/types/enums.go
@@ -2,6 +2,25 @@
package types
+type AggregateConformancePackComplianceSummaryGroupKey string
+
+// Enum values for AggregateConformancePackComplianceSummaryGroupKey
+const (
+ AggregateConformancePackComplianceSummaryGroupKeyAccountId AggregateConformancePackComplianceSummaryGroupKey = "ACCOUNT_ID"
+ AggregateConformancePackComplianceSummaryGroupKeyAwsRegion AggregateConformancePackComplianceSummaryGroupKey = "AWS_REGION"
+)
+
+// Values returns all known values for
+// AggregateConformancePackComplianceSummaryGroupKey. 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 (AggregateConformancePackComplianceSummaryGroupKey) Values() []AggregateConformancePackComplianceSummaryGroupKey {
+ return []AggregateConformancePackComplianceSummaryGroupKey{
+ "ACCOUNT_ID",
+ "AWS_REGION",
+ }
+}
+
type AggregatedSourceStatusType string
// Enum values for AggregatedSourceStatusType
@@ -624,6 +643,7 @@ const (
ResourceTypePatchCompliance ResourceType = "AWS::SSM::PatchCompliance"
ResourceTypeProtection ResourceType = "AWS::Shield::Protection"
ResourceTypeRegionalProtection ResourceType = "AWS::ShieldRegional::Protection"
+ ResourceTypeConformancePackCompliance ResourceType = "AWS::Config::ConformancePackCompliance"
ResourceTypeResourceCompliance ResourceType = "AWS::Config::ResourceCompliance"
ResourceTypeStage ResourceType = "AWS::ApiGateway::Stage"
ResourceTypeRestApi ResourceType = "AWS::ApiGateway::RestApi"
@@ -727,6 +747,7 @@ func (ResourceType) Values() []ResourceType {
"AWS::SSM::PatchCompliance",
"AWS::Shield::Protection",
"AWS::ShieldRegional::Protection",
+ "AWS::Config::ConformancePackCompliance",
"AWS::Config::ResourceCompliance",
"AWS::ApiGateway::Stage",
"AWS::ApiGateway::RestApi",
diff --git a/service/configservice/types/types.go b/service/configservice/types/types.go
index 260048033b5..9a323ada9f4 100644
--- a/service/configservice/types/types.go
+++ b/service/configservice/types/types.go
@@ -41,6 +41,30 @@ type AggregateComplianceByConfigRule struct {
ConfigRuleName *string
}
+// Provides aggregate compliance of the conformance pack. Indicates whether a
+// conformance pack is compliant based on the name of the conformance pack, account
+// ID, and region. A conformance pack is compliant if all of the rules in that
+// conformance packs are compliant. It is noncompliant if any of the rules are not
+// compliant. If a conformance pack has rules that return INSUFFICIENT_DATA, the
+// conformance pack returns INSUFFICIENT_DATA only if all the rules within that
+// conformance pack return INSUFFICIENT_DATA. If some of the rules in a conformance
+// pack are compliant and others return INSUFFICIENT_DATA, the conformance pack
+// shows compliant.
+type AggregateComplianceByConformancePack struct {
+
+ // The 12-digit AWS account ID of the source account.
+ AccountId *string
+
+ // The source AWS Region from where the data is aggregated.
+ AwsRegion *string
+
+ // The compliance status of the conformance pack.
+ Compliance *AggregateConformancePackCompliance
+
+ // The name of the conformance pack.
+ ConformancePackName *string
+}
+
// Returns the number of compliant and noncompliant rules for one or more accounts
// and regions in an aggregator.
type AggregateComplianceCount struct {
@@ -52,6 +76,73 @@ type AggregateComplianceCount struct {
GroupName *string
}
+// Provides the number of compliant and noncompliant rules within a conformance
+// pack. Also provides the total count of compliant rules, noncompliant rules, and
+// the rules that do not have any applicable resources to evaluate upon resulting
+// in insufficient data.
+type AggregateConformancePackCompliance struct {
+
+ // The compliance status of the conformance pack.
+ ComplianceType ConformancePackComplianceType
+
+ // The number of compliant AWS Config Rules.
+ CompliantRuleCount int32
+
+ // The number of noncompliant AWS Config Rules.
+ NonCompliantRuleCount int32
+
+ // Total number of compliant rules, noncompliant rules, and the rules that do not
+ // have any applicable resources to evaluate upon resulting in insufficient data.
+ TotalRuleCount int32
+}
+
+// The number of conformance packs that are compliant and noncompliant.
+type AggregateConformancePackComplianceCount struct {
+
+ // Number of compliant conformance packs.
+ CompliantConformancePackCount int32
+
+ // Number of noncompliant conformance packs.
+ NonCompliantConformancePackCount int32
+}
+
+// Filters the conformance packs based on an account ID, region, compliance type,
+// and the name of the conformance pack.
+type AggregateConformancePackComplianceFilters struct {
+
+ // The 12-digit AWS account ID of the source account.
+ AccountId *string
+
+ // The source AWS Region from where the data is aggregated.
+ AwsRegion *string
+
+ // The compliance status of the conformance pack.
+ ComplianceType ConformancePackComplianceType
+
+ // The name of the conformance pack.
+ ConformancePackName *string
+}
+
+// Provides a summary of compliance based on either account ID or region.
+type AggregateConformancePackComplianceSummary struct {
+
+ // Returns an AggregateConformancePackComplianceCount object.
+ ComplianceSummary *AggregateConformancePackComplianceCount
+
+ // Groups the result based on AWS Account ID or AWS Region.
+ GroupName *string
+}
+
+// Filters the results based on account ID and region.
+type AggregateConformancePackComplianceSummaryFilters struct {
+
+ // The 12-digit AWS account ID of the source account.
+ AccountId *string
+
+ // The source AWS Region from where the data is aggregated.
+ AwsRegion *string
+}
+
// The current sync status between the source and the aggregator account.
type AggregatedSourceStatus struct {
@@ -734,7 +825,7 @@ type ConfigurationRecorderStatus struct {
type ConformancePackComplianceFilters struct {
// Filters the results by compliance. The allowed values are COMPLIANT and
- // NON_COMPLIANT.
+ // NON_COMPLIANT. INSUFFICIENT_DATA is not supported.
ComplianceType ConformancePackComplianceType
// Filters the results by AWS Config rule names.
@@ -744,8 +835,8 @@ type ConformancePackComplianceFilters struct {
// Summary includes the name and status of the conformance pack.
type ConformancePackComplianceSummary struct {
- // The status of the conformance pack. The allowed values are COMPLIANT and
- // NON_COMPLIANT.
+ // The status of the conformance pack. The allowed values are COMPLIANT,
+ // NON_COMPLIANT and INSUFFICIENT_DATA.
//
// This member is required.
ConformancePackComplianceStatus ConformancePackComplianceType
@@ -798,7 +889,7 @@ type ConformancePackDetail struct {
type ConformancePackEvaluationFilters struct {
// Filters the results by compliance. The allowed values are COMPLIANT and
- // NON_COMPLIANT.
+ // NON_COMPLIANT. INSUFFICIENT_DATA is not supported.
ComplianceType ConformancePackComplianceType
// Filters the results by AWS Config rule names.
@@ -818,6 +909,7 @@ type ConformancePackEvaluationFilters struct {
type ConformancePackEvaluationResult struct {
// The compliance type. The allowed values are COMPLIANT and NON_COMPLIANT.
+ // INSUFFICIENT_DATA is not supported.
//
// This member is required.
ComplianceType ConformancePackComplianceType
@@ -861,12 +953,17 @@ type ConformancePackInputParameter struct {
// pack. You can filter using AWS Config rule names and compliance types.
type ConformancePackRuleCompliance struct {
- // Compliance of the AWS Config rule The allowed values are COMPLIANT and
- // NON_COMPLIANT.
+ // Compliance of the AWS Config rule. The allowed values are COMPLIANT,
+ // NON_COMPLIANT, and INSUFFICIENT_DATA.
ComplianceType ConformancePackComplianceType
// Name of the config rule.
ConfigRuleName *string
+
+ // Controls for the conformance pack. A control is a process to prevent or detect
+ // problems while meeting objectives. A control can align with a specific
+ // compliance regime or map to internal controls defined by an organization.
+ Controls []string
}
// Status details of a conformance pack.
@@ -1721,7 +1818,7 @@ type RecordingGroup struct {
// A comma-separated list that specifies the types of AWS resources for which AWS
// Config records configuration changes (for example, AWS::EC2::Instance or
// AWS::CloudTrail::Trail). To record all configuration changes, you must set the
- // allSupported option to false. If you set this option to true, when AWS Config
+ // allSupported option to true. If you set this option to false, when AWS Config
// adds support for a new type of resource, it will not record resources of that
// type unless you manually add that type to your recording group. For a list of
// valid resourceTypes values, see the resourceType Value column in Supported AWS
diff --git a/service/configservice/validators.go b/service/configservice/validators.go
index 7c405224243..30fef1e08f3 100644
--- a/service/configservice/validators.go
+++ b/service/configservice/validators.go
@@ -390,6 +390,26 @@ func (m *validateOpDescribeAggregateComplianceByConfigRules) HandleInitialize(ct
return next.HandleInitialize(ctx, in)
}
+type validateOpDescribeAggregateComplianceByConformancePacks struct {
+}
+
+func (*validateOpDescribeAggregateComplianceByConformancePacks) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDescribeAggregateComplianceByConformancePacks) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DescribeAggregateComplianceByConformancePacksInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDescribeAggregateComplianceByConformancePacksInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpDescribeConfigurationAggregatorSourcesStatus struct {
}
@@ -530,6 +550,26 @@ func (m *validateOpGetAggregateConfigRuleComplianceSummary) HandleInitialize(ctx
return next.HandleInitialize(ctx, in)
}
+type validateOpGetAggregateConformancePackComplianceSummary struct {
+}
+
+func (*validateOpGetAggregateConformancePackComplianceSummary) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpGetAggregateConformancePackComplianceSummary) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*GetAggregateConformancePackComplianceSummaryInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpGetAggregateConformancePackComplianceSummaryInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpGetAggregateDiscoveredResourceCounts struct {
}
@@ -1306,6 +1346,10 @@ func addOpDescribeAggregateComplianceByConfigRulesValidationMiddleware(stack *mi
return stack.Initialize.Add(&validateOpDescribeAggregateComplianceByConfigRules{}, middleware.After)
}
+func addOpDescribeAggregateComplianceByConformancePacksValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDescribeAggregateComplianceByConformancePacks{}, middleware.After)
+}
+
func addOpDescribeConfigurationAggregatorSourcesStatusValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpDescribeConfigurationAggregatorSourcesStatus{}, middleware.After)
}
@@ -1334,6 +1378,10 @@ func addOpGetAggregateConfigRuleComplianceSummaryValidationMiddleware(stack *mid
return stack.Initialize.Add(&validateOpGetAggregateConfigRuleComplianceSummary{}, middleware.After)
}
+func addOpGetAggregateConformancePackComplianceSummaryValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpGetAggregateConformancePackComplianceSummary{}, middleware.After)
+}
+
func addOpGetAggregateDiscoveredResourceCountsValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpGetAggregateDiscoveredResourceCounts{}, middleware.After)
}
@@ -2203,6 +2251,21 @@ func validateOpDescribeAggregateComplianceByConfigRulesInput(v *DescribeAggregat
}
}
+func validateOpDescribeAggregateComplianceByConformancePacksInput(v *DescribeAggregateComplianceByConformancePacksInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DescribeAggregateComplianceByConformancePacksInput"}
+ if v.ConfigurationAggregatorName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("ConfigurationAggregatorName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpDescribeConfigurationAggregatorSourcesStatusInput(v *DescribeConfigurationAggregatorSourcesStatusInput) error {
if v == nil {
return nil
@@ -2322,6 +2385,21 @@ func validateOpGetAggregateConfigRuleComplianceSummaryInput(v *GetAggregateConfi
}
}
+func validateOpGetAggregateConformancePackComplianceSummaryInput(v *GetAggregateConformancePackComplianceSummaryInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "GetAggregateConformancePackComplianceSummaryInput"}
+ if v.ConfigurationAggregatorName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("ConfigurationAggregatorName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpGetAggregateDiscoveredResourceCountsInput(v *GetAggregateDiscoveredResourceCountsInput) error {
if v == nil {
return nil
diff --git a/service/connect/go.mod b/service/connect/go.mod
index 74e69e7793d..3a224f949b9 100644
--- a/service/connect/go.mod
+++ b/service/connect/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/connect/go.sum b/service/connect/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/connect/go.sum
+++ b/service/connect/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/connect/internal/endpoints/endpoints.go b/service/connect/internal/endpoints/endpoints.go
index b026856ebb5..371f57361df 100644
--- a/service/connect/internal/endpoints/endpoints.go
+++ b/service/connect/internal/endpoints/endpoints.go
@@ -66,6 +66,7 @@ var defaultPartitions = endpoints.Partitions{
"ap-northeast-1": endpoints.Endpoint{},
"ap-southeast-1": endpoints.Endpoint{},
"ap-southeast-2": endpoints.Endpoint{},
+ "ca-central-1": endpoints.Endpoint{},
"eu-central-1": endpoints.Endpoint{},
"eu-west-2": endpoints.Endpoint{},
"us-east-1": endpoints.Endpoint{},
diff --git a/service/connectcontactlens/go.mod b/service/connectcontactlens/go.mod
index dd41e43e742..c63282f713a 100644
--- a/service/connectcontactlens/go.mod
+++ b/service/connectcontactlens/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/connectcontactlens/go.sum b/service/connectcontactlens/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/connectcontactlens/go.sum
+++ b/service/connectcontactlens/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/connectparticipant/go.mod b/service/connectparticipant/go.mod
index acdab2ed907..6338946795e 100644
--- a/service/connectparticipant/go.mod
+++ b/service/connectparticipant/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/connectparticipant/go.sum b/service/connectparticipant/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/connectparticipant/go.sum
+++ b/service/connectparticipant/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/costandusagereportservice/go.mod b/service/costandusagereportservice/go.mod
index 8ccaed8f56e..eb26ee3a093 100644
--- a/service/costandusagereportservice/go.mod
+++ b/service/costandusagereportservice/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/costandusagereportservice/go.sum b/service/costandusagereportservice/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/costandusagereportservice/go.sum
+++ b/service/costandusagereportservice/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/costexplorer/api_op_CreateCostCategoryDefinition.go b/service/costexplorer/api_op_CreateCostCategoryDefinition.go
index 08466c319b5..c056f69e98f 100644
--- a/service/costexplorer/api_op_CreateCostCategoryDefinition.go
+++ b/service/costexplorer/api_op_CreateCostCategoryDefinition.go
@@ -45,6 +45,9 @@ type CreateCostCategoryDefinitionInput struct {
//
// This member is required.
Rules []types.CostCategoryRule
+
+ // The default value for the cost category.
+ DefaultValue *string
}
type CreateCostCategoryDefinitionOutput struct {
diff --git a/service/costexplorer/api_op_UpdateCostCategoryDefinition.go b/service/costexplorer/api_op_UpdateCostCategoryDefinition.go
index 09165b77ca9..aa569fe33e9 100644
--- a/service/costexplorer/api_op_UpdateCostCategoryDefinition.go
+++ b/service/costexplorer/api_op_UpdateCostCategoryDefinition.go
@@ -47,6 +47,9 @@ type UpdateCostCategoryDefinitionInput struct {
//
// This member is required.
Rules []types.CostCategoryRule
+
+ // The default value for the cost category.
+ DefaultValue *string
}
type UpdateCostCategoryDefinitionOutput struct {
diff --git a/service/costexplorer/deserializers.go b/service/costexplorer/deserializers.go
index e626c8b69ac..7438445566b 100644
--- a/service/costexplorer/deserializers.go
+++ b/service/costexplorer/deserializers.go
@@ -4422,6 +4422,15 @@ func awsAwsjson11_deserializeDocumentCostCategory(v **types.CostCategory, value
sv.CostCategoryArn = ptr.String(jtv)
}
+ case "DefaultValue":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected CostCategoryValue to be of type string, got %T instead", value)
+ }
+ sv.DefaultValue = ptr.String(jtv)
+ }
+
case "EffectiveEnd":
if value != nil {
jtv, ok := value.(string)
@@ -4477,6 +4486,55 @@ func awsAwsjson11_deserializeDocumentCostCategory(v **types.CostCategory, value
return nil
}
+func awsAwsjson11_deserializeDocumentCostCategoryInheritedValueDimension(v **types.CostCategoryInheritedValueDimension, 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.CostCategoryInheritedValueDimension
+ if *v == nil {
+ sv = &types.CostCategoryInheritedValueDimension{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DimensionKey":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected GenericString to be of type string, got %T instead", value)
+ }
+ sv.DimensionKey = ptr.String(jtv)
+ }
+
+ case "DimensionName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected CostCategoryInheritedValueDimensionName to be of type string, got %T instead", value)
+ }
+ sv.DimensionName = types.CostCategoryInheritedValueDimensionName(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeDocumentCostCategoryNamesList(v *[]string, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -4627,6 +4685,15 @@ func awsAwsjson11_deserializeDocumentCostCategoryReference(v **types.CostCategor
sv.CostCategoryArn = ptr.String(jtv)
}
+ case "DefaultValue":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected CostCategoryValue to be of type string, got %T instead", value)
+ }
+ sv.DefaultValue = ptr.String(jtv)
+ }
+
case "EffectiveEnd":
if value != nil {
jtv, ok := value.(string)
@@ -4742,11 +4809,25 @@ func awsAwsjson11_deserializeDocumentCostCategoryRule(v **types.CostCategoryRule
for key, value := range shape {
switch key {
+ case "InheritedValue":
+ if err := awsAwsjson11_deserializeDocumentCostCategoryInheritedValueDimension(&sv.InheritedValue, value); err != nil {
+ return err
+ }
+
case "Rule":
if err := awsAwsjson11_deserializeDocumentExpression(&sv.Rule, value); err != nil {
return err
}
+ case "Type":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected CostCategoryRuleType to be of type string, got %T instead", value)
+ }
+ sv.Type = types.CostCategoryRuleType(jtv)
+ }
+
case "Value":
if value != nil {
jtv, ok := value.(string)
diff --git a/service/costexplorer/go.mod b/service/costexplorer/go.mod
index 138b914d9e6..5f9e419e530 100644
--- a/service/costexplorer/go.mod
+++ b/service/costexplorer/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/costexplorer/go.sum b/service/costexplorer/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/costexplorer/go.sum
+++ b/service/costexplorer/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/costexplorer/serializers.go b/service/costexplorer/serializers.go
index e03f8789b06..161355ebea9 100644
--- a/service/costexplorer/serializers.go
+++ b/service/costexplorer/serializers.go
@@ -1540,10 +1540,34 @@ func awsAwsjson11_serializeDocumentAnomalySubscription(v *types.AnomalySubscript
return nil
}
+func awsAwsjson11_serializeDocumentCostCategoryInheritedValueDimension(v *types.CostCategoryInheritedValueDimension, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.DimensionKey != nil {
+ ok := object.Key("DimensionKey")
+ ok.String(*v.DimensionKey)
+ }
+
+ if len(v.DimensionName) > 0 {
+ ok := object.Key("DimensionName")
+ ok.String(string(v.DimensionName))
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeDocumentCostCategoryRule(v *types.CostCategoryRule, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
+ if v.InheritedValue != nil {
+ ok := object.Key("InheritedValue")
+ if err := awsAwsjson11_serializeDocumentCostCategoryInheritedValueDimension(v.InheritedValue, ok); err != nil {
+ return err
+ }
+ }
+
if v.Rule != nil {
ok := object.Key("Rule")
if err := awsAwsjson11_serializeDocumentExpression(v.Rule, ok); err != nil {
@@ -1551,6 +1575,11 @@ func awsAwsjson11_serializeDocumentCostCategoryRule(v *types.CostCategoryRule, v
}
}
+ if len(v.Type) > 0 {
+ ok := object.Key("Type")
+ ok.String(string(v.Type))
+ }
+
if v.Value != nil {
ok := object.Key("Value")
ok.String(*v.Value)
@@ -1976,6 +2005,11 @@ func awsAwsjson11_serializeOpDocumentCreateCostCategoryDefinitionInput(v *Create
object := value.Object()
defer object.Close()
+ if v.DefaultValue != nil {
+ ok := object.Key("DefaultValue")
+ ok.String(*v.DefaultValue)
+ }
+
if v.Name != nil {
ok := object.Key("Name")
ok.String(*v.Name)
@@ -2948,6 +2982,11 @@ func awsAwsjson11_serializeOpDocumentUpdateCostCategoryDefinitionInput(v *Update
ok.String(*v.CostCategoryArn)
}
+ if v.DefaultValue != nil {
+ ok := object.Key("DefaultValue")
+ ok.String(*v.DefaultValue)
+ }
+
if v.Rules != nil {
ok := object.Key("Rules")
if err := awsAwsjson11_serializeDocumentCostCategoryRulesList(v.Rules, ok); err != nil {
diff --git a/service/costexplorer/types/enums.go b/service/costexplorer/types/enums.go
index 6a67d854eb0..fb4bc745b85 100644
--- a/service/costexplorer/types/enums.go
+++ b/service/costexplorer/types/enums.go
@@ -80,6 +80,43 @@ func (Context) Values() []Context {
}
}
+type CostCategoryInheritedValueDimensionName string
+
+// Enum values for CostCategoryInheritedValueDimensionName
+const (
+ CostCategoryInheritedValueDimensionNameLinkedAccountName CostCategoryInheritedValueDimensionName = "LINKED_ACCOUNT_NAME"
+ CostCategoryInheritedValueDimensionNameTag CostCategoryInheritedValueDimensionName = "TAG"
+)
+
+// Values returns all known values for CostCategoryInheritedValueDimensionName.
+// 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 (CostCategoryInheritedValueDimensionName) Values() []CostCategoryInheritedValueDimensionName {
+ return []CostCategoryInheritedValueDimensionName{
+ "LINKED_ACCOUNT_NAME",
+ "TAG",
+ }
+}
+
+type CostCategoryRuleType string
+
+// Enum values for CostCategoryRuleType
+const (
+ CostCategoryRuleTypeRegular CostCategoryRuleType = "REGULAR"
+ CostCategoryRuleTypeInheritedValue CostCategoryRuleType = "INHERITED_VALUE"
+)
+
+// Values returns all known values for CostCategoryRuleType. 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 (CostCategoryRuleType) Values() []CostCategoryRuleType {
+ return []CostCategoryRuleType{
+ "REGULAR",
+ "INHERITED_VALUE",
+ }
+}
+
type CostCategoryRuleVersion string
// Enum values for CostCategoryRuleVersion
diff --git a/service/costexplorer/types/types.go b/service/costexplorer/types/types.go
index 2e086f10640..19bbe8ce6f4 100644
--- a/service/costexplorer/types/types.go
+++ b/service/costexplorer/types/types.go
@@ -205,6 +205,9 @@ type CostCategory struct {
// This member is required.
Rules []CostCategoryRule
+ // The default value for the cost category.
+ DefaultValue *string
+
// The Cost Category's effective end date.
EffectiveEnd *string
@@ -213,6 +216,25 @@ type CostCategory struct {
ProcessingStatus []CostCategoryProcessingStatus
}
+// When creating or updating a cost category, you can define the CostCategoryRule
+// rule type as INHERITED_VALUE. This rule type adds the flexibility of defining a
+// rule that dynamically inherits the cost category value from the dimension value
+// defined by CostCategoryInheritedValueDimension. For example, if you wanted to
+// dynamically group costs based on the value of a specific tag key, you would
+// first choose an inherited value rule type, then choose the tag dimension and
+// specify the tag key to use.
+type CostCategoryInheritedValueDimension struct {
+
+ // The key to extract cost category values.
+ DimensionKey *string
+
+ // The name of dimension for which to group costs. If you specify
+ // LINKED_ACCOUNT_NAME, the cost category value will be based on account name. If
+ // you specify TAG, the cost category value will be based on the value of the
+ // specified tag key.
+ DimensionName CostCategoryInheritedValueDimensionName
+}
+
// The list of processing statuses for Cost Management products for a specific cost
// category.
type CostCategoryProcessingStatus struct {
@@ -232,6 +254,9 @@ type CostCategoryReference struct {
// The unique identifier for your Cost Category.
CostCategoryArn *string
+ // The default value for the cost category.
+ DefaultValue *string
+
// The Cost Category's effective end date.
EffectiveEnd *string
@@ -257,6 +282,10 @@ type CostCategoryReference struct {
// value.
type CostCategoryRule struct {
+ // The value the line item will be categorized as, if the line item contains the
+ // matched dimension.
+ InheritedValue *CostCategoryInheritedValueDimension
+
// An Expression
// (https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_Expression.html)
// object used to categorize costs. This supports dimensions, tags, and nested
@@ -269,13 +298,18 @@ type CostCategoryRule struct {
// Comparisons
// (https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/manage-cost-categories.html#cost-categories-terms)
// in the AWS Billing and Cost Management User Guide.
- //
- // This member is required.
Rule *Expression
- // The value a line item will be categorized as, if it matches the rule.
- //
- // This member is required.
+ // You can define the CostCategoryRule rule type as either REGULAR or
+ // INHERITED_VALUE. The INHERITED_VALUE rule type adds the flexibility of defining
+ // a rule that dynamically inherits the cost category value from the dimension
+ // value defined by CostCategoryInheritedValueDimension. For example, if you wanted
+ // to dynamically group costs based on the value of a specific tag key, you would
+ // first choose an inherited value rule type, then choose the tag dimension and
+ // specify the tag key to use.
+ Type CostCategoryRuleType
+
+ // The default value for the cost category.
Value *string
}
diff --git a/service/costexplorer/validators.go b/service/costexplorer/validators.go
index d411e43b797..ae9b021c1db 100644
--- a/service/costexplorer/validators.go
+++ b/service/costexplorer/validators.go
@@ -718,41 +718,6 @@ func validateAnomalySubscription(v *types.AnomalySubscription) error {
}
}
-func validateCostCategoryRule(v *types.CostCategoryRule) error {
- if v == nil {
- return nil
- }
- invalidParams := smithy.InvalidParamsError{Context: "CostCategoryRule"}
- if v.Value == nil {
- invalidParams.Add(smithy.NewErrParamRequired("Value"))
- }
- if v.Rule == nil {
- invalidParams.Add(smithy.NewErrParamRequired("Rule"))
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- } else {
- return nil
- }
-}
-
-func validateCostCategoryRulesList(v []types.CostCategoryRule) error {
- if v == nil {
- return nil
- }
- invalidParams := smithy.InvalidParamsError{Context: "CostCategoryRulesList"}
- for i := range v {
- if err := validateCostCategoryRule(&v[i]); err != nil {
- invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError))
- }
- }
- if invalidParams.Len() > 0 {
- return invalidParams
- } else {
- return nil
- }
-}
-
func validateDateInterval(v *types.DateInterval) error {
if v == nil {
return nil
@@ -884,10 +849,6 @@ func validateOpCreateCostCategoryDefinitionInput(v *CreateCostCategoryDefinition
}
if v.Rules == nil {
invalidParams.Add(smithy.NewErrParamRequired("Rules"))
- } else if v.Rules != nil {
- if err := validateCostCategoryRulesList(v.Rules); err != nil {
- invalidParams.AddNested("Rules", err.(smithy.InvalidParamsError))
- }
}
if invalidParams.Len() > 0 {
return invalidParams
@@ -1389,10 +1350,6 @@ func validateOpUpdateCostCategoryDefinitionInput(v *UpdateCostCategoryDefinition
}
if v.Rules == nil {
invalidParams.Add(smithy.NewErrParamRequired("Rules"))
- } else if v.Rules != nil {
- if err := validateCostCategoryRulesList(v.Rules); err != nil {
- invalidParams.AddNested("Rules", err.(smithy.InvalidParamsError))
- }
}
if invalidParams.Len() > 0 {
return invalidParams
diff --git a/service/customerprofiles/api_op_PutIntegration.go b/service/customerprofiles/api_op_PutIntegration.go
index 186bb0d33c0..199be2eb2dd 100644
--- a/service/customerprofiles/api_op_PutIntegration.go
+++ b/service/customerprofiles/api_op_PutIntegration.go
@@ -6,6 +6,7 @@ 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/customerprofiles/types"
"github.com/aws/smithy-go/middleware"
smithyhttp "github.com/aws/smithy-go/transport/http"
"time"
@@ -41,13 +42,13 @@ type PutIntegrationInput struct {
// This member is required.
ObjectTypeName *string
- // The URI of the S3 bucket or any other type of data source.
- //
- // This member is required.
- Uri *string
+ FlowDefinition *types.FlowDefinition
// The tags used to organize, track, or control access for this resource.
Tags map[string]string
+
+ // The URI of the S3 bucket or any other type of data source.
+ Uri *string
}
type PutIntegrationOutput struct {
diff --git a/service/customerprofiles/go.mod b/service/customerprofiles/go.mod
index 132dd54965f..a22e9643de2 100644
--- a/service/customerprofiles/go.mod
+++ b/service/customerprofiles/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/customerprofiles/go.sum b/service/customerprofiles/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/customerprofiles/go.sum
+++ b/service/customerprofiles/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/customerprofiles/serializers.go b/service/customerprofiles/serializers.go
index 555b3c20c0e..5097892fb07 100644
--- a/service/customerprofiles/serializers.go
+++ b/service/customerprofiles/serializers.go
@@ -11,6 +11,7 @@ import (
"github.com/aws/smithy-go/encoding/httpbinding"
smithyjson "github.com/aws/smithy-go/encoding/json"
"github.com/aws/smithy-go/middleware"
+ smithytime "github.com/aws/smithy-go/time"
smithyhttp "github.com/aws/smithy-go/transport/http"
)
@@ -1682,6 +1683,13 @@ func awsRestjson1_serializeOpDocumentPutIntegrationInput(v *PutIntegrationInput,
object := value.Object()
defer object.Close()
+ if v.FlowDefinition != nil {
+ ok := object.Key("FlowDefinition")
+ if err := awsRestjson1_serializeDocumentFlowDefinition(v.FlowDefinition, ok); err != nil {
+ return err
+ }
+ }
+
if v.ObjectTypeName != nil {
ok := object.Key("ObjectTypeName")
ok.String(*v.ObjectTypeName)
@@ -2524,6 +2532,38 @@ func awsRestjson1_serializeDocumentAttributes(v map[string]string, value smithyj
return nil
}
+func awsRestjson1_serializeDocumentConnectorOperator(v *types.ConnectorOperator, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if len(v.Marketo) > 0 {
+ ok := object.Key("Marketo")
+ ok.String(string(v.Marketo))
+ }
+
+ if len(v.S3) > 0 {
+ ok := object.Key("S3")
+ ok.String(string(v.S3))
+ }
+
+ if len(v.Salesforce) > 0 {
+ ok := object.Key("Salesforce")
+ ok.String(string(v.Salesforce))
+ }
+
+ if len(v.ServiceNow) > 0 {
+ ok := object.Key("ServiceNow")
+ ok.String(string(v.ServiceNow))
+ }
+
+ if len(v.Zendesk) > 0 {
+ ok := object.Key("Zendesk")
+ ok.String(string(v.Zendesk))
+ }
+
+ return nil
+}
+
func awsRestjson1_serializeDocumentFieldMap(v map[string]types.ObjectTypeField, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -2549,6 +2589,61 @@ func awsRestjson1_serializeDocumentFieldNameList(v []string, value smithyjson.Va
return nil
}
+func awsRestjson1_serializeDocumentFlowDefinition(v *types.FlowDefinition, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Description != nil {
+ ok := object.Key("Description")
+ ok.String(*v.Description)
+ }
+
+ if v.FlowName != nil {
+ ok := object.Key("FlowName")
+ ok.String(*v.FlowName)
+ }
+
+ if v.KmsArn != nil {
+ ok := object.Key("KmsArn")
+ ok.String(*v.KmsArn)
+ }
+
+ if v.SourceFlowConfig != nil {
+ ok := object.Key("SourceFlowConfig")
+ if err := awsRestjson1_serializeDocumentSourceFlowConfig(v.SourceFlowConfig, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.Tasks != nil {
+ ok := object.Key("Tasks")
+ if err := awsRestjson1_serializeDocumentTasks(v.Tasks, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.TriggerConfig != nil {
+ ok := object.Key("TriggerConfig")
+ if err := awsRestjson1_serializeDocumentTriggerConfig(v.TriggerConfig, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentIncrementalPullConfig(v *types.IncrementalPullConfig, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.DatetimeTypeFieldName != nil {
+ ok := object.Key("DatetimeTypeFieldName")
+ ok.String(*v.DatetimeTypeFieldName)
+ }
+
+ return nil
+}
+
func awsRestjson1_serializeDocumentKeyMap(v map[string][]types.ObjectTypeKey, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -2565,6 +2660,18 @@ func awsRestjson1_serializeDocumentKeyMap(v map[string][]types.ObjectTypeKey, va
return nil
}
+func awsRestjson1_serializeDocumentMarketoSourceProperties(v *types.MarketoSourceProperties, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Object != nil {
+ ok := object.Key("Object")
+ ok.String(*v.Object)
+ }
+
+ return nil
+}
+
func awsRestjson1_serializeDocumentObjectTypeField(v *types.ObjectTypeField, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -2632,6 +2739,183 @@ func awsRestjson1_serializeDocumentRequestValueList(v []string, value smithyjson
return nil
}
+func awsRestjson1_serializeDocumentS3SourceProperties(v *types.S3SourceProperties, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.BucketName != nil {
+ ok := object.Key("BucketName")
+ ok.String(*v.BucketName)
+ }
+
+ if v.BucketPrefix != nil {
+ ok := object.Key("BucketPrefix")
+ ok.String(*v.BucketPrefix)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentSalesforceSourceProperties(v *types.SalesforceSourceProperties, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.EnableDynamicFieldUpdate {
+ ok := object.Key("EnableDynamicFieldUpdate")
+ ok.Boolean(v.EnableDynamicFieldUpdate)
+ }
+
+ if v.IncludeDeletedRecords {
+ ok := object.Key("IncludeDeletedRecords")
+ ok.Boolean(v.IncludeDeletedRecords)
+ }
+
+ if v.Object != nil {
+ ok := object.Key("Object")
+ ok.String(*v.Object)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentScheduledTriggerProperties(v *types.ScheduledTriggerProperties, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if len(v.DataPullMode) > 0 {
+ ok := object.Key("DataPullMode")
+ ok.String(string(v.DataPullMode))
+ }
+
+ if v.FirstExecutionFrom != nil {
+ ok := object.Key("FirstExecutionFrom")
+ ok.Double(smithytime.FormatEpochSeconds(*v.FirstExecutionFrom))
+ }
+
+ if v.ScheduleEndTime != nil {
+ ok := object.Key("ScheduleEndTime")
+ ok.Double(smithytime.FormatEpochSeconds(*v.ScheduleEndTime))
+ }
+
+ if v.ScheduleExpression != nil {
+ ok := object.Key("ScheduleExpression")
+ ok.String(*v.ScheduleExpression)
+ }
+
+ if v.ScheduleOffset != 0 {
+ ok := object.Key("ScheduleOffset")
+ ok.Long(v.ScheduleOffset)
+ }
+
+ if v.ScheduleStartTime != nil {
+ ok := object.Key("ScheduleStartTime")
+ ok.Double(smithytime.FormatEpochSeconds(*v.ScheduleStartTime))
+ }
+
+ if v.Timezone != nil {
+ ok := object.Key("Timezone")
+ ok.String(*v.Timezone)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentServiceNowSourceProperties(v *types.ServiceNowSourceProperties, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Object != nil {
+ ok := object.Key("Object")
+ ok.String(*v.Object)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentSourceConnectorProperties(v *types.SourceConnectorProperties, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Marketo != nil {
+ ok := object.Key("Marketo")
+ if err := awsRestjson1_serializeDocumentMarketoSourceProperties(v.Marketo, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.S3 != nil {
+ ok := object.Key("S3")
+ if err := awsRestjson1_serializeDocumentS3SourceProperties(v.S3, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.Salesforce != nil {
+ ok := object.Key("Salesforce")
+ if err := awsRestjson1_serializeDocumentSalesforceSourceProperties(v.Salesforce, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.ServiceNow != nil {
+ ok := object.Key("ServiceNow")
+ if err := awsRestjson1_serializeDocumentServiceNowSourceProperties(v.ServiceNow, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.Zendesk != nil {
+ ok := object.Key("Zendesk")
+ if err := awsRestjson1_serializeDocumentZendeskSourceProperties(v.Zendesk, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentSourceFields(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 awsRestjson1_serializeDocumentSourceFlowConfig(v *types.SourceFlowConfig, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.ConnectorProfileName != nil {
+ ok := object.Key("ConnectorProfileName")
+ ok.String(*v.ConnectorProfileName)
+ }
+
+ if len(v.ConnectorType) > 0 {
+ ok := object.Key("ConnectorType")
+ ok.String(string(v.ConnectorType))
+ }
+
+ if v.IncrementalPullConfig != nil {
+ ok := object.Key("IncrementalPullConfig")
+ if err := awsRestjson1_serializeDocumentIncrementalPullConfig(v.IncrementalPullConfig, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.SourceConnectorProperties != nil {
+ ok := object.Key("SourceConnectorProperties")
+ if err := awsRestjson1_serializeDocumentSourceConnectorProperties(v.SourceConnectorProperties, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsRestjson1_serializeDocumentStandardIdentifierList(v []types.StandardIdentifier, value smithyjson.Value) error {
array := value.Array()
defer array.Close()
@@ -2654,6 +2938,101 @@ func awsRestjson1_serializeDocumentTagMap(v map[string]string, value smithyjson.
return nil
}
+func awsRestjson1_serializeDocumentTask(v *types.Task, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.ConnectorOperator != nil {
+ ok := object.Key("ConnectorOperator")
+ if err := awsRestjson1_serializeDocumentConnectorOperator(v.ConnectorOperator, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.DestinationField != nil {
+ ok := object.Key("DestinationField")
+ ok.String(*v.DestinationField)
+ }
+
+ if v.SourceFields != nil {
+ ok := object.Key("SourceFields")
+ if err := awsRestjson1_serializeDocumentSourceFields(v.SourceFields, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.TaskProperties != nil {
+ ok := object.Key("TaskProperties")
+ if err := awsRestjson1_serializeDocumentTaskPropertiesMap(v.TaskProperties, ok); err != nil {
+ return err
+ }
+ }
+
+ if len(v.TaskType) > 0 {
+ ok := object.Key("TaskType")
+ ok.String(string(v.TaskType))
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentTaskPropertiesMap(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_serializeDocumentTasks(v []types.Task, value smithyjson.Value) error {
+ array := value.Array()
+ defer array.Close()
+
+ for i := range v {
+ av := array.Value()
+ if err := awsRestjson1_serializeDocumentTask(&v[i], av); err != nil {
+ return err
+ }
+ }
+ return nil
+}
+
+func awsRestjson1_serializeDocumentTriggerConfig(v *types.TriggerConfig, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.TriggerProperties != nil {
+ ok := object.Key("TriggerProperties")
+ if err := awsRestjson1_serializeDocumentTriggerProperties(v.TriggerProperties, ok); err != nil {
+ return err
+ }
+ }
+
+ if len(v.TriggerType) > 0 {
+ ok := object.Key("TriggerType")
+ ok.String(string(v.TriggerType))
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentTriggerProperties(v *types.TriggerProperties, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Scheduled != nil {
+ ok := object.Key("Scheduled")
+ if err := awsRestjson1_serializeDocumentScheduledTriggerProperties(v.Scheduled, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsRestjson1_serializeDocumentUpdateAddress(v *types.UpdateAddress, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -2721,3 +3100,15 @@ func awsRestjson1_serializeDocumentUpdateAttributes(v map[string]string, value s
}
return nil
}
+
+func awsRestjson1_serializeDocumentZendeskSourceProperties(v *types.ZendeskSourceProperties, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Object != nil {
+ ok := object.Key("Object")
+ ok.String(*v.Object)
+ }
+
+ return nil
+}
diff --git a/service/customerprofiles/types/enums.go b/service/customerprofiles/types/enums.go
index 9bd2880e529..77d9187a0ef 100644
--- a/service/customerprofiles/types/enums.go
+++ b/service/customerprofiles/types/enums.go
@@ -2,6 +2,24 @@
package types
+type DataPullMode string
+
+// Enum values for DataPullMode
+const (
+ DataPullModeIncremental DataPullMode = "Incremental"
+ DataPullModeComplete DataPullMode = "Complete"
+)
+
+// Values returns all known values for DataPullMode. 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 (DataPullMode) Values() []DataPullMode {
+ return []DataPullMode{
+ "Incremental",
+ "Complete",
+ }
+}
+
type FieldContentType string
// Enum values for FieldContentType
@@ -46,6 +64,94 @@ func (Gender) Values() []Gender {
}
}
+type MarketoConnectorOperator string
+
+// Enum values for MarketoConnectorOperator
+const (
+ MarketoConnectorOperatorProjection MarketoConnectorOperator = "PROJECTION"
+ MarketoConnectorOperatorLessThan MarketoConnectorOperator = "LESS_THAN"
+ MarketoConnectorOperatorGreaterThan MarketoConnectorOperator = "GREATER_THAN"
+ MarketoConnectorOperatorBetween MarketoConnectorOperator = "BETWEEN"
+ MarketoConnectorOperatorAddition MarketoConnectorOperator = "ADDITION"
+ MarketoConnectorOperatorMultiplication MarketoConnectorOperator = "MULTIPLICATION"
+ MarketoConnectorOperatorDivision MarketoConnectorOperator = "DIVISION"
+ MarketoConnectorOperatorSubtraction MarketoConnectorOperator = "SUBTRACTION"
+ MarketoConnectorOperatorMaskAll MarketoConnectorOperator = "MASK_ALL"
+ MarketoConnectorOperatorMaskFirstN MarketoConnectorOperator = "MASK_FIRST_N"
+ MarketoConnectorOperatorMaskLastN MarketoConnectorOperator = "MASK_LAST_N"
+ MarketoConnectorOperatorValidateNonNull MarketoConnectorOperator = "VALIDATE_NON_NULL"
+ MarketoConnectorOperatorValidateNonZero MarketoConnectorOperator = "VALIDATE_NON_ZERO"
+ MarketoConnectorOperatorValidateNonNegative MarketoConnectorOperator = "VALIDATE_NON_NEGATIVE"
+ MarketoConnectorOperatorValidateNumeric MarketoConnectorOperator = "VALIDATE_NUMERIC"
+ MarketoConnectorOperatorNoOp MarketoConnectorOperator = "NO_OP"
+)
+
+// Values returns all known values for MarketoConnectorOperator. 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 (MarketoConnectorOperator) Values() []MarketoConnectorOperator {
+ return []MarketoConnectorOperator{
+ "PROJECTION",
+ "LESS_THAN",
+ "GREATER_THAN",
+ "BETWEEN",
+ "ADDITION",
+ "MULTIPLICATION",
+ "DIVISION",
+ "SUBTRACTION",
+ "MASK_ALL",
+ "MASK_FIRST_N",
+ "MASK_LAST_N",
+ "VALIDATE_NON_NULL",
+ "VALIDATE_NON_ZERO",
+ "VALIDATE_NON_NEGATIVE",
+ "VALIDATE_NUMERIC",
+ "NO_OP",
+ }
+}
+
+type OperatorPropertiesKeys string
+
+// Enum values for OperatorPropertiesKeys
+const (
+ OperatorPropertiesKeysValue OperatorPropertiesKeys = "VALUE"
+ OperatorPropertiesKeysValues OperatorPropertiesKeys = "VALUES"
+ OperatorPropertiesKeysDataType OperatorPropertiesKeys = "DATA_TYPE"
+ OperatorPropertiesKeysUpperBound OperatorPropertiesKeys = "UPPER_BOUND"
+ OperatorPropertiesKeysLowerBound OperatorPropertiesKeys = "LOWER_BOUND"
+ OperatorPropertiesKeysSourceDataType OperatorPropertiesKeys = "SOURCE_DATA_TYPE"
+ OperatorPropertiesKeysDestinationDataType OperatorPropertiesKeys = "DESTINATION_DATA_TYPE"
+ OperatorPropertiesKeysValidationAction OperatorPropertiesKeys = "VALIDATION_ACTION"
+ OperatorPropertiesKeysMaskValue OperatorPropertiesKeys = "MASK_VALUE"
+ OperatorPropertiesKeysMaskLength OperatorPropertiesKeys = "MASK_LENGTH"
+ OperatorPropertiesKeysTruncateLength OperatorPropertiesKeys = "TRUNCATE_LENGTH"
+ OperatorPropertiesKeysMathOperationFieldsOrder OperatorPropertiesKeys = "MATH_OPERATION_FIELDS_ORDER"
+ OperatorPropertiesKeysConcatFormat OperatorPropertiesKeys = "CONCAT_FORMAT"
+ OperatorPropertiesKeysSubfieldCategoryMap OperatorPropertiesKeys = "SUBFIELD_CATEGORY_MAP"
+)
+
+// Values returns all known values for OperatorPropertiesKeys. 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 (OperatorPropertiesKeys) Values() []OperatorPropertiesKeys {
+ return []OperatorPropertiesKeys{
+ "VALUE",
+ "VALUES",
+ "DATA_TYPE",
+ "UPPER_BOUND",
+ "LOWER_BOUND",
+ "SOURCE_DATA_TYPE",
+ "DESTINATION_DATA_TYPE",
+ "VALIDATION_ACTION",
+ "MASK_VALUE",
+ "MASK_LENGTH",
+ "TRUNCATE_LENGTH",
+ "MATH_OPERATION_FIELDS_ORDER",
+ "CONCAT_FORMAT",
+ "SUBFIELD_CATEGORY_MAP",
+ }
+}
+
type PartyType string
// Enum values for PartyType
@@ -66,6 +172,196 @@ func (PartyType) Values() []PartyType {
}
}
+type S3ConnectorOperator string
+
+// Enum values for S3ConnectorOperator
+const (
+ S3ConnectorOperatorProjection S3ConnectorOperator = "PROJECTION"
+ S3ConnectorOperatorLessThan S3ConnectorOperator = "LESS_THAN"
+ S3ConnectorOperatorGreaterThan S3ConnectorOperator = "GREATER_THAN"
+ S3ConnectorOperatorBetween S3ConnectorOperator = "BETWEEN"
+ S3ConnectorOperatorLessThanOrEqualTo S3ConnectorOperator = "LESS_THAN_OR_EQUAL_TO"
+ S3ConnectorOperatorGreaterThanOrEqualTo S3ConnectorOperator = "GREATER_THAN_OR_EQUAL_TO"
+ S3ConnectorOperatorEqualTo S3ConnectorOperator = "EQUAL_TO"
+ S3ConnectorOperatorNotEqualTo S3ConnectorOperator = "NOT_EQUAL_TO"
+ S3ConnectorOperatorAddition S3ConnectorOperator = "ADDITION"
+ S3ConnectorOperatorMultiplication S3ConnectorOperator = "MULTIPLICATION"
+ S3ConnectorOperatorDivision S3ConnectorOperator = "DIVISION"
+ S3ConnectorOperatorSubtraction S3ConnectorOperator = "SUBTRACTION"
+ S3ConnectorOperatorMaskAll S3ConnectorOperator = "MASK_ALL"
+ S3ConnectorOperatorMaskFirstN S3ConnectorOperator = "MASK_FIRST_N"
+ S3ConnectorOperatorMaskLastN S3ConnectorOperator = "MASK_LAST_N"
+ S3ConnectorOperatorValidateNonNull S3ConnectorOperator = "VALIDATE_NON_NULL"
+ S3ConnectorOperatorValidateNonZero S3ConnectorOperator = "VALIDATE_NON_ZERO"
+ S3ConnectorOperatorValidateNonNegative S3ConnectorOperator = "VALIDATE_NON_NEGATIVE"
+ S3ConnectorOperatorValidateNumeric S3ConnectorOperator = "VALIDATE_NUMERIC"
+ S3ConnectorOperatorNoOp S3ConnectorOperator = "NO_OP"
+)
+
+// Values returns all known values for S3ConnectorOperator. 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 (S3ConnectorOperator) Values() []S3ConnectorOperator {
+ return []S3ConnectorOperator{
+ "PROJECTION",
+ "LESS_THAN",
+ "GREATER_THAN",
+ "BETWEEN",
+ "LESS_THAN_OR_EQUAL_TO",
+ "GREATER_THAN_OR_EQUAL_TO",
+ "EQUAL_TO",
+ "NOT_EQUAL_TO",
+ "ADDITION",
+ "MULTIPLICATION",
+ "DIVISION",
+ "SUBTRACTION",
+ "MASK_ALL",
+ "MASK_FIRST_N",
+ "MASK_LAST_N",
+ "VALIDATE_NON_NULL",
+ "VALIDATE_NON_ZERO",
+ "VALIDATE_NON_NEGATIVE",
+ "VALIDATE_NUMERIC",
+ "NO_OP",
+ }
+}
+
+type SalesforceConnectorOperator string
+
+// Enum values for SalesforceConnectorOperator
+const (
+ SalesforceConnectorOperatorProjection SalesforceConnectorOperator = "PROJECTION"
+ SalesforceConnectorOperatorLessThan SalesforceConnectorOperator = "LESS_THAN"
+ SalesforceConnectorOperatorContains SalesforceConnectorOperator = "CONTAINS"
+ SalesforceConnectorOperatorGreaterThan SalesforceConnectorOperator = "GREATER_THAN"
+ SalesforceConnectorOperatorBetween SalesforceConnectorOperator = "BETWEEN"
+ SalesforceConnectorOperatorLessThanOrEqualTo SalesforceConnectorOperator = "LESS_THAN_OR_EQUAL_TO"
+ SalesforceConnectorOperatorGreaterThanOrEqualTo SalesforceConnectorOperator = "GREATER_THAN_OR_EQUAL_TO"
+ SalesforceConnectorOperatorEqualTo SalesforceConnectorOperator = "EQUAL_TO"
+ SalesforceConnectorOperatorNotEqualTo SalesforceConnectorOperator = "NOT_EQUAL_TO"
+ SalesforceConnectorOperatorAddition SalesforceConnectorOperator = "ADDITION"
+ SalesforceConnectorOperatorMultiplication SalesforceConnectorOperator = "MULTIPLICATION"
+ SalesforceConnectorOperatorDivision SalesforceConnectorOperator = "DIVISION"
+ SalesforceConnectorOperatorSubtraction SalesforceConnectorOperator = "SUBTRACTION"
+ SalesforceConnectorOperatorMaskAll SalesforceConnectorOperator = "MASK_ALL"
+ SalesforceConnectorOperatorMaskFirstN SalesforceConnectorOperator = "MASK_FIRST_N"
+ SalesforceConnectorOperatorMaskLastN SalesforceConnectorOperator = "MASK_LAST_N"
+ SalesforceConnectorOperatorValidateNonNull SalesforceConnectorOperator = "VALIDATE_NON_NULL"
+ SalesforceConnectorOperatorValidateNonZero SalesforceConnectorOperator = "VALIDATE_NON_ZERO"
+ SalesforceConnectorOperatorValidateNonNegative SalesforceConnectorOperator = "VALIDATE_NON_NEGATIVE"
+ SalesforceConnectorOperatorValidateNumeric SalesforceConnectorOperator = "VALIDATE_NUMERIC"
+ SalesforceConnectorOperatorNoOp SalesforceConnectorOperator = "NO_OP"
+)
+
+// Values returns all known values for SalesforceConnectorOperator. 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 (SalesforceConnectorOperator) Values() []SalesforceConnectorOperator {
+ return []SalesforceConnectorOperator{
+ "PROJECTION",
+ "LESS_THAN",
+ "CONTAINS",
+ "GREATER_THAN",
+ "BETWEEN",
+ "LESS_THAN_OR_EQUAL_TO",
+ "GREATER_THAN_OR_EQUAL_TO",
+ "EQUAL_TO",
+ "NOT_EQUAL_TO",
+ "ADDITION",
+ "MULTIPLICATION",
+ "DIVISION",
+ "SUBTRACTION",
+ "MASK_ALL",
+ "MASK_FIRST_N",
+ "MASK_LAST_N",
+ "VALIDATE_NON_NULL",
+ "VALIDATE_NON_ZERO",
+ "VALIDATE_NON_NEGATIVE",
+ "VALIDATE_NUMERIC",
+ "NO_OP",
+ }
+}
+
+type ServiceNowConnectorOperator string
+
+// Enum values for ServiceNowConnectorOperator
+const (
+ ServiceNowConnectorOperatorProjection ServiceNowConnectorOperator = "PROJECTION"
+ ServiceNowConnectorOperatorContains ServiceNowConnectorOperator = "CONTAINS"
+ ServiceNowConnectorOperatorLessThan ServiceNowConnectorOperator = "LESS_THAN"
+ ServiceNowConnectorOperatorGreaterThan ServiceNowConnectorOperator = "GREATER_THAN"
+ ServiceNowConnectorOperatorBetween ServiceNowConnectorOperator = "BETWEEN"
+ ServiceNowConnectorOperatorLessThanOrEqualTo ServiceNowConnectorOperator = "LESS_THAN_OR_EQUAL_TO"
+ ServiceNowConnectorOperatorGreaterThanOrEqualTo ServiceNowConnectorOperator = "GREATER_THAN_OR_EQUAL_TO"
+ ServiceNowConnectorOperatorEqualTo ServiceNowConnectorOperator = "EQUAL_TO"
+ ServiceNowConnectorOperatorNotEqualTo ServiceNowConnectorOperator = "NOT_EQUAL_TO"
+ ServiceNowConnectorOperatorAddition ServiceNowConnectorOperator = "ADDITION"
+ ServiceNowConnectorOperatorMultiplication ServiceNowConnectorOperator = "MULTIPLICATION"
+ ServiceNowConnectorOperatorDivision ServiceNowConnectorOperator = "DIVISION"
+ ServiceNowConnectorOperatorSubtraction ServiceNowConnectorOperator = "SUBTRACTION"
+ ServiceNowConnectorOperatorMaskAll ServiceNowConnectorOperator = "MASK_ALL"
+ ServiceNowConnectorOperatorMaskFirstN ServiceNowConnectorOperator = "MASK_FIRST_N"
+ ServiceNowConnectorOperatorMaskLastN ServiceNowConnectorOperator = "MASK_LAST_N"
+ ServiceNowConnectorOperatorValidateNonNull ServiceNowConnectorOperator = "VALIDATE_NON_NULL"
+ ServiceNowConnectorOperatorValidateNonZero ServiceNowConnectorOperator = "VALIDATE_NON_ZERO"
+ ServiceNowConnectorOperatorValidateNonNegative ServiceNowConnectorOperator = "VALIDATE_NON_NEGATIVE"
+ ServiceNowConnectorOperatorValidateNumeric ServiceNowConnectorOperator = "VALIDATE_NUMERIC"
+ ServiceNowConnectorOperatorNoOp ServiceNowConnectorOperator = "NO_OP"
+)
+
+// Values returns all known values for ServiceNowConnectorOperator. 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 (ServiceNowConnectorOperator) Values() []ServiceNowConnectorOperator {
+ return []ServiceNowConnectorOperator{
+ "PROJECTION",
+ "CONTAINS",
+ "LESS_THAN",
+ "GREATER_THAN",
+ "BETWEEN",
+ "LESS_THAN_OR_EQUAL_TO",
+ "GREATER_THAN_OR_EQUAL_TO",
+ "EQUAL_TO",
+ "NOT_EQUAL_TO",
+ "ADDITION",
+ "MULTIPLICATION",
+ "DIVISION",
+ "SUBTRACTION",
+ "MASK_ALL",
+ "MASK_FIRST_N",
+ "MASK_LAST_N",
+ "VALIDATE_NON_NULL",
+ "VALIDATE_NON_ZERO",
+ "VALIDATE_NON_NEGATIVE",
+ "VALIDATE_NUMERIC",
+ "NO_OP",
+ }
+}
+
+type SourceConnectorType string
+
+// Enum values for SourceConnectorType
+const (
+ SourceConnectorTypeSalesforce SourceConnectorType = "Salesforce"
+ SourceConnectorTypeMarketo SourceConnectorType = "Marketo"
+ SourceConnectorTypeZendesk SourceConnectorType = "Zendesk"
+ SourceConnectorTypeServicenow SourceConnectorType = "Servicenow"
+ SourceConnectorTypeS3 SourceConnectorType = "S3"
+)
+
+// Values returns all known values for SourceConnectorType. 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 (SourceConnectorType) Values() []SourceConnectorType {
+ return []SourceConnectorType{
+ "Salesforce",
+ "Marketo",
+ "Zendesk",
+ "Servicenow",
+ "S3",
+ }
+}
+
type StandardIdentifier string
// Enum values for StandardIdentifier
@@ -89,3 +385,93 @@ func (StandardIdentifier) Values() []StandardIdentifier {
"NEW_ONLY",
}
}
+
+type TaskType string
+
+// Enum values for TaskType
+const (
+ TaskTypeArithmetic TaskType = "Arithmetic"
+ TaskTypeFilter TaskType = "Filter"
+ TaskTypeMap TaskType = "Map"
+ TaskTypeMask TaskType = "Mask"
+ TaskTypeMerge TaskType = "Merge"
+ TaskTypeTruncate TaskType = "Truncate"
+ TaskTypeValidate TaskType = "Validate"
+)
+
+// Values returns all known values for TaskType. 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 (TaskType) Values() []TaskType {
+ return []TaskType{
+ "Arithmetic",
+ "Filter",
+ "Map",
+ "Mask",
+ "Merge",
+ "Truncate",
+ "Validate",
+ }
+}
+
+type TriggerType string
+
+// Enum values for TriggerType
+const (
+ TriggerTypeScheduled TriggerType = "Scheduled"
+ TriggerTypeEvent TriggerType = "Event"
+ TriggerTypeOndemand TriggerType = "OnDemand"
+)
+
+// Values returns all known values for TriggerType. 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 (TriggerType) Values() []TriggerType {
+ return []TriggerType{
+ "Scheduled",
+ "Event",
+ "OnDemand",
+ }
+}
+
+type ZendeskConnectorOperator string
+
+// Enum values for ZendeskConnectorOperator
+const (
+ ZendeskConnectorOperatorProjection ZendeskConnectorOperator = "PROJECTION"
+ ZendeskConnectorOperatorGreaterThan ZendeskConnectorOperator = "GREATER_THAN"
+ ZendeskConnectorOperatorAddition ZendeskConnectorOperator = "ADDITION"
+ ZendeskConnectorOperatorMultiplication ZendeskConnectorOperator = "MULTIPLICATION"
+ ZendeskConnectorOperatorDivision ZendeskConnectorOperator = "DIVISION"
+ ZendeskConnectorOperatorSubtraction ZendeskConnectorOperator = "SUBTRACTION"
+ ZendeskConnectorOperatorMaskAll ZendeskConnectorOperator = "MASK_ALL"
+ ZendeskConnectorOperatorMaskFirstN ZendeskConnectorOperator = "MASK_FIRST_N"
+ ZendeskConnectorOperatorMaskLastN ZendeskConnectorOperator = "MASK_LAST_N"
+ ZendeskConnectorOperatorValidateNonNull ZendeskConnectorOperator = "VALIDATE_NON_NULL"
+ ZendeskConnectorOperatorValidateNonZero ZendeskConnectorOperator = "VALIDATE_NON_ZERO"
+ ZendeskConnectorOperatorValidateNonNegative ZendeskConnectorOperator = "VALIDATE_NON_NEGATIVE"
+ ZendeskConnectorOperatorValidateNumeric ZendeskConnectorOperator = "VALIDATE_NUMERIC"
+ ZendeskConnectorOperatorNoOp ZendeskConnectorOperator = "NO_OP"
+)
+
+// Values returns all known values for ZendeskConnectorOperator. 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 (ZendeskConnectorOperator) Values() []ZendeskConnectorOperator {
+ return []ZendeskConnectorOperator{
+ "PROJECTION",
+ "GREATER_THAN",
+ "ADDITION",
+ "MULTIPLICATION",
+ "DIVISION",
+ "SUBTRACTION",
+ "MASK_ALL",
+ "MASK_FIRST_N",
+ "MASK_LAST_N",
+ "VALIDATE_NON_NULL",
+ "VALIDATE_NON_ZERO",
+ "VALIDATE_NON_NEGATIVE",
+ "VALIDATE_NUMERIC",
+ "NO_OP",
+ }
+}
diff --git a/service/customerprofiles/types/types.go b/service/customerprofiles/types/types.go
index 9003a58a350..41d2c5d3405 100644
--- a/service/customerprofiles/types/types.go
+++ b/service/customerprofiles/types/types.go
@@ -41,6 +41,18 @@ type Address struct {
State *string
}
+type ConnectorOperator struct {
+ Marketo MarketoConnectorOperator
+
+ S3 S3ConnectorOperator
+
+ Salesforce SalesforceConnectorOperator
+
+ ServiceNow ServiceNowConnectorOperator
+
+ Zendesk ZendeskConnectorOperator
+}
+
// Usage-specific statistics about the domain.
type DomainStats struct {
@@ -60,6 +72,30 @@ type DomainStats struct {
TotalSize int64
}
+type FlowDefinition struct {
+
+ // This member is required.
+ FlowName *string
+
+ // This member is required.
+ KmsArn *string
+
+ // This member is required.
+ SourceFlowConfig *SourceFlowConfig
+
+ // This member is required.
+ Tasks []Task
+
+ // This member is required.
+ TriggerConfig *TriggerConfig
+
+ Description *string
+}
+
+type IncrementalPullConfig struct {
+ DatetimeTypeFieldName *string
+}
+
// An object in a list that represents a domain.
type ListDomainItem struct {
@@ -164,6 +200,12 @@ type ListProfileObjectTypeTemplateItem struct {
TemplateId *string
}
+type MarketoSourceProperties struct {
+
+ // This member is required.
+ Object *string
+}
+
// Represents a field in a ProfileObjectType.
type ObjectTypeField struct {
@@ -272,6 +314,100 @@ type Profile struct {
ShippingAddress *Address
}
+type S3SourceProperties struct {
+
+ // This member is required.
+ BucketName *string
+
+ BucketPrefix *string
+}
+
+type SalesforceSourceProperties struct {
+
+ // This member is required.
+ Object *string
+
+ EnableDynamicFieldUpdate bool
+
+ IncludeDeletedRecords bool
+}
+
+type ScheduledTriggerProperties struct {
+
+ // This member is required.
+ ScheduleExpression *string
+
+ DataPullMode DataPullMode
+
+ FirstExecutionFrom *time.Time
+
+ ScheduleEndTime *time.Time
+
+ ScheduleOffset int64
+
+ ScheduleStartTime *time.Time
+
+ Timezone *string
+}
+
+type ServiceNowSourceProperties struct {
+
+ // This member is required.
+ Object *string
+}
+
+type SourceConnectorProperties struct {
+ Marketo *MarketoSourceProperties
+
+ S3 *S3SourceProperties
+
+ Salesforce *SalesforceSourceProperties
+
+ ServiceNow *ServiceNowSourceProperties
+
+ Zendesk *ZendeskSourceProperties
+}
+
+type SourceFlowConfig struct {
+
+ // This member is required.
+ ConnectorType SourceConnectorType
+
+ // This member is required.
+ SourceConnectorProperties *SourceConnectorProperties
+
+ ConnectorProfileName *string
+
+ IncrementalPullConfig *IncrementalPullConfig
+}
+
+type Task struct {
+
+ // This member is required.
+ SourceFields []string
+
+ // This member is required.
+ TaskType TaskType
+
+ ConnectorOperator *ConnectorOperator
+
+ DestinationField *string
+
+ TaskProperties map[string]string
+}
+
+type TriggerConfig struct {
+
+ // This member is required.
+ TriggerType TriggerType
+
+ TriggerProperties *TriggerProperties
+}
+
+type TriggerProperties struct {
+ Scheduled *ScheduledTriggerProperties
+}
+
// Updates associated with the address properties of a customer profile.
type UpdateAddress struct {
@@ -305,3 +441,9 @@ type UpdateAddress struct {
// The state in which a customer lives.
State *string
}
+
+type ZendeskSourceProperties struct {
+
+ // This member is required.
+ Object *string
+}
diff --git a/service/customerprofiles/validators.go b/service/customerprofiles/validators.go
index 0bdfde3fe38..761242fc12d 100644
--- a/service/customerprofiles/validators.go
+++ b/service/customerprofiles/validators.go
@@ -5,6 +5,7 @@ package customerprofiles
import (
"context"
"fmt"
+ "github.com/aws/aws-sdk-go-v2/service/customerprofiles/types"
smithy "github.com/aws/smithy-go"
"github.com/aws/smithy-go/middleware"
)
@@ -633,6 +634,266 @@ func addOpUpdateProfileValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpUpdateProfile{}, middleware.After)
}
+func validateFlowDefinition(v *types.FlowDefinition) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "FlowDefinition"}
+ if v.FlowName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("FlowName"))
+ }
+ if v.KmsArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("KmsArn"))
+ }
+ if v.SourceFlowConfig == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("SourceFlowConfig"))
+ } else if v.SourceFlowConfig != nil {
+ if err := validateSourceFlowConfig(v.SourceFlowConfig); err != nil {
+ invalidParams.AddNested("SourceFlowConfig", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.Tasks == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Tasks"))
+ } else if v.Tasks != nil {
+ if err := validateTasks(v.Tasks); err != nil {
+ invalidParams.AddNested("Tasks", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.TriggerConfig == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("TriggerConfig"))
+ } else if v.TriggerConfig != nil {
+ if err := validateTriggerConfig(v.TriggerConfig); err != nil {
+ invalidParams.AddNested("TriggerConfig", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateMarketoSourceProperties(v *types.MarketoSourceProperties) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "MarketoSourceProperties"}
+ if v.Object == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Object"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateS3SourceProperties(v *types.S3SourceProperties) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "S3SourceProperties"}
+ if v.BucketName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("BucketName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateSalesforceSourceProperties(v *types.SalesforceSourceProperties) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "SalesforceSourceProperties"}
+ if v.Object == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Object"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateScheduledTriggerProperties(v *types.ScheduledTriggerProperties) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "ScheduledTriggerProperties"}
+ if v.ScheduleExpression == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("ScheduleExpression"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateServiceNowSourceProperties(v *types.ServiceNowSourceProperties) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "ServiceNowSourceProperties"}
+ if v.Object == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Object"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateSourceConnectorProperties(v *types.SourceConnectorProperties) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "SourceConnectorProperties"}
+ if v.Marketo != nil {
+ if err := validateMarketoSourceProperties(v.Marketo); err != nil {
+ invalidParams.AddNested("Marketo", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.S3 != nil {
+ if err := validateS3SourceProperties(v.S3); err != nil {
+ invalidParams.AddNested("S3", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.Salesforce != nil {
+ if err := validateSalesforceSourceProperties(v.Salesforce); err != nil {
+ invalidParams.AddNested("Salesforce", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.ServiceNow != nil {
+ if err := validateServiceNowSourceProperties(v.ServiceNow); err != nil {
+ invalidParams.AddNested("ServiceNow", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.Zendesk != nil {
+ if err := validateZendeskSourceProperties(v.Zendesk); err != nil {
+ invalidParams.AddNested("Zendesk", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateSourceFlowConfig(v *types.SourceFlowConfig) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "SourceFlowConfig"}
+ if len(v.ConnectorType) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("ConnectorType"))
+ }
+ if v.SourceConnectorProperties == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("SourceConnectorProperties"))
+ } else if v.SourceConnectorProperties != nil {
+ if err := validateSourceConnectorProperties(v.SourceConnectorProperties); err != nil {
+ invalidParams.AddNested("SourceConnectorProperties", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateTask(v *types.Task) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "Task"}
+ if v.SourceFields == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("SourceFields"))
+ }
+ if len(v.TaskType) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("TaskType"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateTasks(v []types.Task) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "Tasks"}
+ for i := range v {
+ if err := validateTask(&v[i]); err != nil {
+ invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateTriggerConfig(v *types.TriggerConfig) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "TriggerConfig"}
+ if len(v.TriggerType) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("TriggerType"))
+ }
+ if v.TriggerProperties != nil {
+ if err := validateTriggerProperties(v.TriggerProperties); err != nil {
+ invalidParams.AddNested("TriggerProperties", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateTriggerProperties(v *types.TriggerProperties) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "TriggerProperties"}
+ if v.Scheduled != nil {
+ if err := validateScheduledTriggerProperties(v.Scheduled); err != nil {
+ invalidParams.AddNested("Scheduled", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateZendeskSourceProperties(v *types.ZendeskSourceProperties) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "ZendeskSourceProperties"}
+ if v.Object == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Object"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpAddProfileKeyInput(v *AddProfileKeyInput) error {
if v == nil {
return nil
@@ -962,12 +1223,14 @@ func validateOpPutIntegrationInput(v *PutIntegrationInput) error {
if v.DomainName == nil {
invalidParams.Add(smithy.NewErrParamRequired("DomainName"))
}
- if v.Uri == nil {
- invalidParams.Add(smithy.NewErrParamRequired("Uri"))
- }
if v.ObjectTypeName == nil {
invalidParams.Add(smithy.NewErrParamRequired("ObjectTypeName"))
}
+ if v.FlowDefinition != nil {
+ if err := validateFlowDefinition(v.FlowDefinition); err != nil {
+ invalidParams.AddNested("FlowDefinition", err.(smithy.InvalidParamsError))
+ }
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
diff --git a/service/databasemigrationservice/go.mod b/service/databasemigrationservice/go.mod
index 6bc0d9b968e..a7306293f4a 100644
--- a/service/databasemigrationservice/go.mod
+++ b/service/databasemigrationservice/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/databasemigrationservice/go.sum b/service/databasemigrationservice/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/databasemigrationservice/go.sum
+++ b/service/databasemigrationservice/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/databrew/api_op_CreateDataset.go b/service/databrew/api_op_CreateDataset.go
index 5530b1be2a0..fbc0d3f5ec9 100644
--- a/service/databrew/api_op_CreateDataset.go
+++ b/service/databrew/api_op_CreateDataset.go
@@ -29,8 +29,8 @@ func (c *Client) CreateDataset(ctx context.Context, params *CreateDatasetInput,
type CreateDatasetInput struct {
- // Information on how DataBrew can find data, in either the AWS Glue Data Catalog
- // or Amazon S3.
+ // Represents information on how DataBrew can find data, in either the AWS Glue
+ // Data Catalog or Amazon S3.
//
// This member is required.
Input *types.Input
@@ -41,12 +41,16 @@ type CreateDatasetInput struct {
// This member is required.
Name *string
- // Specifies the file format of a dataset created from an S3 file or folder.
+ // The file format of a dataset that is created from an S3 file or folder.
Format types.InputFormat
- // Options that define the structure of either Csv, Excel, or JSON input.
+ // Represents a set of options that define the structure of either comma-separated
+ // value (CSV), Excel, or JSON input.
FormatOptions *types.FormatOptions
+ // A set of options that defines how DataBrew interprets an S3 path of the dataset.
+ PathOptions *types.PathOptions
+
// Metadata tags to apply to this dataset.
Tags map[string]string
}
diff --git a/service/databrew/api_op_CreateProfileJob.go b/service/databrew/api_op_CreateProfileJob.go
index 2c1129760c6..d790a0b2db8 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
- // An Amazon S3 location (bucket name an object key) where DataBrew can read input
- // data, or write output from a job.
+ // Represents an Amazon S3 location (bucket name 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_DescribeDataset.go b/service/databrew/api_op_DescribeDataset.go
index 09453a57934..fdda1585228 100644
--- a/service/databrew/api_op_DescribeDataset.go
+++ b/service/databrew/api_op_DescribeDataset.go
@@ -38,8 +38,8 @@ type DescribeDatasetInput struct {
type DescribeDatasetOutput struct {
- // Information on how DataBrew can find data, in either the AWS Glue Data Catalog
- // or Amazon S3.
+ // Represents information on how DataBrew can find data, in either the AWS Glue
+ // Data Catalog or Amazon S3.
//
// This member is required.
Input *types.Input
@@ -55,10 +55,11 @@ type DescribeDatasetOutput struct {
// The identifier (user name) of the user who created the dataset.
CreatedBy *string
- // Specifies the file format of a dataset created from an S3 file or folder.
+ // The file format of a dataset that is created from an S3 file or folder.
Format types.InputFormat
- // Options that define the structure of either Csv, Excel, or JSON input.
+ // Represents a set of options that define the structure of either comma-separated
+ // value (CSV), Excel, or JSON input.
FormatOptions *types.FormatOptions
// The identifier (user name) of the user who last modified the dataset.
@@ -67,6 +68,9 @@ type DescribeDatasetOutput struct {
// The date and time that the dataset was last modified.
LastModifiedDate *time.Time
+ // A set of options that defines how DataBrew interprets an S3 path of the dataset.
+ PathOptions *types.PathOptions
+
// The Amazon Resource Name (ARN) of the dataset.
ResourceArn *string
diff --git a/service/databrew/api_op_SendProjectSessionAction.go b/service/databrew/api_op_SendProjectSessionAction.go
index 9b656da7c38..c4bc0770642 100644
--- a/service/databrew/api_op_SendProjectSessionAction.go
+++ b/service/databrew/api_op_SendProjectSessionAction.go
@@ -50,7 +50,7 @@ type SendProjectSessionActionInput struct {
// from earlier in the view frame stack.
StepIndex *int32
- // Represents the data being being transformed during an action.
+ // Represents the data being transformed during an action.
ViewFrame *types.ViewFrame
}
diff --git a/service/databrew/api_op_UpdateDataset.go b/service/databrew/api_op_UpdateDataset.go
index 213c63afe48..c3144a88b19 100644
--- a/service/databrew/api_op_UpdateDataset.go
+++ b/service/databrew/api_op_UpdateDataset.go
@@ -29,8 +29,8 @@ func (c *Client) UpdateDataset(ctx context.Context, params *UpdateDatasetInput,
type UpdateDatasetInput struct {
- // Information on how DataBrew can find data, in either the AWS Glue Data Catalog
- // or Amazon S3.
+ // Represents information on how DataBrew can find data, in either the AWS Glue
+ // Data Catalog or Amazon S3.
//
// This member is required.
Input *types.Input
@@ -40,11 +40,15 @@ type UpdateDatasetInput struct {
// This member is required.
Name *string
- // Specifies the file format of a dataset created from an S3 file or folder.
+ // The file format of a dataset that is created from an S3 file or folder.
Format types.InputFormat
- // Options that define the structure of either Csv, Excel, or JSON input.
+ // Represents a set of options that define the structure of either comma-separated
+ // value (CSV), Excel, or JSON input.
FormatOptions *types.FormatOptions
+
+ // A set of options that defines how DataBrew interprets an S3 path of the dataset.
+ PathOptions *types.PathOptions
}
type UpdateDatasetOutput struct {
diff --git a/service/databrew/api_op_UpdateProfileJob.go b/service/databrew/api_op_UpdateProfileJob.go
index 94d534df405..891900485e2 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
- // An Amazon S3 location (bucket name an object key) where DataBrew can read input
- // data, or write output from a job.
+ // Represents an Amazon S3 location (bucket name 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 1bcea712bf2..2a5912fc3bb 100644
--- a/service/databrew/deserializers.go
+++ b/service/databrew/deserializers.go
@@ -2140,6 +2140,11 @@ func awsRestjson1_deserializeOpDocumentDescribeDatasetOutput(v **DescribeDataset
sv.Name = ptr.String(jtv)
}
+ case "PathOptions":
+ if err := awsRestjson1_deserializeDocumentPathOptions(&sv.PathOptions, value); err != nil {
+ return err
+ }
+
case "ResourceArn":
if value != nil {
jtv, ok := value.(string)
@@ -7259,6 +7264,60 @@ func awsRestjson1_deserializeDocumentCsvOutputOptions(v **types.CsvOutputOptions
return nil
}
+func awsRestjson1_deserializeDocumentDatabaseInputDefinition(v **types.DatabaseInputDefinition, 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.DatabaseInputDefinition
+ if *v == nil {
+ sv = &types.DatabaseInputDefinition{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DatabaseTableName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected DatabaseTableName to be of type string, got %T instead", value)
+ }
+ sv.DatabaseTableName = ptr.String(jtv)
+ }
+
+ case "GlueConnectionName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected GlueConnectionName to be of type string, got %T instead", value)
+ }
+ sv.GlueConnectionName = ptr.String(jtv)
+ }
+
+ case "TempDirectory":
+ if err := awsRestjson1_deserializeDocumentS3Location(&sv.TempDirectory, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsRestjson1_deserializeDocumentDataCatalogInputDefinition(v **types.DataCatalogInputDefinition, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -7425,6 +7484,11 @@ func awsRestjson1_deserializeDocumentDataset(v **types.Dataset, value interface{
sv.Name = ptr.String(jtv)
}
+ case "PathOptions":
+ if err := awsRestjson1_deserializeDocumentPathOptions(&sv.PathOptions, value); err != nil {
+ return err
+ }
+
case "ResourceArn":
if value != nil {
jtv, ok := value.(string)
@@ -7491,6 +7555,132 @@ func awsRestjson1_deserializeDocumentDatasetList(v *[]types.Dataset, value inter
return nil
}
+func awsRestjson1_deserializeDocumentDatasetParameter(v **types.DatasetParameter, 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.DatasetParameter
+ if *v == nil {
+ sv = &types.DatasetParameter{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CreateColumn":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected CreateColumn to be of type *bool, got %T instead", value)
+ }
+ sv.CreateColumn = jtv
+ }
+
+ case "DatetimeOptions":
+ if err := awsRestjson1_deserializeDocumentDatetimeOptions(&sv.DatetimeOptions, value); err != nil {
+ return err
+ }
+
+ case "Filter":
+ if err := awsRestjson1_deserializeDocumentFilterExpression(&sv.Filter, value); err != nil {
+ return err
+ }
+
+ case "Name":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PathParameterName to be of type string, got %T instead", value)
+ }
+ sv.Name = ptr.String(jtv)
+ }
+
+ case "Type":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ParameterType to be of type string, got %T instead", value)
+ }
+ sv.Type = types.ParameterType(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentDatetimeOptions(v **types.DatetimeOptions, 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.DatetimeOptions
+ if *v == nil {
+ sv = &types.DatetimeOptions{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Format":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected DatetimeFormat to be of type string, got %T instead", value)
+ }
+ sv.Format = ptr.String(jtv)
+ }
+
+ case "LocaleCode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected LocaleCode to be of type string, got %T instead", value)
+ }
+ sv.LocaleCode = ptr.String(jtv)
+ }
+
+ case "TimezoneOffset":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected TimezoneOffset to be of type string, got %T instead", value)
+ }
+ sv.TimezoneOffset = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsRestjson1_deserializeDocumentExcelOptions(v **types.ExcelOptions, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -7541,6 +7731,113 @@ func awsRestjson1_deserializeDocumentExcelOptions(v **types.ExcelOptions, value
return nil
}
+func awsRestjson1_deserializeDocumentFilesLimit(v **types.FilesLimit, 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.FilesLimit
+ if *v == nil {
+ sv = &types.FilesLimit{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "MaxFiles":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected MaxFiles to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.MaxFiles = int32(i64)
+ }
+
+ case "Order":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Order to be of type string, got %T instead", value)
+ }
+ sv.Order = types.Order(jtv)
+ }
+
+ case "OrderedBy":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected OrderedBy to be of type string, got %T instead", value)
+ }
+ sv.OrderedBy = types.OrderedBy(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentFilterExpression(v **types.FilterExpression, 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.FilterExpression
+ if *v == nil {
+ sv = &types.FilterExpression{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Expression":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Expression to be of type string, got %T instead", value)
+ }
+ sv.Expression = ptr.String(jtv)
+ }
+
+ case "ValuesMap":
+ if err := awsRestjson1_deserializeDocumentValuesMap(&sv.ValuesMap, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsRestjson1_deserializeDocumentFormatOptions(v **types.FormatOptions, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -7609,6 +7906,11 @@ func awsRestjson1_deserializeDocumentInput(v **types.Input, value interface{}) e
for key, value := range shape {
switch key {
+ case "DatabaseInputDefinition":
+ if err := awsRestjson1_deserializeDocumentDatabaseInputDefinition(&sv.DatabaseInputDefinition, value); err != nil {
+ return err
+ }
+
case "DataCatalogInputDefinition":
if err := awsRestjson1_deserializeDocumentDataCatalogInputDefinition(&sv.DataCatalogInputDefinition, value); err != nil {
return err
@@ -8438,6 +8740,87 @@ func awsRestjson1_deserializeDocumentParameterMap(v *map[string]string, value in
return nil
}
+func awsRestjson1_deserializeDocumentPathOptions(v **types.PathOptions, 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.PathOptions
+ if *v == nil {
+ sv = &types.PathOptions{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "FilesLimit":
+ if err := awsRestjson1_deserializeDocumentFilesLimit(&sv.FilesLimit, value); err != nil {
+ return err
+ }
+
+ case "LastModifiedDateCondition":
+ if err := awsRestjson1_deserializeDocumentFilterExpression(&sv.LastModifiedDateCondition, value); err != nil {
+ return err
+ }
+
+ case "Parameters":
+ if err := awsRestjson1_deserializeDocumentPathParametersMap(&sv.Parameters, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentPathParametersMap(v *map[string]types.DatasetParameter, 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.DatasetParameter
+ if *v == nil {
+ mv = map[string]types.DatasetParameter{}
+ } else {
+ mv = *v
+ }
+
+ for key, value := range shape {
+ var parsedVal types.DatasetParameter
+ mapVar := parsedVal
+ destAddr := &mapVar
+ if err := awsRestjson1_deserializeDocumentDatasetParameter(&destAddr, value); err != nil {
+ return err
+ }
+ parsedVal = *destAddr
+ mv[key] = parsedVal
+
+ }
+ *v = mv
+ return nil
+}
+
func awsRestjson1_deserializeDocumentProject(v **types.Project, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -9568,3 +9951,39 @@ func awsRestjson1_deserializeDocumentValidationException(v **types.ValidationExc
*v = sv
return nil
}
+
+func awsRestjson1_deserializeDocumentValuesMap(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 ConditionValue to be of type string, got %T instead", value)
+ }
+ parsedVal = jtv
+ }
+ mv[key] = parsedVal
+
+ }
+ *v = mv
+ return nil
+}
diff --git a/service/databrew/go.mod b/service/databrew/go.mod
index 851e77863cd..895d7d059b9 100644
--- a/service/databrew/go.mod
+++ b/service/databrew/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/databrew/go.sum b/service/databrew/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/databrew/go.sum
+++ b/service/databrew/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/databrew/serializers.go b/service/databrew/serializers.go
index ba52e2f15a1..566309e2d91 100644
--- a/service/databrew/serializers.go
+++ b/service/databrew/serializers.go
@@ -181,6 +181,13 @@ func awsRestjson1_serializeOpDocumentCreateDatasetInput(v *CreateDatasetInput, v
ok.String(*v.Name)
}
+ if v.PathOptions != nil {
+ ok := object.Key("PathOptions")
+ if err := awsRestjson1_serializeDocumentPathOptions(v.PathOptions, ok); err != nil {
+ return err
+ }
+ }
+
if v.Tags != nil {
ok := object.Key("Tags")
if err := awsRestjson1_serializeDocumentTagMap(v.Tags, ok); err != nil {
@@ -2502,6 +2509,13 @@ func awsRestjson1_serializeOpDocumentUpdateDatasetInput(v *UpdateDatasetInput, v
}
}
+ if v.PathOptions != nil {
+ ok := object.Key("PathOptions")
+ if err := awsRestjson1_serializeDocumentPathOptions(v.PathOptions, ok); err != nil {
+ return err
+ }
+ }
+
return nil
}
@@ -3087,6 +3101,30 @@ func awsRestjson1_serializeDocumentCsvOutputOptions(v *types.CsvOutputOptions, v
return nil
}
+func awsRestjson1_serializeDocumentDatabaseInputDefinition(v *types.DatabaseInputDefinition, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.DatabaseTableName != nil {
+ ok := object.Key("DatabaseTableName")
+ ok.String(*v.DatabaseTableName)
+ }
+
+ if v.GlueConnectionName != nil {
+ ok := object.Key("GlueConnectionName")
+ ok.String(*v.GlueConnectionName)
+ }
+
+ if v.TempDirectory != nil {
+ ok := object.Key("TempDirectory")
+ if err := awsRestjson1_serializeDocumentS3Location(v.TempDirectory, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsRestjson1_serializeDocumentDataCatalogInputDefinition(v *types.DataCatalogInputDefinition, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -3116,6 +3154,64 @@ func awsRestjson1_serializeDocumentDataCatalogInputDefinition(v *types.DataCatal
return nil
}
+func awsRestjson1_serializeDocumentDatasetParameter(v *types.DatasetParameter, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.CreateColumn {
+ ok := object.Key("CreateColumn")
+ ok.Boolean(v.CreateColumn)
+ }
+
+ if v.DatetimeOptions != nil {
+ ok := object.Key("DatetimeOptions")
+ if err := awsRestjson1_serializeDocumentDatetimeOptions(v.DatetimeOptions, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.Filter != nil {
+ ok := object.Key("Filter")
+ if err := awsRestjson1_serializeDocumentFilterExpression(v.Filter, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.Name != nil {
+ ok := object.Key("Name")
+ ok.String(*v.Name)
+ }
+
+ if len(v.Type) > 0 {
+ ok := object.Key("Type")
+ ok.String(string(v.Type))
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentDatetimeOptions(v *types.DatetimeOptions, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Format != nil {
+ ok := object.Key("Format")
+ ok.String(*v.Format)
+ }
+
+ if v.LocaleCode != nil {
+ ok := object.Key("LocaleCode")
+ ok.String(*v.LocaleCode)
+ }
+
+ if v.TimezoneOffset != nil {
+ ok := object.Key("TimezoneOffset")
+ ok.String(*v.TimezoneOffset)
+ }
+
+ return nil
+}
+
func awsRestjson1_serializeDocumentExcelOptions(v *types.ExcelOptions, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -3142,6 +3238,47 @@ func awsRestjson1_serializeDocumentExcelOptions(v *types.ExcelOptions, value smi
return nil
}
+func awsRestjson1_serializeDocumentFilesLimit(v *types.FilesLimit, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ {
+ ok := object.Key("MaxFiles")
+ ok.Integer(v.MaxFiles)
+ }
+
+ if len(v.Order) > 0 {
+ ok := object.Key("Order")
+ ok.String(string(v.Order))
+ }
+
+ if len(v.OrderedBy) > 0 {
+ ok := object.Key("OrderedBy")
+ ok.String(string(v.OrderedBy))
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentFilterExpression(v *types.FilterExpression, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Expression != nil {
+ ok := object.Key("Expression")
+ ok.String(*v.Expression)
+ }
+
+ if v.ValuesMap != nil {
+ ok := object.Key("ValuesMap")
+ if err := awsRestjson1_serializeDocumentValuesMap(v.ValuesMap, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsRestjson1_serializeDocumentFormatOptions(v *types.FormatOptions, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -3185,6 +3322,13 @@ func awsRestjson1_serializeDocumentInput(v *types.Input, value smithyjson.Value)
object := value.Object()
defer object.Close()
+ if v.DatabaseInputDefinition != nil {
+ ok := object.Key("DatabaseInputDefinition")
+ if err := awsRestjson1_serializeDocumentDatabaseInputDefinition(v.DatabaseInputDefinition, ok); err != nil {
+ return err
+ }
+ }
+
if v.DataCatalogInputDefinition != nil {
ok := object.Key("DataCatalogInputDefinition")
if err := awsRestjson1_serializeDocumentDataCatalogInputDefinition(v.DataCatalogInputDefinition, ok); err != nil {
@@ -3323,6 +3467,48 @@ func awsRestjson1_serializeDocumentParameterMap(v map[string]string, value smith
return nil
}
+func awsRestjson1_serializeDocumentPathOptions(v *types.PathOptions, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.FilesLimit != nil {
+ ok := object.Key("FilesLimit")
+ if err := awsRestjson1_serializeDocumentFilesLimit(v.FilesLimit, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.LastModifiedDateCondition != nil {
+ ok := object.Key("LastModifiedDateCondition")
+ if err := awsRestjson1_serializeDocumentFilterExpression(v.LastModifiedDateCondition, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.Parameters != nil {
+ ok := object.Key("Parameters")
+ if err := awsRestjson1_serializeDocumentPathParametersMap(v.Parameters, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentPathParametersMap(v map[string]types.DatasetParameter, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ for key := range v {
+ om := object.Key(key)
+ mapVar := v[key]
+ if err := awsRestjson1_serializeDocumentDatasetParameter(&mapVar, om); err != nil {
+ return err
+ }
+ }
+ return nil
+}
+
func awsRestjson1_serializeDocumentRecipeAction(v *types.RecipeAction, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -3471,6 +3657,17 @@ func awsRestjson1_serializeDocumentTagMap(v map[string]string, value smithyjson.
return nil
}
+func awsRestjson1_serializeDocumentValuesMap(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_serializeDocumentViewFrame(v *types.ViewFrame, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
diff --git a/service/databrew/types/enums.go b/service/databrew/types/enums.go
index ac44082bc18..5519bbe0119 100644
--- a/service/databrew/types/enums.go
+++ b/service/databrew/types/enums.go
@@ -138,6 +138,40 @@ func (LogSubscription) Values() []LogSubscription {
}
}
+type Order string
+
+// Enum values for Order
+const (
+ OrderDescending Order = "DESCENDING"
+ OrderAscending Order = "ASCENDING"
+)
+
+// Values returns all known values for Order. 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 (Order) Values() []Order {
+ return []Order{
+ "DESCENDING",
+ "ASCENDING",
+ }
+}
+
+type OrderedBy string
+
+// Enum values for OrderedBy
+const (
+ OrderedByLastModifiedDate OrderedBy = "LAST_MODIFIED_DATE"
+)
+
+// Values returns all known values for OrderedBy. 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 (OrderedBy) Values() []OrderedBy {
+ return []OrderedBy{
+ "LAST_MODIFIED_DATE",
+ }
+}
+
type OutputFormat string
// Enum values for OutputFormat
@@ -166,6 +200,26 @@ func (OutputFormat) Values() []OutputFormat {
}
}
+type ParameterType string
+
+// Enum values for ParameterType
+const (
+ ParameterTypeDatetime ParameterType = "Datetime"
+ ParameterTypeNumber ParameterType = "Number"
+ ParameterTypeString ParameterType = "String"
+)
+
+// Values returns all known values for ParameterType. 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 (ParameterType) Values() []ParameterType {
+ return []ParameterType{
+ "Datetime",
+ "Number",
+ "String",
+ }
+}
+
type SampleMode string
// Enum values for SampleMode
@@ -244,6 +298,7 @@ type Source string
const (
SourceS3 Source = "S3"
SourceDatacatalog Source = "DATA-CATALOG"
+ SourceDatabase Source = "DATABASE"
)
// Values returns all known values for Source. Note that this can be expanded in
@@ -253,5 +308,6 @@ func (Source) Values() []Source {
return []Source{
"S3",
"DATA-CATALOG",
+ "DATABASE",
}
}
diff --git a/service/databrew/types/types.go b/service/databrew/types/types.go
index 85b8b03a9e8..71f4e311b29 100644
--- a/service/databrew/types/types.go
+++ b/service/databrew/types/types.go
@@ -7,7 +7,7 @@ import (
)
// Represents an individual condition that evaluates to true or false. Conditions
-// are used with recipe actions: The action is only performed for column values
+// are used with recipe actions. The action is only performed for column values
// where the condition evaluates to true. If a recipe requires more than one
// condition, then the recipe must specify multiple ConditionExpression elements.
// Each condition is applied to the rows in a dataset first, before the recipe
@@ -31,25 +31,45 @@ type ConditionExpression struct {
Value *string
}
-// Options that define how DataBrew will read a Csv file when creating a dataset
-// from that file.
+// Represents a set of options that define how DataBrew will read a comma-separated
+// value (CSV) file when creating a dataset from that file.
type CsvOptions struct {
- // A single character that specifies the delimiter being used in the Csv file.
+ // A single character that specifies the delimiter being used in the CSV file.
Delimiter *string
- // A variable that specifies whether the first row in the file will be parsed as
- // the header. If false, column names will be auto-generated.
+ // A variable that specifies whether the first row in the file is parsed as the
+ // header. If this value is false, column names are auto-generated.
HeaderRow *bool
}
-// Options that define how DataBrew will write a Csv file.
+// Represents a set of options that define how DataBrew will write a
+// comma-separated value (CSV) file.
type CsvOutputOptions struct {
- // A single character that specifies the delimiter used to create Csv job output.
+ // A single character that specifies the delimiter used to create CSV job output.
Delimiter *string
}
+// Connection information for dataset input files stored in a database.
+type DatabaseInputDefinition struct {
+
+ // The table within the target database.
+ //
+ // This member is required.
+ DatabaseTableName *string
+
+ // The AWS Glue Connection that stores the connection information for the target
+ // database.
+ //
+ // This member is required.
+ GlueConnectionName *string
+
+ // Represents an Amazon S3 location (bucket name and object key) where DataBrew can
+ // read input data, or write output from a job.
+ TempDirectory *S3Location
+}
+
// Represents how metadata stored in the AWS Glue Data Catalog is defined in a
// DataBrew dataset.
type DataCatalogInputDefinition struct {
@@ -96,10 +116,10 @@ type Dataset struct {
// The Amazon Resource Name (ARN) of the user who created the dataset.
CreatedBy *string
- // Specifies the file format of a dataset created from an S3 file or folder.
+ // The file format of a dataset that is created from an S3 file or folder.
Format InputFormat
- // Options that define how DataBrew interprets the data in the dataset.
+ // A set of options that define how DataBrew interprets the data in the dataset.
FormatOptions *FormatOptions
// The Amazon Resource Name (ARN) of the user who last modified the dataset.
@@ -108,6 +128,9 @@ type Dataset struct {
// The last modification date and time of the dataset.
LastModifiedDate *time.Time
+ // A set of options that defines how DataBrew interprets an S3 path of the dataset.
+ PathOptions *PathOptions
+
// The unique Amazon Resource Name (ARN) for the dataset.
ResourceArn *string
@@ -119,27 +142,114 @@ type Dataset struct {
Tags map[string]string
}
-// Options that define how DataBrew will interpret a Microsoft Excel file, when
-// creating a dataset from that file.
+// Represents a dataset paramater that defines type and conditions for a parameter
+// in the S3 path of the dataset.
+type DatasetParameter struct {
+
+ // The name of the parameter that is used in the dataset's S3 path.
+ //
+ // This member is required.
+ Name *string
+
+ // The type of the dataset parameter, can be one of a 'String', 'Number' or
+ // 'Datetime'.
+ //
+ // This member is required.
+ Type ParameterType
+
+ // Optional boolean value that defines whether the captured value of this parameter
+ // should be loaded as an additional column in the dataset.
+ CreateColumn bool
+
+ // Additional parameter options such as a format and a timezone. Required for
+ // datetime parameters.
+ DatetimeOptions *DatetimeOptions
+
+ // The optional filter expression structure to apply additional matching criteria
+ // to the parameter.
+ Filter *FilterExpression
+}
+
+// Represents additional options for correct interpretation of datetime parameters
+// used in the S3 path of a dataset.
+type DatetimeOptions struct {
+
+ // Required option, that defines the datetime format used for a date parameter in
+ // the S3 path. Should use only supported datetime specifiers and separation
+ // characters, all litera a-z or A-Z character should be escaped with single
+ // quotes. E.g. "MM.dd.yyyy-'at'-HH:mm".
+ //
+ // This member is required.
+ Format *string
+
+ // Optional value for a non-US locale code, needed for correct interpretation of
+ // some date formats.
+ LocaleCode *string
+
+ // Optional value for a timezone offset of the datetime parameter value in the S3
+ // path. Shouldn't be used if Format for this parameter includes timezone fields.
+ // If no offset specified, UTC is assumed.
+ TimezoneOffset *string
+}
+
+// Represents a set of options that define how DataBrew will interpret a Microsoft
+// Excel file when creating a dataset from that file.
type ExcelOptions struct {
- // A variable that specifies whether the first row in the file will be parsed as
- // the header. If false, column names will be auto-generated.
+ // A variable that specifies whether the first row in the file is parsed as the
+ // header. If this value is false, column names are auto-generated.
HeaderRow *bool
- // Specifies one or more sheet numbers in the Excel file, which will be included in
- // the dataset.
+ // One or more sheet numbers in the Excel file that will be included in the
+ // dataset.
SheetIndexes []int32
- // Specifies one or more named sheets in the Excel file, which will be included in
- // the dataset.
+ // One or more named sheets in the Excel file that will be included in the dataset.
SheetNames []string
}
-// Options that define the structure of either Csv, Excel, or JSON input.
+// Represents a limit imposed on number of S3 files that should be selected for a
+// dataset from a connected S3 path.
+type FilesLimit struct {
+
+ // The number of S3 files to select.
+ //
+ // This member is required.
+ MaxFiles int32
+
+ // A criteria to use for S3 files sorting before their selection. By default uses
+ // DESCENDING order, i.e. most recent files are selected first. Anotherpossible
+ // value is ASCENDING.
+ Order Order
+
+ // A criteria to use for S3 files sorting before their selection. By default uses
+ // LAST_MODIFIED_DATE as a sorting criteria. Currently it's the only allowed value.
+ OrderedBy OrderedBy
+}
+
+// Represents a structure for defining parameter conditions.
+type FilterExpression struct {
+
+ // The expression which includes condition names followed by substitution
+ // variables, possibly grouped and combined with other conditions. For example,
+ // "(starts_with :prefix1 or starts_with :prefix2) and (ends_with :suffix1 or
+ // ends_with :suffix2)". Substitution variables should start with ':' symbol.
+ //
+ // This member is required.
+ Expression *string
+
+ // The map of substitution variable names to their values used in this filter
+ // expression.
+ //
+ // This member is required.
+ ValuesMap map[string]string
+}
+
+// Represents a set of options that define the structure of either comma-separated
+// value (CSV), Excel, or JSON input.
type FormatOptions struct {
- // Options that define how Csv input is to be interpreted by DataBrew.
+ // Options that define how CSV input is to be interpreted by DataBrew.
Csv *CsvOptions
// Options that define how Excel input is to be interpreted by DataBrew.
@@ -149,13 +259,16 @@ type FormatOptions struct {
Json *JsonOptions
}
-// Information on how DataBrew can find data, in either the AWS Glue Data Catalog
-// or Amazon S3.
+// Represents information on how DataBrew can find data, in either the AWS Glue
+// Data Catalog or Amazon S3.
type Input struct {
// The AWS Glue Data Catalog parameters for the data.
DataCatalogInputDefinition *DataCatalogInputDefinition
+ // Connection information for dataset input files stored in a database.
+ DatabaseInputDefinition *DatabaseInputDefinition
+
// The Amazon S3 location where the data is stored.
S3InputDefinition *S3Location
}
@@ -188,16 +301,16 @@ type Job struct {
// The encryption mode for the job, which can be one of the following:
//
// * SSE-KMS -
- // Server-side encryption with AWS KMS-managed keys.
+ // Server-side encryption with keys managed by AWS KMS.
//
// * SSE-S3 - Server-side
// encryption with keys managed by Amazon S3.
EncryptionMode EncryptionMode
- // Sample configuration for profile jobs only. Determines the number of rows on
- // which the profile job will be executed. If a JobSample value is not provided,
- // the default value will be used. The default value is CUSTOM_ROWS for the mode
- // parameter and 20000 for the size parameter.
+ // A sample configuration for profile jobs only, which determines the number of
+ // rows on which the profile job is run. If a JobSample value isn't provided, the
+ // default value is used. The default value is CUSTOM_ROWS for the mode parameter
+ // and 20,000 for the size parameter.
JobSample *JobSample
// The Amazon Resource Name (ARN) of the user who last modified the job.
@@ -227,7 +340,7 @@ type Job struct {
// The unique Amazon Resource Name (ARN) for the job.
ResourceArn *string
- // The Amazon Resource Name (ARN) of the role that will be assumed for this job.
+ // The Amazon Resource Name (ARN) of the role to be assumed for this job.
RoleArn *string
// Metadata tags that have been applied to the job.
@@ -268,10 +381,10 @@ type JobRun struct {
// The name of the job being processed during this run.
JobName *string
- // Sample configuration for profile jobs only. Determines the number of rows on
- // which the profile job will be executed. If a JobSample value is not provided,
- // the default value will be used. The default value is CUSTOM_ROWS for the mode
- // parameter and 20000 for the size parameter.
+ // A sample configuration for profile jobs only, which determines the number of
+ // rows on which the profile job is run. If a JobSample value isn't provided, the
+ // default is used. The default value is CUSTOM_ROWS for the mode parameter and
+ // 20,000 for the size parameter.
JobSample *JobSample
// The name of an Amazon CloudWatch log group, where the job writes diagnostic
@@ -300,24 +413,24 @@ type JobRun struct {
State JobRunState
}
-// Sample configuration for Profile Jobs only. Determines the number of rows on
-// which the Profile job will be executed. If a JobSample value is not provided for
-// profile jobs, the default value will be used. The default value is CUSTOM_ROWS
-// for the mode parameter and 20000 for the size parameter.
+// A sample configuration for profile jobs only, which determines the number of
+// rows on which the profile job is run. If a JobSample value isn't provided, the
+// default is used. The default value is CUSTOM_ROWS for the mode parameter and
+// 20,000 for the size parameter.
type JobSample struct {
- // Determines whether the profile job will be executed on the entire dataset or on
- // a specified number of rows. Must be one of the following:
+ // A value that determines whether the profile job is run on the entire dataset or
+ // a specified number of rows. This value must be one of the following:
//
- // * FULL_DATASET:
- // Profile job will be executed on the entire dataset.
+ // *
+ // FULL_DATASET - The profile job is run on the entire dataset.
//
- // * CUSTOM_ROWS: Profile job
- // will be executed on the number of rows specified in the Size parameter.
+ // * CUSTOM_ROWS -
+ // The profile job is run on the number of rows specified in the Size parameter.
Mode SampleMode
- // Size parameter is only required when the mode is CUSTOM_ROWS. Profile job will
- // be executed on the the specified number of rows. The maximum value for size is
+ // The Size parameter is only required when the mode is CUSTOM_ROWS. The profile
+ // job is run on the specified number of rows. The maximum value for size is
// Long.MAX_VALUE. Long.MAX_VALUE = 9223372036854775807
Size *int64
}
@@ -330,8 +443,8 @@ type JsonOptions struct {
MultiLine bool
}
-// Parameters that specify how and where DataBrew will write the output generated
-// by recipe jobs or profile jobs.
+// Represents options that specify how and where DataBrew writes the output
+// generated by recipe jobs or profile jobs.
type Output struct {
// The location in Amazon S3 where the job writes its output.
@@ -345,7 +458,7 @@ type Output struct {
// The data format of the output of the job.
Format OutputFormat
- // Options that define how DataBrew formats job output files.
+ // Represents options that define how DataBrew formats job output files.
FormatOptions *OutputFormatOptions
// A value that, if true, means that any data in the location specified for output
@@ -356,13 +469,32 @@ type Output struct {
PartitionColumns []string
}
-// Options that define the structure of Csv job output.
+// Represents a set of options that define the structure of comma-separated (CSV)
+// job output.
type OutputFormatOptions struct {
- // Options that define how DataBrew writes Csv output.
+ // Represents a set of options that define the structure of comma-separated value
+ // (CSV) job output.
Csv *CsvOutputOptions
}
+// Represents a set of options that define how DataBrew selects files for a given
+// S3 path in a dataset.
+type PathOptions struct {
+
+ // If provided, this structure imposes a limit on a number of files that should be
+ // selected.
+ FilesLimit *FilesLimit
+
+ // If provided, this structure defines a date range for matching S3 objects based
+ // on their LastModifiedDate attribute in S3.
+ LastModifiedDateCondition *FilterExpression
+
+ // A structure that maps names of parameters used in the S3 path of a dataset to
+ // their definitions.
+ Parameters map[string]DatasetParameter
+}
+
// Represents all of the attributes of a DataBrew project.
type Project struct {
@@ -408,7 +540,7 @@ type Project struct {
RoleArn *string
// The sample size and sampling type to apply to the data. If this parameter isn't
- // specified, then the sample will consiste of the first 500 rows from the dataset.
+ // specified, then the sample consists of the first 500 rows from the dataset.
Sample *Sample
// Metadata tags that have been applied to the project.
@@ -452,7 +584,7 @@ type Recipe struct {
// *
// Numeric version (X.Y) - X and Y stand for major and minor version numbers. The
// maximum length of each is 6 digits, and neither can be negative values. Both X
- // and Y are required, and "0.0" is not a valid version.
+ // and Y are required, and "0.0" isn't a valid version.
//
// * LATEST_WORKING - the
// most recent valid version being developed in a DataBrew project.
@@ -507,9 +639,9 @@ type RecipeStep struct {
// This member is required.
Action *RecipeAction
- // One or more conditions that must be met, in order for the recipe step to
- // succeed. All of the conditions in the array must be met. In other words, all of
- // the conditions must be combined using a logical AND operation.
+ // One or more conditions that must be met for the recipe step to succeed. All of
+ // the conditions in the array must be met. In other words, all of the conditions
+ // must be combined using a logical AND operation.
ConditionExpressions []ConditionExpression
}
@@ -527,8 +659,8 @@ type RecipeVersionErrorDetail struct {
RecipeVersion *string
}
-// An Amazon S3 location (bucket name an object key) where DataBrew can read input
-// data, or write output from a job.
+// Represents an Amazon S3 location (bucket name and object key) where DataBrew can
+// read input data, or write output from a job.
type S3Location struct {
// The S3 bucket name.
@@ -570,7 +702,7 @@ type Schedule struct {
// The Amazon Resource Name (ARN) of the user who created the schedule.
CreatedBy *string
- // The date(s) and time(s) when the job will run. For more information, see Cron
+ // The dates and times when the job is to run. For more information, see Cron
// expressions (https://docs.aws.amazon.com/databrew/latest/dg/jobs.cron.html) in
// the AWS Glue DataBrew Developer Guide.
CronExpression *string
@@ -591,7 +723,7 @@ type Schedule struct {
Tags map[string]string
}
-// Represents the data being being transformed during an action.
+// Represents the data being transformed during an action.
type ViewFrame struct {
// The starting index for the range of columns to return in the view frame.
diff --git a/service/databrew/validators.go b/service/databrew/validators.go
index a36b73c058c..2d335df16fb 100644
--- a/service/databrew/validators.go
+++ b/service/databrew/validators.go
@@ -861,6 +861,29 @@ func validateConditionExpressionList(v []types.ConditionExpression) error {
}
}
+func validateDatabaseInputDefinition(v *types.DatabaseInputDefinition) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DatabaseInputDefinition"}
+ if v.GlueConnectionName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("GlueConnectionName"))
+ }
+ if v.DatabaseTableName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("DatabaseTableName"))
+ }
+ if v.TempDirectory != nil {
+ if err := validateS3Location(v.TempDirectory); err != nil {
+ invalidParams.AddNested("TempDirectory", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateDataCatalogInputDefinition(v *types.DataCatalogInputDefinition) error {
if v == nil {
return nil
@@ -884,6 +907,79 @@ func validateDataCatalogInputDefinition(v *types.DataCatalogInputDefinition) err
}
}
+func validateDatasetParameter(v *types.DatasetParameter) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DatasetParameter"}
+ if v.Name == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Name"))
+ }
+ if len(v.Type) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("Type"))
+ }
+ if v.DatetimeOptions != nil {
+ if err := validateDatetimeOptions(v.DatetimeOptions); err != nil {
+ invalidParams.AddNested("DatetimeOptions", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.Filter != nil {
+ if err := validateFilterExpression(v.Filter); err != nil {
+ invalidParams.AddNested("Filter", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateDatetimeOptions(v *types.DatetimeOptions) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DatetimeOptions"}
+ if v.Format == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Format"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateFilesLimit(v *types.FilesLimit) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "FilesLimit"}
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateFilterExpression(v *types.FilterExpression) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "FilterExpression"}
+ if v.Expression == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Expression"))
+ }
+ if v.ValuesMap == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("ValuesMap"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateInput(v *types.Input) error {
if v == nil {
return nil
@@ -899,6 +995,11 @@ func validateInput(v *types.Input) error {
invalidParams.AddNested("DataCatalogInputDefinition", err.(smithy.InvalidParamsError))
}
}
+ if v.DatabaseInputDefinition != nil {
+ if err := validateDatabaseInputDefinition(v.DatabaseInputDefinition); err != nil {
+ invalidParams.AddNested("DatabaseInputDefinition", err.(smithy.InvalidParamsError))
+ }
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
@@ -942,6 +1043,51 @@ func validateOutputList(v []types.Output) error {
}
}
+func validatePathOptions(v *types.PathOptions) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "PathOptions"}
+ if v.LastModifiedDateCondition != nil {
+ if err := validateFilterExpression(v.LastModifiedDateCondition); err != nil {
+ invalidParams.AddNested("LastModifiedDateCondition", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.FilesLimit != nil {
+ if err := validateFilesLimit(v.FilesLimit); err != nil {
+ invalidParams.AddNested("FilesLimit", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.Parameters != nil {
+ if err := validatePathParametersMap(v.Parameters); err != nil {
+ invalidParams.AddNested("Parameters", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validatePathParametersMap(v map[string]types.DatasetParameter) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "PathParametersMap"}
+ for key := range v {
+ value := v[key]
+ if err := validateDatasetParameter(&value); err != nil {
+ invalidParams.AddNested(fmt.Sprintf("[%q]", key), err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateRecipeAction(v *types.RecipeAction) error {
if v == nil {
return nil
@@ -1091,6 +1237,11 @@ func validateOpCreateDatasetInput(v *CreateDatasetInput) error {
invalidParams.AddNested("Input", err.(smithy.InvalidParamsError))
}
}
+ if v.PathOptions != nil {
+ if err := validatePathOptions(v.PathOptions); err != nil {
+ invalidParams.AddNested("PathOptions", err.(smithy.InvalidParamsError))
+ }
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
@@ -1580,6 +1731,11 @@ func validateOpUpdateDatasetInput(v *UpdateDatasetInput) error {
invalidParams.AddNested("Input", err.(smithy.InvalidParamsError))
}
}
+ if v.PathOptions != nil {
+ if err := validatePathOptions(v.PathOptions); err != nil {
+ invalidParams.AddNested("PathOptions", err.(smithy.InvalidParamsError))
+ }
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
diff --git a/service/dataexchange/go.mod b/service/dataexchange/go.mod
index 15861f22c5a..aaf30438b8d 100644
--- a/service/dataexchange/go.mod
+++ b/service/dataexchange/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/dataexchange/go.sum b/service/dataexchange/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/dataexchange/go.sum
+++ b/service/dataexchange/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/datapipeline/api_op_ActivatePipeline.go b/service/datapipeline/api_op_ActivatePipeline.go
index c8508eae959..e837a2dc339 100644
--- a/service/datapipeline/api_op_ActivatePipeline.go
+++ b/service/datapipeline/api_op_ActivatePipeline.go
@@ -16,9 +16,13 @@ import (
// pipeline does not pass validation, activation fails. If you need to pause the
// pipeline to investigate an issue with a component, such as a data source or
// script, call DeactivatePipeline. To activate a finished pipeline, modify the end
-// date for the pipeline and then activate it. If you activate an on-demand
-// pipeline that is already running, it will cancel all running objects and re-run
-// the pipeline. StartTimestamp does not apply to on-demand pipelines.
+// date for the pipeline and then activate it. POST / HTTP/1.1 Content-Type:
+// application/x-amz-json-1.1 X-Amz-Target: DataPipeline.ActivatePipeline
+// Content-Length: 39 Host: datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon,
+// 12 Nov 2012 17:49:52 GMT Authorization: AuthParams {"pipelineId":
+// "df-06372391ZG65EXAMPLE"} HTTP/1.1 200 x-amzn-RequestId:
+// ee19d5bf-074e-11e2-af6f-6bc7a6be60d9 Content-Type: application/x-amz-json-1.1
+// Content-Length: 2 Date: Mon, 12 Nov 2012 17:50:53 GMT {}
func (c *Client) ActivatePipeline(ctx context.Context, params *ActivatePipelineInput, optFns ...func(*Options)) (*ActivatePipelineOutput, error) {
if params == nil {
params = &ActivatePipelineInput{}
diff --git a/service/datapipeline/api_op_CreatePipeline.go b/service/datapipeline/api_op_CreatePipeline.go
index 148e89e3881..2eea828df6a 100644
--- a/service/datapipeline/api_op_CreatePipeline.go
+++ b/service/datapipeline/api_op_CreatePipeline.go
@@ -12,7 +12,14 @@ import (
)
// Creates a new, empty pipeline. Use PutPipelineDefinition to populate the
-// pipeline.
+// pipeline. POST / HTTP/1.1 Content-Type: application/x-amz-json-1.1 X-Amz-Target:
+// DataPipeline.CreatePipeline Content-Length: 91 Host:
+// datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT
+// Authorization: AuthParams {"name": "myPipeline", "uniqueId": "123456789",
+// "description": "This is my first pipeline"} HTTP/1.1 200 x-amzn-RequestId:
+// b16911ce-0774-11e2-af6f-6bc7a6be60d9 Content-Type: application/x-amz-json-1.1
+// Content-Length: 40 Date: Mon, 12 Nov 2012 17:50:53 GMT {"pipelineId":
+// "df-06372391ZG65EXAMPLE"}
func (c *Client) CreatePipeline(ctx context.Context, params *CreatePipelineInput, optFns ...func(*Options)) (*CreatePipelineOutput, error) {
if params == nil {
params = &CreatePipelineInput{}
@@ -59,7 +66,7 @@ type CreatePipelineInput struct {
// A list of tags to associate with the pipeline at creation. Tags let you control
// access to pipelines. For more information, see Controlling User Access to
// Pipelines
- // (https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html)
+ // (http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html)
// in the AWS Data Pipeline Developer Guide.
Tags []types.Tag
}
diff --git a/service/datapipeline/api_op_DeletePipeline.go b/service/datapipeline/api_op_DeletePipeline.go
index f31c65d879a..604957f67fa 100644
--- a/service/datapipeline/api_op_DeletePipeline.go
+++ b/service/datapipeline/api_op_DeletePipeline.go
@@ -16,6 +16,13 @@ import (
// You cannot query or restore a deleted pipeline. To temporarily pause a pipeline
// instead of deleting it, call SetStatus with the status set to PAUSE on
// individual components. Components that are paused by SetStatus can be resumed.
+// POST / HTTP/1.1 Content-Type: application/x-amz-json-1.1 X-Amz-Target:
+// DataPipeline.DeletePipeline Content-Length: 50 Host:
+// datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT
+// Authorization: AuthParams {"pipelineId": "df-06372391ZG65EXAMPLE"}
+// x-amzn-RequestId: b7a88c81-0754-11e2-af6f-6bc7a6be60d9 Content-Type:
+// application/x-amz-json-1.1 Content-Length: 0 Date: Mon, 12 Nov 2012 17:50:53 GMT
+// Unexpected response: 200, OK, undefined
func (c *Client) DeletePipeline(ctx context.Context, params *DeletePipelineInput, optFns ...func(*Options)) (*DeletePipelineOutput, error) {
if params == nil {
params = &DeletePipelineInput{}
diff --git a/service/datapipeline/api_op_DescribeObjects.go b/service/datapipeline/api_op_DescribeObjects.go
index bfef2d2e8c2..f4c86fadfb9 100644
--- a/service/datapipeline/api_op_DescribeObjects.go
+++ b/service/datapipeline/api_op_DescribeObjects.go
@@ -14,7 +14,21 @@ import (
// Gets the object definitions for a set of objects associated with the pipeline.
// Object definitions are composed of a set of fields that define the properties of
-// the object.
+// the object. POST / HTTP/1.1 Content-Type: application/x-amz-json-1.1
+// X-Amz-Target: DataPipeline.DescribeObjects Content-Length: 98 Host:
+// datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT
+// Authorization: AuthParams {"pipelineId": "df-06372391ZG65EXAMPLE", "objectIds":
+// ["Schedule"], "evaluateExpressions": true} x-amzn-RequestId:
+// 4c18ea5d-0777-11e2-8a14-21bb8a1f50ef Content-Type: application/x-amz-json-1.1
+// Content-Length: 1488 Date: Mon, 12 Nov 2012 17:50:53 GMT {"hasMoreResults":
+// false, "pipelineObjects": [ {"fields": [ {"key": "startDateTime", "stringValue":
+// "2012-12-12T00:00:00"}, {"key": "parent", "refValue": "Default"}, {"key":
+// "@sphere", "stringValue": "COMPONENT"}, {"key": "type", "stringValue":
+// "Schedule"}, {"key": "period", "stringValue": "1 hour"}, {"key": "endDateTime",
+// "stringValue": "2012-12-21T18:00:00"}, {"key": "@version", "stringValue": "1"},
+// {"key": "@status", "stringValue": "PENDING"}, {"key": "@pipelineId",
+// "stringValue": "df-06372391ZG65EXAMPLE"} ], "id": "Schedule", "name":
+// "Schedule"} ] }
func (c *Client) DescribeObjects(ctx context.Context, params *DescribeObjectsInput, optFns ...func(*Options)) (*DescribeObjectsOutput, error) {
if params == nil {
params = &DescribeObjectsInput{}
diff --git a/service/datapipeline/api_op_DescribePipelines.go b/service/datapipeline/api_op_DescribePipelines.go
index 4502277377e..4ebc8aa3cd8 100644
--- a/service/datapipeline/api_op_DescribePipelines.go
+++ b/service/datapipeline/api_op_DescribePipelines.go
@@ -18,6 +18,22 @@ import (
// you are using an IAM user account, you can retrieve metadata about only those
// pipelines for which you have read permissions. To retrieve the full pipeline
// definition instead of metadata about the pipeline, call GetPipelineDefinition.
+// POST / HTTP/1.1 Content-Type: application/x-amz-json-1.1 X-Amz-Target:
+// DataPipeline.DescribePipelines Content-Length: 70 Host:
+// datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT
+// Authorization: AuthParams {"pipelineIds": ["df-08785951KAKJEXAMPLE"] }
+// x-amzn-RequestId: 02870eb7-0736-11e2-af6f-6bc7a6be60d9 Content-Type:
+// application/x-amz-json-1.1 Content-Length: 767 Date: Mon, 12 Nov 2012 17:50:53
+// GMT {"pipelineDescriptionList": [ {"description": "This is my first pipeline",
+// "fields": [ {"key": "@pipelineState", "stringValue": "SCHEDULED"}, {"key":
+// "description", "stringValue": "This is my first pipeline"}, {"key": "name",
+// "stringValue": "myPipeline"}, {"key": "@creationTime", "stringValue":
+// "2012-12-13T01:24:06"}, {"key": "@id", "stringValue": "df-0937003356ZJEXAMPLE"},
+// {"key": "@sphere", "stringValue": "PIPELINE"}, {"key": "@version",
+// "stringValue": "1"}, {"key": "@userId", "stringValue": "924374875933"}, {"key":
+// "@accountId", "stringValue": "924374875933"}, {"key": "uniqueId", "stringValue":
+// "1234567890"} ], "name": "myPipeline", "pipelineId": "df-0937003356ZJEXAMPLE"} ]
+// }
func (c *Client) DescribePipelines(ctx context.Context, params *DescribePipelinesInput, optFns ...func(*Options)) (*DescribePipelinesOutput, error) {
if params == nil {
params = &DescribePipelinesInput{}
diff --git a/service/datapipeline/api_op_EvaluateExpression.go b/service/datapipeline/api_op_EvaluateExpression.go
index d875d6be53a..350f2caf404 100644
--- a/service/datapipeline/api_op_EvaluateExpression.go
+++ b/service/datapipeline/api_op_EvaluateExpression.go
@@ -12,7 +12,15 @@ import (
// Task runners call EvaluateExpression to evaluate a string in the context of the
// specified object. For example, a task runner can evaluate SQL queries stored in
-// Amazon S3.
+// Amazon S3. POST / HTTP/1.1 Content-Type: application/x-amz-json-1.1
+// X-Amz-Target: DataPipeline.DescribePipelines Content-Length: 164 Host:
+// datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT
+// Authorization: AuthParams {"pipelineId": "df-08785951KAKJEXAMPLE", "objectId":
+// "Schedule", "expression": "Transform started at #{startDateTime} and finished at
+// #{endDateTime}"} x-amzn-RequestId: 02870eb7-0736-11e2-af6f-6bc7a6be60d9
+// Content-Type: application/x-amz-json-1.1 Content-Length: 103 Date: Mon, 12 Nov
+// 2012 17:50:53 GMT {"evaluatedExpression": "Transform started at
+// 2012-12-12T00:00:00 and finished at 2012-12-21T18:00:00"}
func (c *Client) EvaluateExpression(ctx context.Context, params *EvaluateExpressionInput, optFns ...func(*Options)) (*EvaluateExpressionOutput, error) {
if params == nil {
params = &EvaluateExpressionInput{}
diff --git a/service/datapipeline/api_op_GetPipelineDefinition.go b/service/datapipeline/api_op_GetPipelineDefinition.go
index cd42f19ca15..6952d0e7c33 100644
--- a/service/datapipeline/api_op_GetPipelineDefinition.go
+++ b/service/datapipeline/api_op_GetPipelineDefinition.go
@@ -13,7 +13,21 @@ import (
// Gets the definition of the specified pipeline. You can call
// GetPipelineDefinition to retrieve the pipeline definition that you provided
-// using PutPipelineDefinition.
+// using PutPipelineDefinition. POST / HTTP/1.1 Content-Type:
+// application/x-amz-json-1.1 X-Amz-Target: DataPipeline.GetPipelineDefinition
+// Content-Length: 40 Host: datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon,
+// 12 Nov 2012 17:49:52 GMT Authorization: AuthParams {"pipelineId":
+// "df-06372391ZG65EXAMPLE"} x-amzn-RequestId: e28309e5-0776-11e2-8a14-21bb8a1f50ef
+// Content-Type: application/x-amz-json-1.1 Content-Length: 890 Date: Mon, 12 Nov
+// 2012 17:50:53 GMT {"pipelineObjects": [ {"fields": [ {"key": "workerGroup",
+// "stringValue": "workerGroup"} ], "id": "Default", "name": "Default"}, {"fields":
+// [ {"key": "startDateTime", "stringValue": "2012-09-25T17:00:00"}, {"key":
+// "type", "stringValue": "Schedule"}, {"key": "period", "stringValue": "1 hour"},
+// {"key": "endDateTime", "stringValue": "2012-09-25T18:00:00"} ], "id":
+// "Schedule", "name": "Schedule"}, {"fields": [ {"key": "schedule", "refValue":
+// "Schedule"}, {"key": "command", "stringValue": "echo hello"}, {"key": "parent",
+// "refValue": "Default"}, {"key": "type", "stringValue": "ShellCommandActivity"}
+// ], "id": "SayHello", "name": "SayHello"} ] }
func (c *Client) GetPipelineDefinition(ctx context.Context, params *GetPipelineDefinitionInput, optFns ...func(*Options)) (*GetPipelineDefinitionOutput, error) {
if params == nil {
params = &GetPipelineDefinitionInput{}
diff --git a/service/datapipeline/api_op_ListPipelines.go b/service/datapipeline/api_op_ListPipelines.go
index edb2ccac177..768a2c85812 100644
--- a/service/datapipeline/api_op_ListPipelines.go
+++ b/service/datapipeline/api_op_ListPipelines.go
@@ -13,7 +13,14 @@ import (
)
// Lists the pipeline identifiers for all active pipelines that you have permission
-// to access.
+// to access. POST / HTTP/1.1 Content-Type: application/x-amz-json-1.1
+// X-Amz-Target: DataPipeline.ListPipelines Content-Length: 14 Host:
+// datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT
+// Authorization: AuthParams {} Status: x-amzn-RequestId:
+// b3104dc5-0734-11e2-af6f-6bc7a6be60d9 Content-Type: application/x-amz-json-1.1
+// Content-Length: 39 Date: Mon, 12 Nov 2012 17:50:53 GMT {"PipelineIdList": [
+// {"id": "df-08785951KAKJEXAMPLE", "name": "MyPipeline"}, {"id":
+// "df-08662578ISYEXAMPLE", "name": "MySecondPipeline"} ] }
func (c *Client) ListPipelines(ctx context.Context, params *ListPipelinesInput, optFns ...func(*Options)) (*ListPipelinesOutput, error) {
if params == nil {
params = &ListPipelinesInput{}
diff --git a/service/datapipeline/api_op_PollForTask.go b/service/datapipeline/api_op_PollForTask.go
index 13ffeb7516d..04eae7b29e9 100644
--- a/service/datapipeline/api_op_PollForTask.go
+++ b/service/datapipeline/api_op_PollForTask.go
@@ -22,7 +22,32 @@ import (
// newly scheduled task is handed to the task runner. To accomodate this, set the
// socket timeout in your task runner to 90 seconds. The task runner should not
// call PollForTask again on the same workerGroup until it receives a response, and
-// this can take up to 90 seconds.
+// this can take up to 90 seconds. POST / HTTP/1.1 Content-Type:
+// application/x-amz-json-1.1 X-Amz-Target: DataPipeline.PollForTask
+// Content-Length: 59 Host: datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon,
+// 12 Nov 2012 17:49:52 GMT Authorization: AuthParams {"workerGroup":
+// "MyworkerGroup", "hostname": "example.com"} x-amzn-RequestId:
+// 41c713d2-0775-11e2-af6f-6bc7a6be60d9 Content-Type: application/x-amz-json-1.1
+// Content-Length: 39 Date: Mon, 12 Nov 2012 17:50:53 GMT {"taskObject":
+// {"attemptId": "@SayHello_2012-12-12T00:00:00_Attempt=1", "objects":
+// {"@SayHello_2012-12-12T00:00:00_Attempt=1": {"fields": [ {"key":
+// "@componentParent", "refValue": "SayHello"}, {"key": "@scheduledStartTime",
+// "stringValue": "2012-12-12T00:00:00"}, {"key": "parent", "refValue":
+// "SayHello"}, {"key": "@sphere", "stringValue": "ATTEMPT"}, {"key":
+// "workerGroup", "stringValue": "workerGroup"}, {"key": "@instanceParent",
+// "refValue": "@SayHello_2012-12-12T00:00:00"}, {"key": "type", "stringValue":
+// "ShellCommandActivity"}, {"key": "@status", "stringValue":
+// "WAITING_FOR_RUNNER"}, {"key": "@version", "stringValue": "1"}, {"key":
+// "schedule", "refValue": "Schedule"}, {"key": "@actualStartTime", "stringValue":
+// "2012-12-13T01:40:50"}, {"key": "command", "stringValue": "echo hello"}, {"key":
+// "@scheduledEndTime", "stringValue": "2012-12-12T01:00:00"}, {"key":
+// "@activeInstances", "refValue": "@SayHello_2012-12-12T00:00:00"}, {"key":
+// "@pipelineId", "stringValue": "df-0937003356ZJEXAMPLE"} ], "id":
+// "@SayHello_2012-12-12T00:00:00_Attempt=1", "name":
+// "@SayHello_2012-12-12T00:00:00_Attempt=1"} }, "pipelineId":
+// "df-0937003356ZJEXAMPLE", "taskId":
+// "2xaM4wRs5zOsIH+g9U3oVHfAgAlbSqU6XduncB0HhZ3xMnmvfePZPn4dIbYXHyWyRK+cU15MqDHwdrvftx/4wv+sNS4w34vJfv7QA9aOoOazW28l1GYSb2ZRR0N0paiQp+d1MhSKo10hOTWOsVK5S5Lnx9Qm6omFgXHyIvZRIvTlrQMpr1xuUrflyGOfbFOGpOLpvPE172MYdqpZKnbSS4TcuqgQKSWV2833fEubI57DPOP7ghWa2TcYeSIv4pdLYG53fTuwfbnbdc98g2LNUQzSVhSnt7BoqyNwht2aQ6b/UHg9A80+KVpuXuqmz3m1MXwHFgxjdmuesXNOrrlGpeLCcRWD+aGo0RN1NqhQRzNAig8V4GlaPTQzMsRCljKqvrIyAoP3Tt2XEGsHkkQo12rEX8Z90957XX2qKRwhruwYzqGkSLWjINoLdAxUJdpRXRc5DJTrBd3D5mdzn7kY1l7NEh4kFHJDt3Cx4Z3Mk8MYCACyCk/CEyy9DwuPi66cLz0NBcgbCM5LKjTBOwo1m+am+pvM1kSposE9FPP1+RFGb8k6jQBTJx3TRz1yKilnGXQTZ5xvdOFpJrklIT0OXP1MG3+auM9FlJA+1dX90QoNJE5z7axmK//MOGXUdkqFe2kiDkorqjxwDvc0Js9pVKfKvAmW8YqUbmI9l0ERpWCXXnLVHNmPWz3jaPY+OBAmuJWDmxB/Z8p94aEDg4BVXQ7LvsKQ3DLYhaB7yJ390CJT+i0mm+EBqY60V6YikPSWDFrYQ/NPi2b1DgE19mX8zHqw8qprIl4yh1Ckx2Iige4En/N5ktOoIxnASxAw/TzcE2skxdw5KlHDF+UTj71m16CR/dIaKlXijlfNlNzUBo/bNSadCQn3G5NoO501wPKI:XO50TgDNyo8EXAMPLE/g==:1"}
+// }
func (c *Client) PollForTask(ctx context.Context, params *PollForTaskInput, optFns ...func(*Options)) (*PollForTaskOutput, error) {
if params == nil {
params = &PollForTaskInput{}
@@ -57,7 +82,7 @@ type PollForTaskInput struct {
// can get this value from the instance using
// http://169.254.169.254/latest/meta-data/instance-id. For more information, see
// Instance Metadata
- // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AESDG-chapter-instancedata.html)
+ // (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AESDG-chapter-instancedata.html)
// in the Amazon Elastic Compute Cloud User Guide. Passing in this value proves
// that your task runner is running on an EC2 instance, and ensures the proper AWS
// Data Pipeline service charges are applied to your pipeline.
diff --git a/service/datapipeline/api_op_PutPipelineDefinition.go b/service/datapipeline/api_op_PutPipelineDefinition.go
index c4319abcabc..b276b8561a9 100644
--- a/service/datapipeline/api_op_PutPipelineDefinition.go
+++ b/service/datapipeline/api_op_PutPipelineDefinition.go
@@ -14,8 +14,8 @@ import (
// Adds tasks, schedules, and preconditions to the specified pipeline. You can use
// PutPipelineDefinition to populate a new pipeline. PutPipelineDefinition also
// validates the configuration as it adds it to the pipeline. Changes to the
-// pipeline are saved unless one of the following validation errors exist in the
-// pipeline.
+// pipeline are saved unless one of the following three validation errors exists in
+// the pipeline.
//
// * An object is missing a name or identifier field.
//
@@ -23,13 +23,49 @@ import (
// reference field is empty.
//
// * The number of objects in the pipeline exceeds the
-// allowed maximum number of objects.
+// maximum allowed objects.
//
-// * The pipeline is in a FINISHED
-// state.
+// * The pipeline is in a FINISHED state.
//
-// Pipeline object definitions are passed to the PutPipelineDefinition
-// action and returned by the GetPipelineDefinition action.
+// Pipeline
+// object definitions are passed to the PutPipelineDefinition action and returned
+// by the GetPipelineDefinition action. Example 1 This example sets an valid
+// pipeline configuration and returns success. POST / HTTP/1.1 Content-Type:
+// application/x-amz-json-1.1 X-Amz-Target: DataPipeline.PutPipelineDefinition
+// Content-Length: 914 Host: datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon,
+// 12 Nov 2012 17:49:52 GMT Authorization: AuthParams {"pipelineId":
+// "df-0937003356ZJEXAMPLE", "pipelineObjects": [ {"id": "Default", "name":
+// "Default", "fields": [ {"key": "workerGroup", "stringValue": "workerGroup"} ] },
+// {"id": "Schedule", "name": "Schedule", "fields": [ {"key": "startDateTime",
+// "stringValue": "2012-12-12T00:00:00"}, {"key": "type", "stringValue":
+// "Schedule"}, {"key": "period", "stringValue": "1 hour"}, {"key": "endDateTime",
+// "stringValue": "2012-12-21T18:00:00"} ] }, {"id": "SayHello", "name":
+// "SayHello", "fields": [ {"key": "type", "stringValue": "ShellCommandActivity"},
+// {"key": "command", "stringValue": "echo hello"}, {"key": "parent", "refValue":
+// "Default"}, {"key": "schedule", "refValue": "Schedule"} ] } ] } HTTP/1.1 200
+// x-amzn-RequestId: f74afc14-0754-11e2-af6f-6bc7a6be60d9 Content-Type:
+// application/x-amz-json-1.1 Content-Length: 18 Date: Mon, 12 Nov 2012 17:50:53
+// GMT {"errored": false} Example 2 This example sets an invalid pipeline
+// configuration (the value for workerGroup is an empty string) and returns an
+// error message. POST / HTTP/1.1 Content-Type: application/x-amz-json-1.1
+// X-Amz-Target: DataPipeline.PutPipelineDefinition Content-Length: 903 Host:
+// datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT
+// Authorization: AuthParams {"pipelineId": "df-06372391ZG65EXAMPLE",
+// "pipelineObjects": [ {"id": "Default", "name": "Default", "fields": [ {"key":
+// "workerGroup", "stringValue": ""} ] }, {"id": "Schedule", "name": "Schedule",
+// "fields": [ {"key": "startDateTime", "stringValue": "2012-09-25T17:00:00"},
+// {"key": "type", "stringValue": "Schedule"}, {"key": "period", "stringValue": "1
+// hour"}, {"key": "endDateTime", "stringValue": "2012-09-25T18:00:00"} ] }, {"id":
+// "SayHello", "name": "SayHello", "fields": [ {"key": "type", "stringValue":
+// "ShellCommandActivity"}, {"key": "command", "stringValue": "echo hello"},
+// {"key": "parent", "refValue": "Default"}, {"key": "schedule", "refValue":
+// "Schedule"} ] } ] } HTTP/1.1 200 x-amzn-RequestId:
+// f74afc14-0754-11e2-af6f-6bc7a6be60d9 Content-Type: application/x-amz-json-1.1
+// Content-Length: 18 Date: Mon, 12 Nov 2012 17:50:53 GMT {"__type":
+// "com.amazon.setl.webservice#InvalidRequestException", "message": "Pipeline
+// definition has errors: Could not save the pipeline definition due to FATAL
+// errors: [com.amazon.setl.webservice.ValidationError@108d7ea9] Please call
+// Validate to validate your pipeline"}
func (c *Client) PutPipelineDefinition(ctx context.Context, params *PutPipelineDefinitionInput, optFns ...func(*Options)) (*PutPipelineDefinitionOutput, error) {
if params == nil {
params = &PutPipelineDefinitionInput{}
diff --git a/service/datapipeline/api_op_QueryObjects.go b/service/datapipeline/api_op_QueryObjects.go
index aaeda279be0..719c3a5403d 100644
--- a/service/datapipeline/api_op_QueryObjects.go
+++ b/service/datapipeline/api_op_QueryObjects.go
@@ -13,7 +13,14 @@ import (
)
// Queries the specified pipeline for the names of objects that match the specified
-// set of conditions.
+// set of conditions. POST / HTTP/1.1 Content-Type: application/x-amz-json-1.1
+// X-Amz-Target: DataPipeline.QueryObjects Content-Length: 123 Host:
+// datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT
+// Authorization: AuthParams {"pipelineId": "df-06372391ZG65EXAMPLE", "query":
+// {"selectors": [ ] }, "sphere": "INSTANCE", "marker": "", "limit": 10}
+// x-amzn-RequestId: 14d704c1-0775-11e2-af6f-6bc7a6be60d9 Content-Type:
+// application/x-amz-json-1.1 Content-Length: 72 Date: Mon, 12 Nov 2012 17:50:53
+// GMT {"hasMoreResults": false, "ids": ["@SayHello_1_2012-09-25T17:00:00"] }
func (c *Client) QueryObjects(ctx context.Context, params *QueryObjectsInput, optFns ...func(*Options)) (*QueryObjectsOutput, error) {
if params == nil {
params = &QueryObjectsInput{}
diff --git a/service/datapipeline/api_op_ReportTaskProgress.go b/service/datapipeline/api_op_ReportTaskProgress.go
index 9efee9dcba8..536a566e808 100644
--- a/service/datapipeline/api_op_ReportTaskProgress.go
+++ b/service/datapipeline/api_op_ReportTaskProgress.go
@@ -17,7 +17,18 @@ import (
// initial acknowledgement, the task runner only needs to report progress every 15
// minutes to maintain its ownership of the task. You can change this reporting
// time from 15 minutes by specifying a reportProgressTimeout field in your
-// pipeline.
+// pipeline. If a task runner does not report its status after 5 minutes, AWS Data
+// Pipeline assumes that the task runner is unable to process the task and
+// reassigns the task in a subsequent response to PollForTask. Task runners should
+// call ReportTaskProgress every 60 seconds. POST / HTTP/1.1 Content-Type:
+// application/x-amz-json-1.1 X-Amz-Target: DataPipeline.ReportTaskProgress
+// Content-Length: 832 Host: datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon,
+// 12 Nov 2012 17:49:52 GMT Authorization: AuthParams {"taskId":
+// "aaGgHT4LuH0T0Y0oLrJRjas5qH0d8cDPADxqq3tn+zCWGELkCdV2JprLreXm1oxeP5EFZHFLJ69kjSsLYE0iYHYBYVGBrB+E/pYq7ANEEeGJFnSBMRiXZVA+8UJ3OzcInvXeinqBmBaKwii7hnnKb/AXjXiNTXyxgydX1KAyg1AxkwBYG4cfPYMZbuEbQJFJvv5C/2+GVXz1w94nKYTeUeepwUOFOuRLS6JVtZoYwpF56E+Yfk1IcGpFOvCZ01B4Bkuu7x3J+MD/j6kJgZLAgbCJQtI3eiW3kdGmX0p0I2BdY1ZsX6b4UiSvM3OMj6NEHJCJL4E0ZfitnhCoe24Kvjo6C2hFbZq+ei/HPgSXBQMSagkr4vS9c0ChzxH2+LNYvec6bY4kymkaZI1dvOzmpa0FcnGf5AjSK4GpsViZ/ujz6zxFv81qBXzjF0/4M1775rjV1VUdyKaixiA/sJiACNezqZqETidp8d24BDPRhGsj6pBCrnelqGFrk/gXEXUsJ+xwMifRC8UVwiKekpAvHUywVk7Ku4jH/n3i2VoLRP6FXwpUbelu34iiZ9czpXyLtyPKwxa87dlrnRVURwkcVjOt2Mcrcaqe+cbWHvNRhyrPkkdfSF3ac8/wfgVbXvLEB2k9mKc67aD9rvdc1PKX09Tk8BKklsMTpZ3TRCd4NzQlJKigMe8Jat9+1tKj4Ole5ZzW6uyTu2s2iFjEV8KXu4MaiRJyNKCdKeGhhZWY37Qk4NBK4Ppgu+C6Y41dpfOh288SLDEVx0/UySlqOEdhba7c6BiPp5r3hKj3mk9lFy5OYp1aoGLeeFmjXveTnPdf2gkWqXXg7AUbJ7jEs1F0lKZQg4szep2gcKyAJXgvXLfJJHcha8Lfb/Ee7wYmyOcAaRpDBoFNSbtoVXar46teIrpho+ZDvynUXvU0grHWGOk=:wn3SgymHZM99bEXAMPLE",
+// "fields": [ {"key": "percentComplete", "stringValue": "50"} ] }
+// x-amzn-RequestId: 640bd023-0775-11e2-af6f-6bc7a6be60d9 Content-Type:
+// application/x-amz-json-1.1 Content-Length: 18 Date: Mon, 12 Nov 2012 17:50:53
+// GMT {"canceled": false}
func (c *Client) ReportTaskProgress(ctx context.Context, params *ReportTaskProgressInput, optFns ...func(*Options)) (*ReportTaskProgressOutput, error) {
if params == nil {
params = &ReportTaskProgressInput{}
diff --git a/service/datapipeline/api_op_ReportTaskRunnerHeartbeat.go b/service/datapipeline/api_op_ReportTaskRunnerHeartbeat.go
index 997c4d39557..05d2571e6b9 100644
--- a/service/datapipeline/api_op_ReportTaskRunnerHeartbeat.go
+++ b/service/datapipeline/api_op_ReportTaskRunnerHeartbeat.go
@@ -14,6 +14,13 @@ import (
// they are operational. If the AWS Data Pipeline Task Runner is launched on a
// resource managed by AWS Data Pipeline, the web service can use this call to
// detect when the task runner application has failed and restart a new instance.
+// POST / HTTP/1.1 Content-Type: application/x-amz-json-1.1 X-Amz-Target:
+// DataPipeline.ReportTaskRunnerHeartbeat Content-Length: 84 Host:
+// datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT
+// Authorization: AuthParams {"taskrunnerId": "1234567890", "workerGroup":
+// "wg-12345", "hostname": "example.com"} Status: x-amzn-RequestId:
+// b3104dc5-0734-11e2-af6f-6bc7a6be60d9 Content-Type: application/x-amz-json-1.1
+// Content-Length: 20 Date: Mon, 12 Nov 2012 17:50:53 GMT {"terminate": false}
func (c *Client) ReportTaskRunnerHeartbeat(ctx context.Context, params *ReportTaskRunnerHeartbeatInput, optFns ...func(*Options)) (*ReportTaskRunnerHeartbeatOutput, error) {
if params == nil {
params = &ReportTaskRunnerHeartbeatInput{}
diff --git a/service/datapipeline/api_op_SetStatus.go b/service/datapipeline/api_op_SetStatus.go
index 0fc6f5f9e79..a47ef0b7e31 100644
--- a/service/datapipeline/api_op_SetStatus.go
+++ b/service/datapipeline/api_op_SetStatus.go
@@ -14,7 +14,15 @@ import (
// be updated in the specified pipeline. This update might not occur immediately,
// but is eventually consistent. The status that can be set depends on the type of
// object (for example, DataNode or Activity). You cannot perform this operation on
-// FINISHED pipelines and attempting to do so returns InvalidRequestException.
+// FINISHED pipelines and attempting to do so returns InvalidRequestException. POST
+// / HTTP/1.1 Content-Type: application/x-amz-json-1.1 X-Amz-Target:
+// DataPipeline.SetStatus Content-Length: 100 Host:
+// datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT
+// Authorization: AuthParams {"pipelineId": "df-0634701J7KEXAMPLE", "objectIds":
+// ["o-08600941GHJWMBR9E2"], "status": "pause"} x-amzn-RequestId:
+// e83b8ab7-076a-11e2-af6f-6bc7a6be60d9 Content-Type: application/x-amz-json-1.1
+// Content-Length: 0 Date: Mon, 12 Nov 2012 17:50:53 GMT Unexpected response: 200,
+// OK, undefined
func (c *Client) SetStatus(ctx context.Context, params *SetStatusInput, optFns ...func(*Options)) (*SetStatusOutput, error) {
if params == nil {
params = &SetStatusInput{}
diff --git a/service/datapipeline/api_op_SetTaskStatus.go b/service/datapipeline/api_op_SetTaskStatus.go
index 45c1ed52caa..cef70ed0821 100644
--- a/service/datapipeline/api_op_SetTaskStatus.go
+++ b/service/datapipeline/api_op_SetTaskStatus.go
@@ -15,7 +15,14 @@ import (
// completed and provide information about the final status. A task runner makes
// this call regardless of whether the task was sucessful. A task runner does not
// need to call SetTaskStatus for tasks that are canceled by the web service during
-// a call to ReportTaskProgress.
+// a call to ReportTaskProgress. POST / HTTP/1.1 Content-Type:
+// application/x-amz-json-1.1 X-Amz-Target: DataPipeline.SetTaskStatus
+// Content-Length: 847 Host: datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon,
+// 12 Nov 2012 17:49:52 GMT Authorization: AuthParams {"taskId":
+// "aaGgHT4LuH0T0Y0oLrJRjas5qH0d8cDPADxqq3tn+zCWGELkCdV2JprLreXm1oxeP5EFZHFLJ69kjSsLYE0iYHYBYVGBrB+E/pYq7ANEEeGJFnSBMRiXZVA+8UJ3OzcInvXeinqBmBaKwii7hnnKb/AXjXiNTXyxgydX1KAyg1AxkwBYG4cfPYMZbuEbQJFJvv5C/2+GVXz1w94nKYTeUeepwUOFOuRLS6JVtZoYwpF56E+Yfk1IcGpFOvCZ01B4Bkuu7x3J+MD/j6kJgZLAgbCJQtI3eiW3kdGmX0p0I2BdY1ZsX6b4UiSvM3OMj6NEHJCJL4E0ZfitnhCoe24Kvjo6C2hFbZq+ei/HPgSXBQMSagkr4vS9c0ChzxH2+LNYvec6bY4kymkaZI1dvOzmpa0FcnGf5AjSK4GpsViZ/ujz6zxFv81qBXzjF0/4M1775rjV1VUdyKaixiA/sJiACNezqZqETidp8d24BDPRhGsj6pBCrnelqGFrk/gXEXUsJ+xwMifRC8UVwiKekpAvHUywVk7Ku4jH/n3i2VoLRP6FXwpUbelu34iiZ9czpXyLtyPKwxa87dlrnRVURwkcVjOt2Mcrcaqe+cbWHvNRhyrPkkdfSF3ac8/wfgVbXvLEB2k9mKc67aD9rvdc1PKX09Tk8BKklsMTpZ3TRCd4NzQlJKigMe8Jat9+1tKj4Ole5ZzW6uyTu2s2iFjEV8KXu4MaiRJyNKCdKeGhhZWY37Qk4NBK4Ppgu+C6Y41dpfOh288SLDEVx0/UySlqOEdhba7c6BiPp5r3hKj3mk9lFy5OYp1aoGLeeFmjXveTnPdf2gkWqXXg7AUbJ7jEs1F0lKZQg4szep2gcKyAJXgvXLfJJHcha8Lfb/Ee7wYmyOcAaRpDBoFNSbtoVXar46teIrpho+ZDvynUXvU0grHWGOk=:wn3SgymHZM99bEXAMPLE",
+// "taskStatus": "FINISHED"} x-amzn-RequestId: 8c8deb53-0788-11e2-af9c-6bc7a6be6qr8
+// Content-Type: application/x-amz-json-1.1 Content-Length: 0 Date: Mon, 12 Nov
+// 2012 17:50:53 GMT {}
func (c *Client) SetTaskStatus(ctx context.Context, params *SetTaskStatusInput, optFns ...func(*Options)) (*SetTaskStatusOutput, error) {
if params == nil {
params = &SetTaskStatusInput{}
diff --git a/service/datapipeline/api_op_ValidatePipelineDefinition.go b/service/datapipeline/api_op_ValidatePipelineDefinition.go
index aa1384c1f3b..6b0ca81cd89 100644
--- a/service/datapipeline/api_op_ValidatePipelineDefinition.go
+++ b/service/datapipeline/api_op_ValidatePipelineDefinition.go
@@ -12,7 +12,41 @@ import (
)
// Validates the specified pipeline definition to ensure that it is well formed and
-// can be run without error.
+// can be run without error. Example 1 This example sets an valid pipeline
+// configuration and returns success. POST / HTTP/1.1 Content-Type:
+// application/x-amz-json-1.1 X-Amz-Target: DataPipeline.ValidatePipelineDefinition
+// Content-Length: 936 Host: datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon,
+// 12 Nov 2012 17:49:52 GMT Authorization: AuthParams {"pipelineId":
+// "df-06372391ZG65EXAMPLE", "pipelineObjects": [ {"id": "Default", "name":
+// "Default", "fields": [ {"key": "workerGroup", "stringValue": "MyworkerGroup"} ]
+// }, {"id": "Schedule", "name": "Schedule", "fields": [ {"key": "startDateTime",
+// "stringValue": "2012-09-25T17:00:00"}, {"key": "type", "stringValue":
+// "Schedule"}, {"key": "period", "stringValue": "1 hour"}, {"key": "endDateTime",
+// "stringValue": "2012-09-25T18:00:00"} ] }, {"id": "SayHello", "name":
+// "SayHello", "fields": [ {"key": "type", "stringValue": "ShellCommandActivity"},
+// {"key": "command", "stringValue": "echo hello"}, {"key": "parent", "refValue":
+// "Default"}, {"key": "schedule", "refValue": "Schedule"} ] } ] }
+// x-amzn-RequestId: 92c9f347-0776-11e2-8a14-21bb8a1f50ef Content-Type:
+// application/x-amz-json-1.1 Content-Length: 18 Date: Mon, 12 Nov 2012 17:50:53
+// GMT {"errored": false} Example 2 This example sets an invalid pipeline
+// configuration and returns the associated set of validation errors. POST /
+// HTTP/1.1 Content-Type: application/x-amz-json-1.1 X-Amz-Target:
+// DataPipeline.ValidatePipelineDefinition Content-Length: 903 Host:
+// datapipeline.us-east-1.amazonaws.com X-Amz-Date: Mon, 12 Nov 2012 17:49:52 GMT
+// Authorization: AuthParams {"pipelineId": "df-06372391ZG65EXAMPLE",
+// "pipelineObjects": [ {"id": "Default", "name": "Default", "fields": [ {"key":
+// "workerGroup", "stringValue": "MyworkerGroup"} ] }, {"id": "Schedule", "name":
+// "Schedule", "fields": [ {"key": "startDateTime", "stringValue": "bad-time"},
+// {"key": "type", "stringValue": "Schedule"}, {"key": "period", "stringValue": "1
+// hour"}, {"key": "endDateTime", "stringValue": "2012-09-25T18:00:00"} ] }, {"id":
+// "SayHello", "name": "SayHello", "fields": [ {"key": "type", "stringValue":
+// "ShellCommandActivity"}, {"key": "command", "stringValue": "echo hello"},
+// {"key": "parent", "refValue": "Default"}, {"key": "schedule", "refValue":
+// "Schedule"} ] } ] } x-amzn-RequestId: 496a1f5a-0e6a-11e2-a61c-bd6312c92ddd
+// Content-Type: application/x-amz-json-1.1 Content-Length: 278 Date: Mon, 12 Nov
+// 2012 17:50:53 GMT {"errored": true, "validationErrors": [ {"errors":
+// ["INVALID_FIELD_VALUE: 'startDateTime' value must be a literal datetime
+// value."], "id": "Schedule"} ] }
func (c *Client) ValidatePipelineDefinition(ctx context.Context, params *ValidatePipelineDefinitionInput, optFns ...func(*Options)) (*ValidatePipelineDefinitionOutput, error) {
if params == nil {
params = &ValidatePipelineDefinitionInput{}
diff --git a/service/datapipeline/go.mod b/service/datapipeline/go.mod
index 1173d0c0048..329ffe34665 100644
--- a/service/datapipeline/go.mod
+++ b/service/datapipeline/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/datapipeline/go.sum b/service/datapipeline/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/datapipeline/go.sum
+++ b/service/datapipeline/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/datapipeline/types/types.go b/service/datapipeline/types/types.go
index e90dfd2afad..ee77d542dec 100644
--- a/service/datapipeline/types/types.go
+++ b/service/datapipeline/types/types.go
@@ -22,7 +22,7 @@ type Field struct {
// Identity information for the EC2 instance that is hosting the task runner. You
// can get this value by calling a metadata URI from the EC2 instance. For more
// information, see Instance Metadata
-// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AESDG-chapter-instancedata.html)
+// (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AESDG-chapter-instancedata.html)
// in the Amazon Elastic Compute Cloud User Guide. Passing in this value proves
// that your task runner is running on an EC2 instance, and ensures the proper AWS
// Data Pipeline service charges are applied to your pipeline.
@@ -162,7 +162,7 @@ type PipelineDescription struct {
// A list of tags to associated with a pipeline. Tags let you control access to
// pipelines. For more information, see Controlling User Access to Pipelines
- // (https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html)
+ // (http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html)
// in the AWS Data Pipeline Developer Guide.
Tags []Tag
}
@@ -207,7 +207,7 @@ type Query struct {
Selectors []Selector
}
-// A comparison that is used to determine whether a query should return this
+// A comparision that is used to determine whether a query should return this
// object.
type Selector struct {
@@ -225,13 +225,13 @@ type Selector struct {
// Tags are key/value pairs defined by a user and associated with a pipeline to
// control access. AWS Data Pipeline allows you to associate ten tags per pipeline.
// For more information, see Controlling User Access to Pipelines
-// (https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html)
+// (http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html)
// in the AWS Data Pipeline Developer Guide.
type Tag struct {
// The key name of a tag defined by a user. For more information, see Controlling
// User Access to Pipelines
- // (https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html)
+ // (http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html)
// in the AWS Data Pipeline Developer Guide.
//
// This member is required.
@@ -239,7 +239,7 @@ type Tag struct {
// The optional value portion of a tag defined by a user. For more information, see
// Controlling User Access to Pipelines
- // (https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html)
+ // (http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html)
// in the AWS Data Pipeline Developer Guide.
//
// This member is required.
diff --git a/service/datasync/go.mod b/service/datasync/go.mod
index ceb6be40815..f78ae37298e 100644
--- a/service/datasync/go.mod
+++ b/service/datasync/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/datasync/go.sum b/service/datasync/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/datasync/go.sum
+++ b/service/datasync/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/dax/go.mod b/service/dax/go.mod
index ea61393688c..17bf44fed7b 100644
--- a/service/dax/go.mod
+++ b/service/dax/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/dax/go.sum b/service/dax/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/dax/go.sum
+++ b/service/dax/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/detective/api_op_CreateGraph.go b/service/detective/api_op_CreateGraph.go
index c30fa801f5b..a2ad1e4afe3 100644
--- a/service/detective/api_op_CreateGraph.go
+++ b/service/detective/api_op_CreateGraph.go
@@ -40,6 +40,10 @@ func (c *Client) CreateGraph(ctx context.Context, params *CreateGraphInput, optF
}
type CreateGraphInput struct {
+
+ // The tags to assign to the new behavior graph. For each tag, you provide the tag
+ // key and the tag value.
+ Tags map[string]string
}
type CreateGraphOutput struct {
diff --git a/service/detective/api_op_ListTagsForResource.go b/service/detective/api_op_ListTagsForResource.go
new file mode 100644
index 00000000000..6e52f66c2c0
--- /dev/null
+++ b/service/detective/api_op_ListTagsForResource.go
@@ -0,0 +1,116 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package detective
+
+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"
+)
+
+// Returns the tag values that are assigned to a behavior graph.
+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, addOperationListTagsForResourceMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ListTagsForResourceOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ListTagsForResourceInput struct {
+
+ // The ARN of the behavior graph for which to retrieve the tag values.
+ //
+ // This member is required.
+ ResourceArn *string
+}
+
+type ListTagsForResourceOutput struct {
+
+ // The tag values that are assigned to the behavior graph.
+ Tags map[string]string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func 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: "detective",
+ OperationName: "ListTagsForResource",
+ }
+}
diff --git a/service/detective/api_op_TagResource.go b/service/detective/api_op_TagResource.go
new file mode 100644
index 00000000000..16a03508377
--- /dev/null
+++ b/service/detective/api_op_TagResource.go
@@ -0,0 +1,117 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package detective
+
+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"
+)
+
+// Applies tag values to a behavior graph.
+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, addOperationTagResourceMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*TagResourceOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type TagResourceInput struct {
+
+ // The ARN of the behavior graph to assign the tags to.
+ //
+ // This member is required.
+ ResourceArn *string
+
+ // The tag values to assign to the behavior graph.
+ //
+ // This member is required.
+ Tags map[string]string
+}
+
+type TagResourceOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func 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: "detective",
+ OperationName: "TagResource",
+ }
+}
diff --git a/service/detective/api_op_UntagResource.go b/service/detective/api_op_UntagResource.go
new file mode 100644
index 00000000000..22f63d6df51
--- /dev/null
+++ b/service/detective/api_op_UntagResource.go
@@ -0,0 +1,117 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package detective
+
+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"
+)
+
+// Removes tags from a behavior graph.
+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, addOperationUntagResourceMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*UntagResourceOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type UntagResourceInput struct {
+
+ // The ARN of the behavior graph to remove the tags from.
+ //
+ // This member is required.
+ ResourceArn *string
+
+ // The tag keys of the tags to remove from the behavior graph.
+ //
+ // This member is required.
+ TagKeys []string
+}
+
+type UntagResourceOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func 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: "detective",
+ OperationName: "UntagResource",
+ }
+}
diff --git a/service/detective/deserializers.go b/service/detective/deserializers.go
index 5bba23fe9a2..45a6ff016e0 100644
--- a/service/detective/deserializers.go
+++ b/service/detective/deserializers.go
@@ -1428,6 +1428,159 @@ func awsRestjson1_deserializeOpDocumentListMembersOutput(v **ListMembersOutput,
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("InternalServerException", errorCode):
+ return awsRestjson1_deserializeErrorInternalServerException(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsRestjson1_deserializeErrorResourceNotFoundException(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_deserializeDocumentTagMap(&sv.Tags, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
type awsRestjson1_deserializeOpRejectInvitation struct {
}
@@ -1627,6 +1780,184 @@ func awsRestjson1_deserializeOpErrorStartMonitoringMember(response *smithyhttp.R
}
}
+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("InternalServerException", errorCode):
+ return awsRestjson1_deserializeErrorInternalServerException(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsRestjson1_deserializeErrorResourceNotFoundException(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("InternalServerException", errorCode):
+ return awsRestjson1_deserializeErrorInternalServerException(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
func awsRestjson1_deserializeErrorConflictException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
output := &types.ConflictException{}
var buff [1024]byte
@@ -2270,6 +2601,42 @@ func awsRestjson1_deserializeDocumentServiceQuotaExceededException(v **types.Ser
return nil
}
+func awsRestjson1_deserializeDocumentTagMap(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_deserializeDocumentUnprocessedAccount(v **types.UnprocessedAccount, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
diff --git a/service/detective/go.mod b/service/detective/go.mod
index 8fd793b2810..d289ead3e85 100644
--- a/service/detective/go.mod
+++ b/service/detective/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/detective/go.sum b/service/detective/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/detective/go.sum
+++ b/service/detective/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/detective/internal/endpoints/endpoints.go b/service/detective/internal/endpoints/endpoints.go
index 1545e535aa8..9fbd5ecf372 100644
--- a/service/detective/internal/endpoints/endpoints.go
+++ b/service/detective/internal/endpoints/endpoints.go
@@ -148,5 +148,21 @@ var defaultPartitions = endpoints.Partitions{
},
RegionRegex: partitionRegexp.AwsUsGov,
IsRegionalized: true,
+ Endpoints: endpoints.Endpoints{
+ "us-gov-east-1": endpoints.Endpoint{},
+ "us-gov-east-1-fips": endpoints.Endpoint{
+ Hostname: "api.detective-fips.us-gov-east-1.amazonaws.com",
+ CredentialScope: endpoints.CredentialScope{
+ Region: "us-gov-east-1",
+ },
+ },
+ "us-gov-west-1": endpoints.Endpoint{},
+ "us-gov-west-1-fips": endpoints.Endpoint{
+ Hostname: "api.detective-fips.us-gov-west-1.amazonaws.com",
+ CredentialScope: endpoints.CredentialScope{
+ Region: "us-gov-west-1",
+ },
+ },
+ },
},
}
diff --git a/service/detective/serializers.go b/service/detective/serializers.go
index 5c1e2f435b5..6287f7c6ae2 100644
--- a/service/detective/serializers.go
+++ b/service/detective/serializers.go
@@ -112,6 +112,17 @@ func (m *awsRestjson1_serializeOpCreateGraph) HandleSerialize(ctx context.Contex
return out, metadata, &smithy.SerializationError{Err: err}
}
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentCreateGraphInput(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}
}
@@ -127,6 +138,20 @@ func awsRestjson1_serializeOpHttpBindingsCreateGraphInput(v *CreateGraphInput, e
return nil
}
+func awsRestjson1_serializeOpDocumentCreateGraphInput(v *CreateGraphInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Tags != nil {
+ ok := object.Key("Tags")
+ if err := awsRestjson1_serializeDocumentTagMap(v.Tags, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
type awsRestjson1_serializeOpCreateMembers struct {
}
@@ -722,6 +747,64 @@ func awsRestjson1_serializeOpDocumentListMembersInput(v *ListMembersInput, value
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_serializeOpRejectInvitation struct {
}
@@ -863,6 +946,153 @@ func awsRestjson1_serializeOpDocumentStartMonitoringMemberInput(v *StartMonitori
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_serializeDocumentTagMap(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_serializeDocumentAccount(v *types.Account, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -903,3 +1133,14 @@ func awsRestjson1_serializeDocumentAccountList(v []types.Account, value smithyjs
}
return nil
}
+
+func awsRestjson1_serializeDocumentTagMap(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
+}
diff --git a/service/detective/validators.go b/service/detective/validators.go
index b10f465d2b6..02bbe3e1a8e 100644
--- a/service/detective/validators.go
+++ b/service/detective/validators.go
@@ -150,6 +150,26 @@ func (m *validateOpListMembers) HandleInitialize(ctx context.Context, in middlew
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 validateOpRejectInvitation struct {
}
@@ -190,6 +210,46 @@ func (m *validateOpStartMonitoringMember) 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 addOpAcceptInvitationValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpAcceptInvitation{}, middleware.After)
}
@@ -218,6 +278,10 @@ func addOpListMembersValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpListMembers{}, middleware.After)
}
+func addOpListTagsForResourceValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpListTagsForResource{}, middleware.After)
+}
+
func addOpRejectInvitationValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpRejectInvitation{}, middleware.After)
}
@@ -226,6 +290,14 @@ func addOpStartMonitoringMemberValidationMiddleware(stack *middleware.Stack) err
return stack.Initialize.Add(&validateOpStartMonitoringMember{}, 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 validateAccount(v *types.Account) error {
if v == nil {
return nil
@@ -379,6 +451,21 @@ func validateOpListMembersInput(v *ListMembersInput) 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 validateOpRejectInvitationInput(v *RejectInvitationInput) error {
if v == nil {
return nil
@@ -411,3 +498,39 @@ func validateOpStartMonitoringMemberInput(v *StartMonitoringMemberInput) error {
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/devicefarm/go.mod b/service/devicefarm/go.mod
index 918eeb74b70..1d992e6e036 100644
--- a/service/devicefarm/go.mod
+++ b/service/devicefarm/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/devicefarm/go.sum b/service/devicefarm/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/devicefarm/go.sum
+++ b/service/devicefarm/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/devopsguru/go.mod b/service/devopsguru/go.mod
index 2fd4ee29a06..13c30515c8d 100644
--- a/service/devopsguru/go.mod
+++ b/service/devopsguru/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/devopsguru/go.sum b/service/devopsguru/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/devopsguru/go.sum
+++ b/service/devopsguru/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/directconnect/api_op_AllocateConnectionOnInterconnect.go b/service/directconnect/api_op_AllocateConnectionOnInterconnect.go
index c5c1c5285d3..22e7f93e07b 100644
--- a/service/directconnect/api_op_AllocateConnectionOnInterconnect.go
+++ b/service/directconnect/api_op_AllocateConnectionOnInterconnect.go
@@ -117,6 +117,10 @@ type AllocateConnectionOnInterconnectOutput struct {
// the connection is not available.
ConnectionState types.ConnectionState
+ // The MAC Security (MACsec) connection encryption mode. The valid values are
+ // no_encrypt, should_encrypt, and must_encrypt.
+ EncryptionMode *string
+
// Indicates whether the connection supports a secondary BGP peer in the same
// address family (IPv4/IPv6).
HasLogicalRedundancy types.HasLogicalRedundancy
@@ -133,6 +137,12 @@ type AllocateConnectionOnInterconnectOutput struct {
// The location of the connection.
Location *string
+ // Indicates whether the connection supports MAC Security (MACsec).
+ MacSecCapable *bool
+
+ // The MAC Security (MACsec) security keys associated with the connection.
+ MacSecKeys []types.MacSecKey
+
// The ID of the AWS account that owns the connection.
OwnerAccount *string
@@ -140,6 +150,11 @@ type AllocateConnectionOnInterconnectOutput struct {
// connection.
PartnerName *string
+ // The MAC Security (MACsec) port link status of the connection. The valid values
+ // are Encryption Up, which means that there is an active Connection Key Name, or
+ // Encryption Down.
+ PortEncryptionStatus *string
+
// The name of the service provider associated with the connection.
ProviderName *string
diff --git a/service/directconnect/api_op_AllocateHostedConnection.go b/service/directconnect/api_op_AllocateHostedConnection.go
index 8f26790169e..d974e88d095 100644
--- a/service/directconnect/api_op_AllocateHostedConnection.go
+++ b/service/directconnect/api_op_AllocateHostedConnection.go
@@ -120,6 +120,10 @@ type AllocateHostedConnectionOutput struct {
// the connection is not available.
ConnectionState types.ConnectionState
+ // The MAC Security (MACsec) connection encryption mode. The valid values are
+ // no_encrypt, should_encrypt, and must_encrypt.
+ EncryptionMode *string
+
// Indicates whether the connection supports a secondary BGP peer in the same
// address family (IPv4/IPv6).
HasLogicalRedundancy types.HasLogicalRedundancy
@@ -136,6 +140,12 @@ type AllocateHostedConnectionOutput struct {
// The location of the connection.
Location *string
+ // Indicates whether the connection supports MAC Security (MACsec).
+ MacSecCapable *bool
+
+ // The MAC Security (MACsec) security keys associated with the connection.
+ MacSecKeys []types.MacSecKey
+
// The ID of the AWS account that owns the connection.
OwnerAccount *string
@@ -143,6 +153,11 @@ type AllocateHostedConnectionOutput struct {
// connection.
PartnerName *string
+ // The MAC Security (MACsec) port link status of the connection. The valid values
+ // are Encryption Up, which means that there is an active Connection Key Name, or
+ // Encryption Down.
+ PortEncryptionStatus *string
+
// The name of the service provider associated with the connection.
ProviderName *string
diff --git a/service/directconnect/api_op_AssociateConnectionWithLag.go b/service/directconnect/api_op_AssociateConnectionWithLag.go
index 1dbfb3d8b1b..b73a7b3ee80 100644
--- a/service/directconnect/api_op_AssociateConnectionWithLag.go
+++ b/service/directconnect/api_op_AssociateConnectionWithLag.go
@@ -106,6 +106,10 @@ type AssociateConnectionWithLagOutput struct {
// the connection is not available.
ConnectionState types.ConnectionState
+ // The MAC Security (MACsec) connection encryption mode. The valid values are
+ // no_encrypt, should_encrypt, and must_encrypt.
+ EncryptionMode *string
+
// Indicates whether the connection supports a secondary BGP peer in the same
// address family (IPv4/IPv6).
HasLogicalRedundancy types.HasLogicalRedundancy
@@ -122,6 +126,12 @@ type AssociateConnectionWithLagOutput struct {
// The location of the connection.
Location *string
+ // Indicates whether the connection supports MAC Security (MACsec).
+ MacSecCapable *bool
+
+ // The MAC Security (MACsec) security keys associated with the connection.
+ MacSecKeys []types.MacSecKey
+
// The ID of the AWS account that owns the connection.
OwnerAccount *string
@@ -129,6 +139,11 @@ type AssociateConnectionWithLagOutput struct {
// connection.
PartnerName *string
+ // The MAC Security (MACsec) port link status of the connection. The valid values
+ // are Encryption Up, which means that there is an active Connection Key Name, or
+ // Encryption Down.
+ PortEncryptionStatus *string
+
// The name of the service provider associated with the connection.
ProviderName *string
diff --git a/service/directconnect/api_op_AssociateHostedConnection.go b/service/directconnect/api_op_AssociateHostedConnection.go
index 7e9898c68f1..e6898c721c0 100644
--- a/service/directconnect/api_op_AssociateHostedConnection.go
+++ b/service/directconnect/api_op_AssociateHostedConnection.go
@@ -98,6 +98,10 @@ type AssociateHostedConnectionOutput struct {
// the connection is not available.
ConnectionState types.ConnectionState
+ // The MAC Security (MACsec) connection encryption mode. The valid values are
+ // no_encrypt, should_encrypt, and must_encrypt.
+ EncryptionMode *string
+
// Indicates whether the connection supports a secondary BGP peer in the same
// address family (IPv4/IPv6).
HasLogicalRedundancy types.HasLogicalRedundancy
@@ -114,6 +118,12 @@ type AssociateHostedConnectionOutput struct {
// The location of the connection.
Location *string
+ // Indicates whether the connection supports MAC Security (MACsec).
+ MacSecCapable *bool
+
+ // The MAC Security (MACsec) security keys associated with the connection.
+ MacSecKeys []types.MacSecKey
+
// The ID of the AWS account that owns the connection.
OwnerAccount *string
@@ -121,6 +131,11 @@ type AssociateHostedConnectionOutput struct {
// connection.
PartnerName *string
+ // The MAC Security (MACsec) port link status of the connection. The valid values
+ // are Encryption Up, which means that there is an active Connection Key Name, or
+ // Encryption Down.
+ PortEncryptionStatus *string
+
// The name of the service provider associated with the connection.
ProviderName *string
diff --git a/service/directconnect/api_op_AssociateMacSecKey.go b/service/directconnect/api_op_AssociateMacSecKey.go
new file mode 100644
index 00000000000..9fd7862b579
--- /dev/null
+++ b/service/directconnect/api_op_AssociateMacSecKey.go
@@ -0,0 +1,148 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package directconnect
+
+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/directconnect/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Associates a MAC Security (MACsec) Connection Key Name (CKN)/ Connectivity
+// Association Key (CAK) pair with an AWS Direct Connect dedicated connection. You
+// must supply either the secretARN, or the CKN/CAK (ckn and cak) pair in the
+// request. For information about MAC Security (MACsec) key considerations, see
+// MACsec pre-shared CKN/CAK key considerations
+// (https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-mac-sec-getting-started.html#mac-sec-key-consideration)
+// in the AWS Direct Connect User Guide.
+func (c *Client) AssociateMacSecKey(ctx context.Context, params *AssociateMacSecKeyInput, optFns ...func(*Options)) (*AssociateMacSecKeyOutput, error) {
+ if params == nil {
+ params = &AssociateMacSecKeyInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "AssociateMacSecKey", params, optFns, addOperationAssociateMacSecKeyMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*AssociateMacSecKeyOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type AssociateMacSecKeyInput struct {
+
+ // The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG
+ // (dxlag-xxxx). You can use DescribeConnections or DescribeLags to retrieve
+ // connection ID.
+ //
+ // This member is required.
+ ConnectionId *string
+
+ // The MAC Security (MACsec) CAK to associate with the dedicated connection. You
+ // can create the CKN/CAK pair using an industry standard tool. The valid values
+ // are 64 hexadecimal characters (0-9, A-E). If you use this request parameter, you
+ // must use the ckn request parameter and not use the secretARN request parameter.
+ Cak *string
+
+ // The MAC Security (MACsec) CKN to associate with the dedicated connection. You
+ // can create the CKN/CAK pair using an industry standard tool. The valid values
+ // are 64 hexadecimal characters (0-9, A-E). If you use this request parameter, you
+ // must use the cak request parameter and not use the secretARN request parameter.
+ Ckn *string
+
+ // The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key to
+ // associate with the dedicated connection. You can use DescribeConnections or
+ // DescribeLags to retrieve the MAC Security (MACsec) secret key. If you use this
+ // request parameter, you do not use the ckn and cak request parameters.
+ SecretARN *string
+}
+
+type AssociateMacSecKeyOutput struct {
+
+ // The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG
+ // (dxlag-xxxx).
+ ConnectionId *string
+
+ // The MAC Security (MACsec) security keys associated with the dedicated
+ // connection.
+ MacSecKeys []types.MacSecKey
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationAssociateMacSecKeyMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpAssociateMacSecKey{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpAssociateMacSecKey{}, 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 = addOpAssociateMacSecKeyValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opAssociateMacSecKey(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_opAssociateMacSecKey(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "directconnect",
+ OperationName: "AssociateMacSecKey",
+ }
+}
diff --git a/service/directconnect/api_op_CreateConnection.go b/service/directconnect/api_op_CreateConnection.go
index 5b35257b0ab..0bb974a7d9c 100644
--- a/service/directconnect/api_op_CreateConnection.go
+++ b/service/directconnect/api_op_CreateConnection.go
@@ -59,6 +59,13 @@ type CreateConnectionInput struct {
// The name of the service provider associated with the requested connection.
ProviderName *string
+ // Indicates whether you want the connection to support MAC Security (MACsec). MAC
+ // Security (MACsec) is only available on dedicated connections. For information
+ // about MAC Security (MACsec) prerequisties, see MACsec prerequisties
+ // (https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-mac-sec-getting-started.html#mac-sec-prerequisites)
+ // in the AWS Direct Connect User Guide.
+ RequestMACSec *bool
+
// The tags to associate with the lag.
Tags []types.Tag
}
@@ -115,6 +122,10 @@ type CreateConnectionOutput struct {
// the connection is not available.
ConnectionState types.ConnectionState
+ // The MAC Security (MACsec) connection encryption mode. The valid values are
+ // no_encrypt, should_encrypt, and must_encrypt.
+ EncryptionMode *string
+
// Indicates whether the connection supports a secondary BGP peer in the same
// address family (IPv4/IPv6).
HasLogicalRedundancy types.HasLogicalRedundancy
@@ -131,6 +142,12 @@ type CreateConnectionOutput struct {
// The location of the connection.
Location *string
+ // Indicates whether the connection supports MAC Security (MACsec).
+ MacSecCapable *bool
+
+ // The MAC Security (MACsec) security keys associated with the connection.
+ MacSecKeys []types.MacSecKey
+
// The ID of the AWS account that owns the connection.
OwnerAccount *string
@@ -138,6 +155,11 @@ type CreateConnectionOutput struct {
// connection.
PartnerName *string
+ // The MAC Security (MACsec) port link status of the connection. The valid values
+ // are Encryption Up, which means that there is an active Connection Key Name, or
+ // Encryption Down.
+ PortEncryptionStatus *string
+
// The name of the service provider associated with the connection.
ProviderName *string
diff --git a/service/directconnect/api_op_CreateLag.go b/service/directconnect/api_op_CreateLag.go
index 2e2b46d40c8..9b4a7f55b98 100644
--- a/service/directconnect/api_op_CreateLag.go
+++ b/service/directconnect/api_op_CreateLag.go
@@ -78,6 +78,13 @@ type CreateLagInput struct {
// The name of the service provider associated with the LAG.
ProviderName *string
+ // Indicates whether the connection will support MAC Security (MACsec). All
+ // connections in the LAG must be capable of supporting MAC Security (MACsec). For
+ // information about MAC Security (MACsec) prerequisties, see MACsec prerequisties
+ // (https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-mac-sec-getting-started.html#mac-sec-prerequisites)
+ // in the AWS Direct Connect User Guide.
+ RequestMACSec *bool
+
// The tags to associate with the LAG.
Tags []types.Tag
}
@@ -103,6 +110,10 @@ type CreateLagOutput struct {
// possible values are 1Gbps and 10Gbps.
ConnectionsBandwidth *string
+ // The LAG MAC Security (MACsec) encryption mode. The valid values are no_encrypt,
+ // should_encrypt, and must_encrypt.
+ EncryptionMode *string
+
// Indicates whether the LAG supports a secondary BGP peer in the same address
// family (IPv4/IPv6).
HasLogicalRedundancy types.HasLogicalRedundancy
@@ -142,6 +153,12 @@ type CreateLagOutput struct {
// The location of the LAG.
Location *string
+ // Indicates whether the LAG supports MAC Security (MACsec).
+ MacSecCapable *bool
+
+ // The MAC Security (MACsec) security keys associated with the LAG.
+ MacSecKeys []types.MacSecKey
+
// The minimum number of physical dedicated connections that must be operational
// for the LAG itself to be operational.
MinimumLinks int32
diff --git a/service/directconnect/api_op_DeleteConnection.go b/service/directconnect/api_op_DeleteConnection.go
index ef03f40bc0a..42ba58af69a 100644
--- a/service/directconnect/api_op_DeleteConnection.go
+++ b/service/directconnect/api_op_DeleteConnection.go
@@ -91,6 +91,10 @@ type DeleteConnectionOutput struct {
// the connection is not available.
ConnectionState types.ConnectionState
+ // The MAC Security (MACsec) connection encryption mode. The valid values are
+ // no_encrypt, should_encrypt, and must_encrypt.
+ EncryptionMode *string
+
// Indicates whether the connection supports a secondary BGP peer in the same
// address family (IPv4/IPv6).
HasLogicalRedundancy types.HasLogicalRedundancy
@@ -107,6 +111,12 @@ type DeleteConnectionOutput struct {
// The location of the connection.
Location *string
+ // Indicates whether the connection supports MAC Security (MACsec).
+ MacSecCapable *bool
+
+ // The MAC Security (MACsec) security keys associated with the connection.
+ MacSecKeys []types.MacSecKey
+
// The ID of the AWS account that owns the connection.
OwnerAccount *string
@@ -114,6 +124,11 @@ type DeleteConnectionOutput struct {
// connection.
PartnerName *string
+ // The MAC Security (MACsec) port link status of the connection. The valid values
+ // are Encryption Up, which means that there is an active Connection Key Name, or
+ // Encryption Down.
+ PortEncryptionStatus *string
+
// The name of the service provider associated with the connection.
ProviderName *string
diff --git a/service/directconnect/api_op_DeleteLag.go b/service/directconnect/api_op_DeleteLag.go
index a8eed1b39ac..429ddf23ff7 100644
--- a/service/directconnect/api_op_DeleteLag.go
+++ b/service/directconnect/api_op_DeleteLag.go
@@ -57,6 +57,10 @@ type DeleteLagOutput struct {
// possible values are 1Gbps and 10Gbps.
ConnectionsBandwidth *string
+ // The LAG MAC Security (MACsec) encryption mode. The valid values are no_encrypt,
+ // should_encrypt, and must_encrypt.
+ EncryptionMode *string
+
// Indicates whether the LAG supports a secondary BGP peer in the same address
// family (IPv4/IPv6).
HasLogicalRedundancy types.HasLogicalRedundancy
@@ -96,6 +100,12 @@ type DeleteLagOutput struct {
// The location of the LAG.
Location *string
+ // Indicates whether the LAG supports MAC Security (MACsec).
+ MacSecCapable *bool
+
+ // The MAC Security (MACsec) security keys associated with the LAG.
+ MacSecKeys []types.MacSecKey
+
// The minimum number of physical dedicated connections that must be operational
// for the LAG itself to be operational.
MinimumLinks int32
diff --git a/service/directconnect/api_op_DisassociateConnectionFromLag.go b/service/directconnect/api_op_DisassociateConnectionFromLag.go
index 554a165d438..88ba219bae8 100644
--- a/service/directconnect/api_op_DisassociateConnectionFromLag.go
+++ b/service/directconnect/api_op_DisassociateConnectionFromLag.go
@@ -102,6 +102,10 @@ type DisassociateConnectionFromLagOutput struct {
// the connection is not available.
ConnectionState types.ConnectionState
+ // The MAC Security (MACsec) connection encryption mode. The valid values are
+ // no_encrypt, should_encrypt, and must_encrypt.
+ EncryptionMode *string
+
// Indicates whether the connection supports a secondary BGP peer in the same
// address family (IPv4/IPv6).
HasLogicalRedundancy types.HasLogicalRedundancy
@@ -118,6 +122,12 @@ type DisassociateConnectionFromLagOutput struct {
// The location of the connection.
Location *string
+ // Indicates whether the connection supports MAC Security (MACsec).
+ MacSecCapable *bool
+
+ // The MAC Security (MACsec) security keys associated with the connection.
+ MacSecKeys []types.MacSecKey
+
// The ID of the AWS account that owns the connection.
OwnerAccount *string
@@ -125,6 +135,11 @@ type DisassociateConnectionFromLagOutput struct {
// connection.
PartnerName *string
+ // The MAC Security (MACsec) port link status of the connection. The valid values
+ // are Encryption Up, which means that there is an active Connection Key Name, or
+ // Encryption Down.
+ PortEncryptionStatus *string
+
// The name of the service provider associated with the connection.
ProviderName *string
diff --git a/service/directconnect/api_op_DisassociateMacSecKey.go b/service/directconnect/api_op_DisassociateMacSecKey.go
new file mode 100644
index 00000000000..d529dd7a91b
--- /dev/null
+++ b/service/directconnect/api_op_DisassociateMacSecKey.go
@@ -0,0 +1,132 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package directconnect
+
+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/directconnect/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Removes the association between a MAC Security (MACsec) security key and an AWS
+// Direct Connect dedicated connection.
+func (c *Client) DisassociateMacSecKey(ctx context.Context, params *DisassociateMacSecKeyInput, optFns ...func(*Options)) (*DisassociateMacSecKeyOutput, error) {
+ if params == nil {
+ params = &DisassociateMacSecKeyInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DisassociateMacSecKey", params, optFns, addOperationDisassociateMacSecKeyMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DisassociateMacSecKeyOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DisassociateMacSecKeyInput struct {
+
+ // The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG
+ // (dxlag-xxxx). You can use DescribeConnections or DescribeLags to retrieve
+ // connection ID.
+ //
+ // This member is required.
+ ConnectionId *string
+
+ // The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key. You can
+ // use DescribeConnections to retrieve the ARN of the MAC Security (MACsec) secret
+ // key.
+ //
+ // This member is required.
+ SecretARN *string
+}
+
+type DisassociateMacSecKeyOutput struct {
+
+ // The ID of the dedicated connection (dxcon-xxxx), or the ID of the LAG
+ // (dxlag-xxxx).
+ ConnectionId *string
+
+ // The MAC Security (MACsec) security keys no longer associated with the dedicated
+ // connection.
+ MacSecKeys []types.MacSecKey
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDisassociateMacSecKeyMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpDisassociateMacSecKey{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpDisassociateMacSecKey{}, 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 = addOpDisassociateMacSecKeyValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDisassociateMacSecKey(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_opDisassociateMacSecKey(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "directconnect",
+ OperationName: "DisassociateMacSecKey",
+ }
+}
diff --git a/service/directconnect/api_op_UpdateConnection.go b/service/directconnect/api_op_UpdateConnection.go
new file mode 100644
index 00000000000..bbdcaa7c8ea
--- /dev/null
+++ b/service/directconnect/api_op_UpdateConnection.go
@@ -0,0 +1,229 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package directconnect
+
+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/directconnect/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Updates the AWS Direct Connect dedicated connection configuration. You can
+// update the following parameters for a connection:
+//
+// * The connection name
+//
+// * The
+// connection's MAC Security (MACsec) encryption mode.
+func (c *Client) UpdateConnection(ctx context.Context, params *UpdateConnectionInput, optFns ...func(*Options)) (*UpdateConnectionOutput, error) {
+ if params == nil {
+ params = &UpdateConnectionInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "UpdateConnection", params, optFns, addOperationUpdateConnectionMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*UpdateConnectionOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type UpdateConnectionInput struct {
+
+ // The ID of the dedicated connection. You can use DescribeConnections to retrieve
+ // the connection ID.
+ //
+ // This member is required.
+ ConnectionId *string
+
+ // The name of the connection.
+ ConnectionName *string
+
+ // The connection MAC Security (MACsec) encryption mode. The valid values are
+ // no_encrypt, should_encrypt, and must_encrypt.
+ EncryptionMode *string
+}
+
+// Information about an AWS Direct Connect connection.
+type UpdateConnectionOutput struct {
+
+ // The Direct Connect endpoint on which the physical connection terminates.
+ //
+ // Deprecated: This member has been deprecated.
+ AwsDevice *string
+
+ // The Direct Connect endpoint on which the physical connection terminates.
+ AwsDeviceV2 *string
+
+ // The bandwidth of the connection.
+ Bandwidth *string
+
+ // The ID of the connection.
+ ConnectionId *string
+
+ // The name of the connection.
+ ConnectionName *string
+
+ // The state of the connection. The following are the possible values:
+ //
+ // * ordering:
+ // The initial state of a hosted connection provisioned on an interconnect. The
+ // connection stays in the ordering state until the owner of the hosted connection
+ // confirms or declines the connection order.
+ //
+ // * requested: The initial state of a
+ // standard connection. The connection stays in the requested state until the
+ // Letter of Authorization (LOA) is sent to the customer.
+ //
+ // * pending: The
+ // connection has been approved and is being initialized.
+ //
+ // * available: The network
+ // link is up and the connection is ready for use.
+ //
+ // * down: The network link is
+ // down.
+ //
+ // * deleting: The connection is being deleted.
+ //
+ // * deleted: The connection
+ // has been deleted.
+ //
+ // * rejected: A hosted connection in the ordering state enters
+ // the rejected state if it is deleted by the customer.
+ //
+ // * unknown: The state of
+ // the connection is not available.
+ ConnectionState types.ConnectionState
+
+ // The MAC Security (MACsec) connection encryption mode. The valid values are
+ // no_encrypt, should_encrypt, and must_encrypt.
+ EncryptionMode *string
+
+ // Indicates whether the connection supports a secondary BGP peer in the same
+ // address family (IPv4/IPv6).
+ HasLogicalRedundancy types.HasLogicalRedundancy
+
+ // Indicates whether jumbo frames (9001 MTU) are supported.
+ JumboFrameCapable *bool
+
+ // The ID of the LAG.
+ LagId *string
+
+ // The time of the most recent call to DescribeLoa for this connection.
+ LoaIssueTime *time.Time
+
+ // The location of the connection.
+ Location *string
+
+ // Indicates whether the connection supports MAC Security (MACsec).
+ MacSecCapable *bool
+
+ // The MAC Security (MACsec) security keys associated with the connection.
+ MacSecKeys []types.MacSecKey
+
+ // The ID of the AWS account that owns the connection.
+ OwnerAccount *string
+
+ // The name of the AWS Direct Connect service provider associated with the
+ // connection.
+ PartnerName *string
+
+ // The MAC Security (MACsec) port link status of the connection. The valid values
+ // are Encryption Up, which means that there is an active Connection Key Name, or
+ // Encryption Down.
+ PortEncryptionStatus *string
+
+ // The name of the service provider associated with the connection.
+ ProviderName *string
+
+ // The AWS Region where the connection is located.
+ Region *string
+
+ // The tags associated with the connection.
+ Tags []types.Tag
+
+ // The ID of the VLAN.
+ Vlan int32
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationUpdateConnectionMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpUpdateConnection{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpUpdateConnection{}, 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 = addOpUpdateConnectionValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opUpdateConnection(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_opUpdateConnection(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "directconnect",
+ OperationName: "UpdateConnection",
+ }
+}
diff --git a/service/directconnect/api_op_UpdateLag.go b/service/directconnect/api_op_UpdateLag.go
index f8cba7be7e0..acef1c30410 100644
--- a/service/directconnect/api_op_UpdateLag.go
+++ b/service/directconnect/api_op_UpdateLag.go
@@ -12,20 +12,23 @@ import (
)
// Updates the attributes of the specified link aggregation group (LAG). You can
-// update the following attributes:
+// update the following LAG attributes:
//
// * The name of the LAG.
//
-// * The value for the
-// minimum number of connections that must be operational for the LAG itself to be
-// operational.
+// * The value for
+// the minimum number of connections that must be operational for the LAG itself to
+// be operational.
//
-// When you create a LAG, the default value for the minimum number of
-// operational connections is zero (0). If you update this value and the number of
-// operational connections falls below the specified value, the LAG automatically
-// goes down to avoid over-utilization of the remaining connections. Adjust this
-// value with care, as it could force the LAG down if it is set higher than the
-// current number of operational connections.
+// * The LAG's MACsec encryption mode. AWS assigns this value to
+// each connection which is part of the LAG.
+//
+// * The tags
+//
+// If you adjust the
+// threshold value for the minimum number of operational connections, ensure that
+// the new value does not cause the LAG to fall below the threshold and become
+// non-operational.
func (c *Client) UpdateLag(ctx context.Context, params *UpdateLagInput, optFns ...func(*Options)) (*UpdateLagOutput, error) {
if params == nil {
params = &UpdateLagInput{}
@@ -48,6 +51,10 @@ type UpdateLagInput struct {
// This member is required.
LagId *string
+ // The LAG MAC Security (MACsec) encryption mode. AWS applies the value to all
+ // connections which are part of the LAG.
+ EncryptionMode *string
+
// The name of the LAG.
LagName *string
@@ -77,6 +84,10 @@ type UpdateLagOutput struct {
// possible values are 1Gbps and 10Gbps.
ConnectionsBandwidth *string
+ // The LAG MAC Security (MACsec) encryption mode. The valid values are no_encrypt,
+ // should_encrypt, and must_encrypt.
+ EncryptionMode *string
+
// Indicates whether the LAG supports a secondary BGP peer in the same address
// family (IPv4/IPv6).
HasLogicalRedundancy types.HasLogicalRedundancy
@@ -116,6 +127,12 @@ type UpdateLagOutput struct {
// The location of the LAG.
Location *string
+ // Indicates whether the LAG supports MAC Security (MACsec).
+ MacSecCapable *bool
+
+ // The MAC Security (MACsec) security keys associated with the LAG.
+ MacSecKeys []types.MacSecKey
+
// The minimum number of physical dedicated connections that must be operational
// for the LAG itself to be operational.
MinimumLinks int32
diff --git a/service/directconnect/deserializers.go b/service/directconnect/deserializers.go
index 05ea99bb2c1..adc5f2ee8c8 100644
--- a/service/directconnect/deserializers.go
+++ b/service/directconnect/deserializers.go
@@ -956,6 +956,120 @@ func awsAwsjson11_deserializeOpErrorAssociateHostedConnection(response *smithyht
}
}
+type awsAwsjson11_deserializeOpAssociateMacSecKey struct {
+}
+
+func (*awsAwsjson11_deserializeOpAssociateMacSecKey) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_deserializeOpAssociateMacSecKey) 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_deserializeOpErrorAssociateMacSecKey(response, &metadata)
+ }
+ output := &AssociateMacSecKeyOutput{}
+ 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_deserializeOpDocumentAssociateMacSecKeyOutput(&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_deserializeOpErrorAssociateMacSecKey(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("DirectConnectClientException", errorCode):
+ return awsAwsjson11_deserializeErrorDirectConnectClientException(response, errorBody)
+
+ case strings.EqualFold("DirectConnectServerException", errorCode):
+ return awsAwsjson11_deserializeErrorDirectConnectServerException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
type awsAwsjson11_deserializeOpAssociateVirtualInterface struct {
}
@@ -5552,6 +5666,120 @@ func awsAwsjson11_deserializeOpErrorDisassociateConnectionFromLag(response *smit
}
}
+type awsAwsjson11_deserializeOpDisassociateMacSecKey struct {
+}
+
+func (*awsAwsjson11_deserializeOpDisassociateMacSecKey) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_deserializeOpDisassociateMacSecKey) 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_deserializeOpErrorDisassociateMacSecKey(response, &metadata)
+ }
+ output := &DisassociateMacSecKeyOutput{}
+ 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_deserializeOpDocumentDisassociateMacSecKeyOutput(&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_deserializeOpErrorDisassociateMacSecKey(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("DirectConnectClientException", errorCode):
+ return awsAwsjson11_deserializeErrorDirectConnectClientException(response, errorBody)
+
+ case strings.EqualFold("DirectConnectServerException", errorCode):
+ return awsAwsjson11_deserializeErrorDirectConnectServerException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
type awsAwsjson11_deserializeOpListVirtualInterfaceTestHistory struct {
}
@@ -6128,14 +6356,14 @@ func awsAwsjson11_deserializeOpErrorUntagResource(response *smithyhttp.Response,
}
}
-type awsAwsjson11_deserializeOpUpdateDirectConnectGatewayAssociation struct {
+type awsAwsjson11_deserializeOpUpdateConnection struct {
}
-func (*awsAwsjson11_deserializeOpUpdateDirectConnectGatewayAssociation) ID() string {
+func (*awsAwsjson11_deserializeOpUpdateConnection) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsjson11_deserializeOpUpdateDirectConnectGatewayAssociation) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsjson11_deserializeOpUpdateConnection) 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)
@@ -6149,9 +6377,9 @@ func (m *awsAwsjson11_deserializeOpUpdateDirectConnectGatewayAssociation) Handle
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsjson11_deserializeOpErrorUpdateDirectConnectGatewayAssociation(response, &metadata)
+ return out, metadata, awsAwsjson11_deserializeOpErrorUpdateConnection(response, &metadata)
}
- output := &UpdateDirectConnectGatewayAssociationOutput{}
+ output := &UpdateConnectionOutput{}
out.Result = output
var buff [1024]byte
@@ -6171,7 +6399,7 @@ func (m *awsAwsjson11_deserializeOpUpdateDirectConnectGatewayAssociation) Handle
return out, metadata, err
}
- err = awsAwsjson11_deserializeOpDocumentUpdateDirectConnectGatewayAssociationOutput(&output, shape)
+ err = awsAwsjson11_deserializeOpDocumentUpdateConnectionOutput(&output, shape)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6185,7 +6413,7 @@ func (m *awsAwsjson11_deserializeOpUpdateDirectConnectGatewayAssociation) Handle
return out, metadata, err
}
-func awsAwsjson11_deserializeOpErrorUpdateDirectConnectGatewayAssociation(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsjson11_deserializeOpErrorUpdateConnection(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)}
@@ -6242,14 +6470,14 @@ func awsAwsjson11_deserializeOpErrorUpdateDirectConnectGatewayAssociation(respon
}
}
-type awsAwsjson11_deserializeOpUpdateLag struct {
+type awsAwsjson11_deserializeOpUpdateDirectConnectGatewayAssociation struct {
}
-func (*awsAwsjson11_deserializeOpUpdateLag) ID() string {
+func (*awsAwsjson11_deserializeOpUpdateDirectConnectGatewayAssociation) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsjson11_deserializeOpUpdateLag) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsjson11_deserializeOpUpdateDirectConnectGatewayAssociation) 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)
@@ -6263,9 +6491,9 @@ func (m *awsAwsjson11_deserializeOpUpdateLag) HandleDeserialize(ctx context.Cont
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsjson11_deserializeOpErrorUpdateLag(response, &metadata)
+ return out, metadata, awsAwsjson11_deserializeOpErrorUpdateDirectConnectGatewayAssociation(response, &metadata)
}
- output := &UpdateLagOutput{}
+ output := &UpdateDirectConnectGatewayAssociationOutput{}
out.Result = output
var buff [1024]byte
@@ -6285,7 +6513,7 @@ func (m *awsAwsjson11_deserializeOpUpdateLag) HandleDeserialize(ctx context.Cont
return out, metadata, err
}
- err = awsAwsjson11_deserializeOpDocumentUpdateLagOutput(&output, shape)
+ err = awsAwsjson11_deserializeOpDocumentUpdateDirectConnectGatewayAssociationOutput(&output, shape)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6299,7 +6527,7 @@ func (m *awsAwsjson11_deserializeOpUpdateLag) HandleDeserialize(ctx context.Cont
return out, metadata, err
}
-func awsAwsjson11_deserializeOpErrorUpdateLag(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsjson11_deserializeOpErrorUpdateDirectConnectGatewayAssociation(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)}
@@ -6356,14 +6584,14 @@ func awsAwsjson11_deserializeOpErrorUpdateLag(response *smithyhttp.Response, met
}
}
-type awsAwsjson11_deserializeOpUpdateVirtualInterfaceAttributes struct {
+type awsAwsjson11_deserializeOpUpdateLag struct {
}
-func (*awsAwsjson11_deserializeOpUpdateVirtualInterfaceAttributes) ID() string {
+func (*awsAwsjson11_deserializeOpUpdateLag) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsjson11_deserializeOpUpdateVirtualInterfaceAttributes) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsjson11_deserializeOpUpdateLag) 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)
@@ -6377,9 +6605,9 @@ func (m *awsAwsjson11_deserializeOpUpdateVirtualInterfaceAttributes) HandleDeser
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsjson11_deserializeOpErrorUpdateVirtualInterfaceAttributes(response, &metadata)
+ return out, metadata, awsAwsjson11_deserializeOpErrorUpdateLag(response, &metadata)
}
- output := &UpdateVirtualInterfaceAttributesOutput{}
+ output := &UpdateLagOutput{}
out.Result = output
var buff [1024]byte
@@ -6399,7 +6627,7 @@ func (m *awsAwsjson11_deserializeOpUpdateVirtualInterfaceAttributes) HandleDeser
return out, metadata, err
}
- err = awsAwsjson11_deserializeOpDocumentUpdateVirtualInterfaceAttributesOutput(&output, shape)
+ err = awsAwsjson11_deserializeOpDocumentUpdateLagOutput(&output, shape)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6413,7 +6641,7 @@ func (m *awsAwsjson11_deserializeOpUpdateVirtualInterfaceAttributes) HandleDeser
return out, metadata, err
}
-func awsAwsjson11_deserializeOpErrorUpdateVirtualInterfaceAttributes(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsjson11_deserializeOpErrorUpdateLag(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)}
@@ -6470,12 +6698,126 @@ func awsAwsjson11_deserializeOpErrorUpdateVirtualInterfaceAttributes(response *s
}
}
-func awsAwsjson11_deserializeErrorDirectConnectClientException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- var buff [1024]byte
- ringBuffer := smithyio.NewRingBuffer(buff[:])
+type awsAwsjson11_deserializeOpUpdateVirtualInterfaceAttributes struct {
+}
- body := io.TeeReader(errorBody, ringBuffer)
- decoder := json.NewDecoder(body)
+func (*awsAwsjson11_deserializeOpUpdateVirtualInterfaceAttributes) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_deserializeOpUpdateVirtualInterfaceAttributes) 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_deserializeOpErrorUpdateVirtualInterfaceAttributes(response, &metadata)
+ }
+ output := &UpdateVirtualInterfaceAttributesOutput{}
+ 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_deserializeOpDocumentUpdateVirtualInterfaceAttributesOutput(&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_deserializeOpErrorUpdateVirtualInterfaceAttributes(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("DirectConnectClientException", errorCode):
+ return awsAwsjson11_deserializeErrorDirectConnectClientException(response, errorBody)
+
+ case strings.EqualFold("DirectConnectServerException", errorCode):
+ return awsAwsjson11_deserializeErrorDirectConnectServerException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsAwsjson11_deserializeErrorDirectConnectClientException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, ringBuffer)
+ decoder := json.NewDecoder(body)
decoder.UseNumber()
var shape interface{}
if err := decoder.Decode(&shape); err != nil && err != io.EOF {
@@ -6677,6 +7019,42 @@ func awsAwsjson11_deserializeDocumentAssociatedGateway(v **types.AssociatedGatew
return nil
}
+func awsAwsjson11_deserializeDocumentAvailableMacSecPortSpeeds(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 PortSpeed to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
func awsAwsjson11_deserializeDocumentAvailablePortSpeeds(v *[]string, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -6975,6 +7353,15 @@ func awsAwsjson11_deserializeDocumentConnection(v **types.Connection, value inte
sv.ConnectionState = types.ConnectionState(jtv)
}
+ case "encryptionMode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EncryptionMode to be of type string, got %T instead", value)
+ }
+ sv.EncryptionMode = ptr.String(jtv)
+ }
+
case "hasLogicalRedundancy":
if value != nil {
jtv, ok := value.(string)
@@ -7024,6 +7411,20 @@ func awsAwsjson11_deserializeDocumentConnection(v **types.Connection, value inte
sv.Location = ptr.String(jtv)
}
+ case "macSecCapable":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected MacSecCapable to be of type *bool, got %T instead", value)
+ }
+ sv.MacSecCapable = ptr.Bool(jtv)
+ }
+
+ case "macSecKeys":
+ if err := awsAwsjson11_deserializeDocumentMacSecKeyList(&sv.MacSecKeys, value); err != nil {
+ return err
+ }
+
case "ownerAccount":
if value != nil {
jtv, ok := value.(string)
@@ -7042,6 +7443,15 @@ func awsAwsjson11_deserializeDocumentConnection(v **types.Connection, value inte
sv.PartnerName = ptr.String(jtv)
}
+ case "portEncryptionStatus":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PortEncryptionStatus to be of type string, got %T instead", value)
+ }
+ sv.PortEncryptionStatus = ptr.String(jtv)
+ }
+
case "providerName":
if value != nil {
jtv, ok := value.(string)
@@ -8009,6 +8419,15 @@ func awsAwsjson11_deserializeDocumentLag(v **types.Lag, value interface{}) error
sv.ConnectionsBandwidth = ptr.String(jtv)
}
+ case "encryptionMode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EncryptionMode to be of type string, got %T instead", value)
+ }
+ sv.EncryptionMode = ptr.String(jtv)
+ }
+
case "hasLogicalRedundancy":
if value != nil {
jtv, ok := value.(string)
@@ -8063,6 +8482,20 @@ func awsAwsjson11_deserializeDocumentLag(v **types.Lag, value interface{}) error
sv.Location = ptr.String(jtv)
}
+ case "macSecCapable":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected MacSecCapable to be of type *bool, got %T instead", value)
+ }
+ sv.MacSecCapable = ptr.Bool(jtv)
+ }
+
+ case "macSecKeys":
+ if err := awsAwsjson11_deserializeDocumentMacSecKeyList(&sv.MacSecKeys, value); err != nil {
+ return err
+ }
+
case "minimumLinks":
if value != nil {
jtv, ok := value.(json.Number)
@@ -8239,6 +8672,11 @@ func awsAwsjson11_deserializeDocumentLocation(v **types.Location, value interfac
for key, value := range shape {
switch key {
+ case "availableMacSecPortSpeeds":
+ if err := awsAwsjson11_deserializeDocumentAvailableMacSecPortSpeeds(&sv.AvailableMacSecPortSpeeds, value); err != nil {
+ return err
+ }
+
case "availablePortSpeeds":
if err := awsAwsjson11_deserializeDocumentAvailablePortSpeeds(&sv.AvailablePortSpeeds, value); err != nil {
return err
@@ -8319,43 +8757,7 @@ func awsAwsjson11_deserializeDocumentLocationList(v *[]types.Location, value int
return nil
}
-func awsAwsjson11_deserializeDocumentProviderList(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 ProviderName to be of type string, got %T instead", value)
- }
- col = jtv
- }
- cv = append(cv, col)
-
- }
- *v = cv
- return nil
-}
-
-func awsAwsjson11_deserializeDocumentResourceTag(v **types.ResourceTag, value interface{}) error {
+func awsAwsjson11_deserializeDocumentMacSecKey(v **types.MacSecKey, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
@@ -8368,27 +8770,49 @@ func awsAwsjson11_deserializeDocumentResourceTag(v **types.ResourceTag, value in
return fmt.Errorf("unexpected JSON type %v", value)
}
- var sv *types.ResourceTag
+ var sv *types.MacSecKey
if *v == nil {
- sv = &types.ResourceTag{}
+ sv = &types.MacSecKey{}
} else {
sv = *v
}
for key, value := range shape {
switch key {
- case "resourceArn":
+ case "ckn":
if value != nil {
jtv, ok := value.(string)
if !ok {
- return fmt.Errorf("expected ResourceArn to be of type string, got %T instead", value)
+ return fmt.Errorf("expected Ckn to be of type string, got %T instead", value)
}
- sv.ResourceArn = ptr.String(jtv)
+ sv.Ckn = ptr.String(jtv)
}
- case "tags":
- if err := awsAwsjson11_deserializeDocumentTagList(&sv.Tags, value); err != nil {
- return err
+ case "secretARN":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected SecretARN to be of type string, got %T instead", value)
+ }
+ sv.SecretARN = ptr.String(jtv)
+ }
+
+ case "startOn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected StartOnDate to be of type string, got %T instead", value)
+ }
+ sv.StartOn = ptr.String(jtv)
+ }
+
+ case "state":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected State to be of type string, got %T instead", value)
+ }
+ sv.State = ptr.String(jtv)
}
default:
@@ -8400,7 +8824,7 @@ func awsAwsjson11_deserializeDocumentResourceTag(v **types.ResourceTag, value in
return nil
}
-func awsAwsjson11_deserializeDocumentResourceTagList(v *[]types.ResourceTag, value interface{}) error {
+func awsAwsjson11_deserializeDocumentMacSecKeyList(v *[]types.MacSecKey, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
@@ -8413,15 +8837,130 @@ func awsAwsjson11_deserializeDocumentResourceTagList(v *[]types.ResourceTag, val
return fmt.Errorf("unexpected JSON type %v", value)
}
- var cv []types.ResourceTag
+ var cv []types.MacSecKey
if *v == nil {
- cv = []types.ResourceTag{}
+ cv = []types.MacSecKey{}
} else {
cv = *v
}
for _, value := range shape {
- var col types.ResourceTag
+ var col types.MacSecKey
+ destAddr := &col
+ if err := awsAwsjson11_deserializeDocumentMacSecKey(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentProviderList(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 ProviderName to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentResourceTag(v **types.ResourceTag, 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.ResourceTag
+ if *v == nil {
+ sv = &types.ResourceTag{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "resourceArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceArn to be of type string, got %T instead", value)
+ }
+ sv.ResourceArn = ptr.String(jtv)
+ }
+
+ case "tags":
+ if err := awsAwsjson11_deserializeDocumentTagList(&sv.Tags, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentResourceTagList(v *[]types.ResourceTag, 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.ResourceTag
+ if *v == nil {
+ cv = []types.ResourceTag{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.ResourceTag
destAddr := &col
if err := awsAwsjson11_deserializeDocumentResourceTag(&destAddr, value); err != nil {
return err
@@ -9256,6 +9795,15 @@ func awsAwsjson11_deserializeOpDocumentAllocateConnectionOnInterconnectOutput(v
sv.ConnectionState = types.ConnectionState(jtv)
}
+ case "encryptionMode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EncryptionMode to be of type string, got %T instead", value)
+ }
+ sv.EncryptionMode = ptr.String(jtv)
+ }
+
case "hasLogicalRedundancy":
if value != nil {
jtv, ok := value.(string)
@@ -9305,6 +9853,20 @@ func awsAwsjson11_deserializeOpDocumentAllocateConnectionOnInterconnectOutput(v
sv.Location = ptr.String(jtv)
}
+ case "macSecCapable":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected MacSecCapable to be of type *bool, got %T instead", value)
+ }
+ sv.MacSecCapable = ptr.Bool(jtv)
+ }
+
+ case "macSecKeys":
+ if err := awsAwsjson11_deserializeDocumentMacSecKeyList(&sv.MacSecKeys, value); err != nil {
+ return err
+ }
+
case "ownerAccount":
if value != nil {
jtv, ok := value.(string)
@@ -9323,6 +9885,15 @@ func awsAwsjson11_deserializeOpDocumentAllocateConnectionOnInterconnectOutput(v
sv.PartnerName = ptr.String(jtv)
}
+ case "portEncryptionStatus":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PortEncryptionStatus to be of type string, got %T instead", value)
+ }
+ sv.PortEncryptionStatus = ptr.String(jtv)
+ }
+
case "providerName":
if value != nil {
jtv, ok := value.(string)
@@ -9444,6 +10015,15 @@ func awsAwsjson11_deserializeOpDocumentAllocateHostedConnectionOutput(v **Alloca
sv.ConnectionState = types.ConnectionState(jtv)
}
+ case "encryptionMode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EncryptionMode to be of type string, got %T instead", value)
+ }
+ sv.EncryptionMode = ptr.String(jtv)
+ }
+
case "hasLogicalRedundancy":
if value != nil {
jtv, ok := value.(string)
@@ -9493,6 +10073,20 @@ func awsAwsjson11_deserializeOpDocumentAllocateHostedConnectionOutput(v **Alloca
sv.Location = ptr.String(jtv)
}
+ case "macSecCapable":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected MacSecCapable to be of type *bool, got %T instead", value)
+ }
+ sv.MacSecCapable = ptr.Bool(jtv)
+ }
+
+ case "macSecKeys":
+ if err := awsAwsjson11_deserializeDocumentMacSecKeyList(&sv.MacSecKeys, value); err != nil {
+ return err
+ }
+
case "ownerAccount":
if value != nil {
jtv, ok := value.(string)
@@ -9511,6 +10105,15 @@ func awsAwsjson11_deserializeOpDocumentAllocateHostedConnectionOutput(v **Alloca
sv.PartnerName = ptr.String(jtv)
}
+ case "portEncryptionStatus":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PortEncryptionStatus to be of type string, got %T instead", value)
+ }
+ sv.PortEncryptionStatus = ptr.String(jtv)
+ }
+
case "providerName":
if value != nil {
jtv, ok := value.(string)
@@ -10170,6 +10773,15 @@ func awsAwsjson11_deserializeOpDocumentAssociateConnectionWithLagOutput(v **Asso
sv.ConnectionState = types.ConnectionState(jtv)
}
+ case "encryptionMode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EncryptionMode to be of type string, got %T instead", value)
+ }
+ sv.EncryptionMode = ptr.String(jtv)
+ }
+
case "hasLogicalRedundancy":
if value != nil {
jtv, ok := value.(string)
@@ -10219,6 +10831,20 @@ func awsAwsjson11_deserializeOpDocumentAssociateConnectionWithLagOutput(v **Asso
sv.Location = ptr.String(jtv)
}
+ case "macSecCapable":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected MacSecCapable to be of type *bool, got %T instead", value)
+ }
+ sv.MacSecCapable = ptr.Bool(jtv)
+ }
+
+ case "macSecKeys":
+ if err := awsAwsjson11_deserializeDocumentMacSecKeyList(&sv.MacSecKeys, value); err != nil {
+ return err
+ }
+
case "ownerAccount":
if value != nil {
jtv, ok := value.(string)
@@ -10237,6 +10863,15 @@ func awsAwsjson11_deserializeOpDocumentAssociateConnectionWithLagOutput(v **Asso
sv.PartnerName = ptr.String(jtv)
}
+ case "portEncryptionStatus":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PortEncryptionStatus to be of type string, got %T instead", value)
+ }
+ sv.PortEncryptionStatus = ptr.String(jtv)
+ }
+
case "providerName":
if value != nil {
jtv, ok := value.(string)
@@ -10358,6 +10993,15 @@ func awsAwsjson11_deserializeOpDocumentAssociateHostedConnectionOutput(v **Assoc
sv.ConnectionState = types.ConnectionState(jtv)
}
+ case "encryptionMode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EncryptionMode to be of type string, got %T instead", value)
+ }
+ sv.EncryptionMode = ptr.String(jtv)
+ }
+
case "hasLogicalRedundancy":
if value != nil {
jtv, ok := value.(string)
@@ -10407,6 +11051,20 @@ func awsAwsjson11_deserializeOpDocumentAssociateHostedConnectionOutput(v **Assoc
sv.Location = ptr.String(jtv)
}
+ case "macSecCapable":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected MacSecCapable to be of type *bool, got %T instead", value)
+ }
+ sv.MacSecCapable = ptr.Bool(jtv)
+ }
+
+ case "macSecKeys":
+ if err := awsAwsjson11_deserializeDocumentMacSecKeyList(&sv.MacSecKeys, value); err != nil {
+ return err
+ }
+
case "ownerAccount":
if value != nil {
jtv, ok := value.(string)
@@ -10425,6 +11083,15 @@ func awsAwsjson11_deserializeOpDocumentAssociateHostedConnectionOutput(v **Assoc
sv.PartnerName = ptr.String(jtv)
}
+ case "portEncryptionStatus":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PortEncryptionStatus to be of type string, got %T instead", value)
+ }
+ sv.PortEncryptionStatus = ptr.String(jtv)
+ }
+
case "providerName":
if value != nil {
jtv, ok := value.(string)
@@ -10470,6 +11137,51 @@ func awsAwsjson11_deserializeOpDocumentAssociateHostedConnectionOutput(v **Assoc
return nil
}
+func awsAwsjson11_deserializeOpDocumentAssociateMacSecKeyOutput(v **AssociateMacSecKeyOutput, 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 *AssociateMacSecKeyOutput
+ if *v == nil {
+ sv = &AssociateMacSecKeyOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "connectionId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ConnectionId to be of type string, got %T instead", value)
+ }
+ sv.ConnectionId = ptr.String(jtv)
+ }
+
+ case "macSecKeys":
+ if err := awsAwsjson11_deserializeDocumentMacSecKeyList(&sv.MacSecKeys, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeOpDocumentAssociateVirtualInterfaceOutput(v **AssociateVirtualInterfaceOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -10993,6 +11705,15 @@ func awsAwsjson11_deserializeOpDocumentCreateConnectionOutput(v **CreateConnecti
sv.ConnectionState = types.ConnectionState(jtv)
}
+ case "encryptionMode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EncryptionMode to be of type string, got %T instead", value)
+ }
+ sv.EncryptionMode = ptr.String(jtv)
+ }
+
case "hasLogicalRedundancy":
if value != nil {
jtv, ok := value.(string)
@@ -11042,6 +11763,20 @@ func awsAwsjson11_deserializeOpDocumentCreateConnectionOutput(v **CreateConnecti
sv.Location = ptr.String(jtv)
}
+ case "macSecCapable":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected MacSecCapable to be of type *bool, got %T instead", value)
+ }
+ sv.MacSecCapable = ptr.Bool(jtv)
+ }
+
+ case "macSecKeys":
+ if err := awsAwsjson11_deserializeDocumentMacSecKeyList(&sv.MacSecKeys, value); err != nil {
+ return err
+ }
+
case "ownerAccount":
if value != nil {
jtv, ok := value.(string)
@@ -11060,13 +11795,22 @@ func awsAwsjson11_deserializeOpDocumentCreateConnectionOutput(v **CreateConnecti
sv.PartnerName = ptr.String(jtv)
}
- case "providerName":
+ case "portEncryptionStatus":
if value != nil {
jtv, ok := value.(string)
if !ok {
- return fmt.Errorf("expected ProviderName to be of type string, got %T instead", value)
+ return fmt.Errorf("expected PortEncryptionStatus to be of type string, got %T instead", value)
}
- sv.ProviderName = ptr.String(jtv)
+ sv.PortEncryptionStatus = ptr.String(jtv)
+ }
+
+ case "providerName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ProviderName to be of type string, got %T instead", value)
+ }
+ sv.ProviderName = ptr.String(jtv)
}
case "region":
@@ -11433,6 +12177,15 @@ func awsAwsjson11_deserializeOpDocumentCreateLagOutput(v **CreateLagOutput, valu
sv.ConnectionsBandwidth = ptr.String(jtv)
}
+ case "encryptionMode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EncryptionMode to be of type string, got %T instead", value)
+ }
+ sv.EncryptionMode = ptr.String(jtv)
+ }
+
case "hasLogicalRedundancy":
if value != nil {
jtv, ok := value.(string)
@@ -11487,6 +12240,20 @@ func awsAwsjson11_deserializeOpDocumentCreateLagOutput(v **CreateLagOutput, valu
sv.Location = ptr.String(jtv)
}
+ case "macSecCapable":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected MacSecCapable to be of type *bool, got %T instead", value)
+ }
+ sv.MacSecCapable = ptr.Bool(jtv)
+ }
+
+ case "macSecKeys":
+ if err := awsAwsjson11_deserializeDocumentMacSecKeyList(&sv.MacSecKeys, value); err != nil {
+ return err
+ }
+
case "minimumLinks":
if value != nil {
jtv, ok := value.(json.Number)
@@ -12204,6 +12971,15 @@ func awsAwsjson11_deserializeOpDocumentDeleteConnectionOutput(v **DeleteConnecti
sv.ConnectionState = types.ConnectionState(jtv)
}
+ case "encryptionMode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EncryptionMode to be of type string, got %T instead", value)
+ }
+ sv.EncryptionMode = ptr.String(jtv)
+ }
+
case "hasLogicalRedundancy":
if value != nil {
jtv, ok := value.(string)
@@ -12253,6 +13029,20 @@ func awsAwsjson11_deserializeOpDocumentDeleteConnectionOutput(v **DeleteConnecti
sv.Location = ptr.String(jtv)
}
+ case "macSecCapable":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected MacSecCapable to be of type *bool, got %T instead", value)
+ }
+ sv.MacSecCapable = ptr.Bool(jtv)
+ }
+
+ case "macSecKeys":
+ if err := awsAwsjson11_deserializeDocumentMacSecKeyList(&sv.MacSecKeys, value); err != nil {
+ return err
+ }
+
case "ownerAccount":
if value != nil {
jtv, ok := value.(string)
@@ -12271,6 +13061,15 @@ func awsAwsjson11_deserializeOpDocumentDeleteConnectionOutput(v **DeleteConnecti
sv.PartnerName = ptr.String(jtv)
}
+ case "portEncryptionStatus":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PortEncryptionStatus to be of type string, got %T instead", value)
+ }
+ sv.PortEncryptionStatus = ptr.String(jtv)
+ }
+
case "providerName":
if value != nil {
jtv, ok := value.(string)
@@ -12527,6 +13326,15 @@ func awsAwsjson11_deserializeOpDocumentDeleteLagOutput(v **DeleteLagOutput, valu
sv.ConnectionsBandwidth = ptr.String(jtv)
}
+ case "encryptionMode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EncryptionMode to be of type string, got %T instead", value)
+ }
+ sv.EncryptionMode = ptr.String(jtv)
+ }
+
case "hasLogicalRedundancy":
if value != nil {
jtv, ok := value.(string)
@@ -12581,6 +13389,20 @@ func awsAwsjson11_deserializeOpDocumentDeleteLagOutput(v **DeleteLagOutput, valu
sv.Location = ptr.String(jtv)
}
+ case "macSecCapable":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected MacSecCapable to be of type *bool, got %T instead", value)
+ }
+ sv.MacSecCapable = ptr.Bool(jtv)
+ }
+
+ case "macSecKeys":
+ if err := awsAwsjson11_deserializeDocumentMacSecKeyList(&sv.MacSecKeys, value); err != nil {
+ return err
+ }
+
case "minimumLinks":
if value != nil {
jtv, ok := value.(json.Number)
@@ -13393,6 +14215,15 @@ func awsAwsjson11_deserializeOpDocumentDisassociateConnectionFromLagOutput(v **D
sv.ConnectionState = types.ConnectionState(jtv)
}
+ case "encryptionMode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EncryptionMode to be of type string, got %T instead", value)
+ }
+ sv.EncryptionMode = ptr.String(jtv)
+ }
+
case "hasLogicalRedundancy":
if value != nil {
jtv, ok := value.(string)
@@ -13442,6 +14273,20 @@ func awsAwsjson11_deserializeOpDocumentDisassociateConnectionFromLagOutput(v **D
sv.Location = ptr.String(jtv)
}
+ case "macSecCapable":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected MacSecCapable to be of type *bool, got %T instead", value)
+ }
+ sv.MacSecCapable = ptr.Bool(jtv)
+ }
+
+ case "macSecKeys":
+ if err := awsAwsjson11_deserializeDocumentMacSecKeyList(&sv.MacSecKeys, value); err != nil {
+ return err
+ }
+
case "ownerAccount":
if value != nil {
jtv, ok := value.(string)
@@ -13460,6 +14305,15 @@ func awsAwsjson11_deserializeOpDocumentDisassociateConnectionFromLagOutput(v **D
sv.PartnerName = ptr.String(jtv)
}
+ case "portEncryptionStatus":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PortEncryptionStatus to be of type string, got %T instead", value)
+ }
+ sv.PortEncryptionStatus = ptr.String(jtv)
+ }
+
case "providerName":
if value != nil {
jtv, ok := value.(string)
@@ -13505,6 +14359,51 @@ func awsAwsjson11_deserializeOpDocumentDisassociateConnectionFromLagOutput(v **D
return nil
}
+func awsAwsjson11_deserializeOpDocumentDisassociateMacSecKeyOutput(v **DisassociateMacSecKeyOutput, 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 *DisassociateMacSecKeyOutput
+ if *v == nil {
+ sv = &DisassociateMacSecKeyOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "connectionId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ConnectionId to be of type string, got %T instead", value)
+ }
+ sv.ConnectionId = ptr.String(jtv)
+ }
+
+ case "macSecKeys":
+ if err := awsAwsjson11_deserializeDocumentMacSecKeyList(&sv.MacSecKeys, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeOpDocumentListVirtualInterfaceTestHistoryOutput(v **ListVirtualInterfaceTestHistoryOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -13684,6 +14583,226 @@ func awsAwsjson11_deserializeOpDocumentUntagResourceOutput(v **UntagResourceOutp
return nil
}
+func awsAwsjson11_deserializeOpDocumentUpdateConnectionOutput(v **UpdateConnectionOutput, 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 *UpdateConnectionOutput
+ if *v == nil {
+ sv = &UpdateConnectionOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "awsDevice":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AwsDevice to be of type string, got %T instead", value)
+ }
+ sv.AwsDevice = ptr.String(jtv)
+ }
+
+ case "awsDeviceV2":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AwsDeviceV2 to be of type string, got %T instead", value)
+ }
+ sv.AwsDeviceV2 = ptr.String(jtv)
+ }
+
+ case "bandwidth":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Bandwidth to be of type string, got %T instead", value)
+ }
+ sv.Bandwidth = ptr.String(jtv)
+ }
+
+ case "connectionId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ConnectionId to be of type string, got %T instead", value)
+ }
+ sv.ConnectionId = ptr.String(jtv)
+ }
+
+ case "connectionName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ConnectionName to be of type string, got %T instead", value)
+ }
+ sv.ConnectionName = ptr.String(jtv)
+ }
+
+ case "connectionState":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ConnectionState to be of type string, got %T instead", value)
+ }
+ sv.ConnectionState = types.ConnectionState(jtv)
+ }
+
+ case "encryptionMode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EncryptionMode to be of type string, got %T instead", value)
+ }
+ sv.EncryptionMode = ptr.String(jtv)
+ }
+
+ case "hasLogicalRedundancy":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected HasLogicalRedundancy to be of type string, got %T instead", value)
+ }
+ sv.HasLogicalRedundancy = types.HasLogicalRedundancy(jtv)
+ }
+
+ case "jumboFrameCapable":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected JumboFrameCapable to be of type *bool, got %T instead", value)
+ }
+ sv.JumboFrameCapable = ptr.Bool(jtv)
+ }
+
+ case "lagId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected LagId to be of type string, got %T instead", value)
+ }
+ sv.LagId = ptr.String(jtv)
+ }
+
+ case "loaIssueTime":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected LoaIssueTime to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.LoaIssueTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ }
+
+ case "location":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected LocationCode to be of type string, got %T instead", value)
+ }
+ sv.Location = ptr.String(jtv)
+ }
+
+ case "macSecCapable":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected MacSecCapable to be of type *bool, got %T instead", value)
+ }
+ sv.MacSecCapable = ptr.Bool(jtv)
+ }
+
+ case "macSecKeys":
+ if err := awsAwsjson11_deserializeDocumentMacSecKeyList(&sv.MacSecKeys, value); err != nil {
+ return err
+ }
+
+ case "ownerAccount":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected OwnerAccount to be of type string, got %T instead", value)
+ }
+ sv.OwnerAccount = ptr.String(jtv)
+ }
+
+ case "partnerName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PartnerName to be of type string, got %T instead", value)
+ }
+ sv.PartnerName = ptr.String(jtv)
+ }
+
+ case "portEncryptionStatus":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PortEncryptionStatus to be of type string, got %T instead", value)
+ }
+ sv.PortEncryptionStatus = ptr.String(jtv)
+ }
+
+ case "providerName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ProviderName to be of type string, got %T instead", value)
+ }
+ sv.ProviderName = ptr.String(jtv)
+ }
+
+ case "region":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Region to be of type string, got %T instead", value)
+ }
+ sv.Region = ptr.String(jtv)
+ }
+
+ case "tags":
+ if err := awsAwsjson11_deserializeDocumentTagList(&sv.Tags, value); err != nil {
+ return err
+ }
+
+ case "vlan":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected VLAN to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.Vlan = int32(i64)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeOpDocumentUpdateDirectConnectGatewayAssociationOutput(v **UpdateDirectConnectGatewayAssociationOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -13783,6 +14902,15 @@ func awsAwsjson11_deserializeOpDocumentUpdateLagOutput(v **UpdateLagOutput, valu
sv.ConnectionsBandwidth = ptr.String(jtv)
}
+ case "encryptionMode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EncryptionMode to be of type string, got %T instead", value)
+ }
+ sv.EncryptionMode = ptr.String(jtv)
+ }
+
case "hasLogicalRedundancy":
if value != nil {
jtv, ok := value.(string)
@@ -13837,6 +14965,20 @@ func awsAwsjson11_deserializeOpDocumentUpdateLagOutput(v **UpdateLagOutput, valu
sv.Location = ptr.String(jtv)
}
+ case "macSecCapable":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected MacSecCapable to be of type *bool, got %T instead", value)
+ }
+ sv.MacSecCapable = ptr.Bool(jtv)
+ }
+
+ case "macSecKeys":
+ if err := awsAwsjson11_deserializeDocumentMacSecKeyList(&sv.MacSecKeys, value); err != nil {
+ return err
+ }
+
case "minimumLinks":
if value != nil {
jtv, ok := value.(json.Number)
diff --git a/service/directconnect/go.mod b/service/directconnect/go.mod
index e9b39fa2bdc..c6a2400ad61 100644
--- a/service/directconnect/go.mod
+++ b/service/directconnect/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/directconnect/go.sum b/service/directconnect/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/directconnect/go.sum
+++ b/service/directconnect/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/directconnect/serializers.go b/service/directconnect/serializers.go
index f45f7bebe87..1c271e724c2 100644
--- a/service/directconnect/serializers.go
+++ b/service/directconnect/serializers.go
@@ -391,6 +391,53 @@ func (m *awsAwsjson11_serializeOpAssociateHostedConnection) HandleSerialize(ctx
return next.HandleSerialize(ctx, in)
}
+type awsAwsjson11_serializeOpAssociateMacSecKey struct {
+}
+
+func (*awsAwsjson11_serializeOpAssociateMacSecKey) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_serializeOpAssociateMacSecKey) 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.(*AssociateMacSecKeyInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("OvertureService.AssociateMacSecKey")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentAssociateMacSecKeyInput(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_serializeOpAssociateVirtualInterface struct {
}
@@ -2261,6 +2308,53 @@ func (m *awsAwsjson11_serializeOpDisassociateConnectionFromLag) HandleSerialize(
return next.HandleSerialize(ctx, in)
}
+type awsAwsjson11_serializeOpDisassociateMacSecKey struct {
+}
+
+func (*awsAwsjson11_serializeOpDisassociateMacSecKey) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_serializeOpDisassociateMacSecKey) 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.(*DisassociateMacSecKeyInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("OvertureService.DisassociateMacSecKey")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentDisassociateMacSecKeyInput(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_serializeOpListVirtualInterfaceTestHistory struct {
}
@@ -2496,6 +2590,53 @@ func (m *awsAwsjson11_serializeOpUntagResource) HandleSerialize(ctx context.Cont
return next.HandleSerialize(ctx, in)
}
+type awsAwsjson11_serializeOpUpdateConnection struct {
+}
+
+func (*awsAwsjson11_serializeOpUpdateConnection) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_serializeOpUpdateConnection) 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.(*UpdateConnectionInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("OvertureService.UpdateConnection")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentUpdateConnectionInput(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_serializeOpUpdateDirectConnectGatewayAssociation struct {
}
@@ -3305,6 +3446,33 @@ func awsAwsjson11_serializeOpDocumentAssociateHostedConnectionInput(v *Associate
return nil
}
+func awsAwsjson11_serializeOpDocumentAssociateMacSecKeyInput(v *AssociateMacSecKeyInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Cak != nil {
+ ok := object.Key("cak")
+ ok.String(*v.Cak)
+ }
+
+ if v.Ckn != nil {
+ ok := object.Key("ckn")
+ ok.String(*v.Ckn)
+ }
+
+ if v.ConnectionId != nil {
+ ok := object.Key("connectionId")
+ ok.String(*v.ConnectionId)
+ }
+
+ if v.SecretARN != nil {
+ ok := object.Key("secretARN")
+ ok.String(*v.SecretARN)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeOpDocumentAssociateVirtualInterfaceInput(v *AssociateVirtualInterfaceInput, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -3433,6 +3601,11 @@ func awsAwsjson11_serializeOpDocumentCreateConnectionInput(v *CreateConnectionIn
ok.String(*v.ProviderName)
}
+ if v.RequestMACSec != nil {
+ ok := object.Key("requestMACSec")
+ ok.Boolean(*v.RequestMACSec)
+ }
+
if v.Tags != nil {
ok := object.Key("tags")
if err := awsAwsjson11_serializeDocumentTagList(v.Tags, ok); err != nil {
@@ -3605,6 +3778,11 @@ func awsAwsjson11_serializeOpDocumentCreateLagInput(v *CreateLagInput, value smi
ok.String(*v.ProviderName)
}
+ if v.RequestMACSec != nil {
+ ok := object.Key("requestMACSec")
+ ok.Boolean(*v.RequestMACSec)
+ }
+
if v.Tags != nil {
ok := object.Key("tags")
if err := awsAwsjson11_serializeDocumentTagList(v.Tags, ok); err != nil {
@@ -4085,6 +4263,23 @@ func awsAwsjson11_serializeOpDocumentDisassociateConnectionFromLagInput(v *Disas
return nil
}
+func awsAwsjson11_serializeOpDocumentDisassociateMacSecKeyInput(v *DisassociateMacSecKeyInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.ConnectionId != nil {
+ ok := object.Key("connectionId")
+ ok.String(*v.ConnectionId)
+ }
+
+ if v.SecretARN != nil {
+ ok := object.Key("secretARN")
+ ok.String(*v.SecretARN)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeOpDocumentListVirtualInterfaceTestHistoryInput(v *ListVirtualInterfaceTestHistoryInput, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -4198,6 +4393,28 @@ func awsAwsjson11_serializeOpDocumentUntagResourceInput(v *UntagResourceInput, v
return nil
}
+func awsAwsjson11_serializeOpDocumentUpdateConnectionInput(v *UpdateConnectionInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.ConnectionId != nil {
+ ok := object.Key("connectionId")
+ ok.String(*v.ConnectionId)
+ }
+
+ if v.ConnectionName != nil {
+ ok := object.Key("connectionName")
+ ok.String(*v.ConnectionName)
+ }
+
+ if v.EncryptionMode != nil {
+ ok := object.Key("encryptionMode")
+ ok.String(*v.EncryptionMode)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeOpDocumentUpdateDirectConnectGatewayAssociationInput(v *UpdateDirectConnectGatewayAssociationInput, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -4228,6 +4445,11 @@ func awsAwsjson11_serializeOpDocumentUpdateLagInput(v *UpdateLagInput, value smi
object := value.Object()
defer object.Close()
+ if v.EncryptionMode != nil {
+ ok := object.Key("encryptionMode")
+ ok.String(*v.EncryptionMode)
+ }
+
if v.LagId != nil {
ok := object.Key("lagId")
ok.String(*v.LagId)
diff --git a/service/directconnect/types/errors.go b/service/directconnect/types/errors.go
index f4cbc4e72bf..71bbbb3c00b 100644
--- a/service/directconnect/types/errors.go
+++ b/service/directconnect/types/errors.go
@@ -39,7 +39,7 @@ func (e *DirectConnectServerException) ErrorMessage() string {
return *e.Message
}
func (e *DirectConnectServerException) ErrorCode() string { return "DirectConnectServerException" }
-func (e *DirectConnectServerException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+func (e *DirectConnectServerException) ErrorFault() smithy.ErrorFault { return smithy.FaultServer }
// A tag key was specified more than once.
type DuplicateTagKeysException struct {
diff --git a/service/directconnect/types/types.go b/service/directconnect/types/types.go
index 9e23be5afba..048da18c053 100644
--- a/service/directconnect/types/types.go
+++ b/service/directconnect/types/types.go
@@ -133,6 +133,10 @@ type Connection struct {
// the connection is not available.
ConnectionState ConnectionState
+ // The MAC Security (MACsec) connection encryption mode. The valid values are
+ // no_encrypt, should_encrypt, and must_encrypt.
+ EncryptionMode *string
+
// Indicates whether the connection supports a secondary BGP peer in the same
// address family (IPv4/IPv6).
HasLogicalRedundancy HasLogicalRedundancy
@@ -149,6 +153,12 @@ type Connection struct {
// The location of the connection.
Location *string
+ // Indicates whether the connection supports MAC Security (MACsec).
+ MacSecCapable *bool
+
+ // The MAC Security (MACsec) security keys associated with the connection.
+ MacSecKeys []MacSecKey
+
// The ID of the AWS account that owns the connection.
OwnerAccount *string
@@ -156,6 +166,11 @@ type Connection struct {
// connection.
PartnerName *string
+ // The MAC Security (MACsec) port link status of the connection. The valid values
+ // are Encryption Up, which means that there is an active Connection Key Name, or
+ // Encryption Down.
+ PortEncryptionStatus *string
+
// The name of the service provider associated with the connection.
ProviderName *string
@@ -427,6 +442,10 @@ type Lag struct {
// possible values are 1Gbps and 10Gbps.
ConnectionsBandwidth *string
+ // The LAG MAC Security (MACsec) encryption mode. The valid values are no_encrypt,
+ // should_encrypt, and must_encrypt.
+ EncryptionMode *string
+
// Indicates whether the LAG supports a secondary BGP peer in the same address
// family (IPv4/IPv6).
HasLogicalRedundancy HasLogicalRedundancy
@@ -466,6 +485,12 @@ type Lag struct {
// The location of the LAG.
Location *string
+ // Indicates whether the LAG supports MAC Security (MACsec).
+ MacSecCapable *bool
+
+ // The MAC Security (MACsec) security keys associated with the LAG.
+ MacSecKeys []MacSecKey
+
// The minimum number of physical dedicated connections that must be operational
// for the LAG itself to be operational.
MinimumLinks int32
@@ -502,6 +527,9 @@ type Loa struct {
// Information about an AWS Direct Connect location.
type Location struct {
+ // The available MAC Security (MACsec) port speeds for the location.
+ AvailableMacSecPortSpeeds []string
+
// The available port speeds for the location.
AvailablePortSpeeds []string
@@ -519,6 +547,37 @@ type Location struct {
Region *string
}
+// Information about the MAC Security (MACsec) secret key.
+type MacSecKey struct {
+
+ // The Connection Key Name (CKN) for the MAC Security secret key.
+ Ckn *string
+
+ // The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key.
+ SecretARN *string
+
+ // The date that the MAC Security (MACsec) secret key takes effect. The value is
+ // displayed in UTC format.
+ StartOn *string
+
+ // The state of the MAC Security (MACsec) secret key. The possible values are:
+ //
+ // *
+ // associating: The MAC Security (MACsec) secret key is being validated and not yet
+ // associated with the connection or LAG.
+ //
+ // * associated: The MAC Security (MACsec)
+ // secret key is validated and associated with the connection or LAG.
+ //
+ // *
+ // disassociating: The MAC Security (MACsec) secret key is being disassociated from
+ // the connection or LAG
+ //
+ // * disassociated: The MAC Security (MACsec) secret key is
+ // no longer associated with the connection or LAG.
+ State *string
+}
+
// Information about a new BGP peer.
type NewBGPPeer struct {
diff --git a/service/directconnect/validators.go b/service/directconnect/validators.go
index 03d02333a3e..3e8add5dff0 100644
--- a/service/directconnect/validators.go
+++ b/service/directconnect/validators.go
@@ -170,6 +170,26 @@ func (m *validateOpAssociateHostedConnection) HandleInitialize(ctx context.Conte
return next.HandleInitialize(ctx, in)
}
+type validateOpAssociateMacSecKey struct {
+}
+
+func (*validateOpAssociateMacSecKey) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpAssociateMacSecKey) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*AssociateMacSecKeyInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpAssociateMacSecKeyInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpAssociateVirtualInterface struct {
}
@@ -710,6 +730,26 @@ func (m *validateOpDisassociateConnectionFromLag) HandleInitialize(ctx context.C
return next.HandleInitialize(ctx, in)
}
+type validateOpDisassociateMacSecKey struct {
+}
+
+func (*validateOpDisassociateMacSecKey) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDisassociateMacSecKey) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DisassociateMacSecKeyInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDisassociateMacSecKeyInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpStartBgpFailoverTest struct {
}
@@ -790,6 +830,26 @@ func (m *validateOpUntagResource) HandleInitialize(ctx context.Context, in middl
return next.HandleInitialize(ctx, in)
}
+type validateOpUpdateConnection struct {
+}
+
+func (*validateOpUpdateConnection) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpUpdateConnection) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*UpdateConnectionInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpUpdateConnectionInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpUpdateLag struct {
}
@@ -862,6 +922,10 @@ func addOpAssociateHostedConnectionValidationMiddleware(stack *middleware.Stack)
return stack.Initialize.Add(&validateOpAssociateHostedConnection{}, middleware.After)
}
+func addOpAssociateMacSecKeyValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpAssociateMacSecKey{}, middleware.After)
+}
+
func addOpAssociateVirtualInterfaceValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpAssociateVirtualInterface{}, middleware.After)
}
@@ -970,6 +1034,10 @@ func addOpDisassociateConnectionFromLagValidationMiddleware(stack *middleware.St
return stack.Initialize.Add(&validateOpDisassociateConnectionFromLag{}, middleware.After)
}
+func addOpDisassociateMacSecKeyValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDisassociateMacSecKey{}, middleware.After)
+}
+
func addOpStartBgpFailoverTestValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpStartBgpFailoverTest{}, middleware.After)
}
@@ -986,6 +1054,10 @@ func addOpUntagResourceValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpUntagResource{}, middleware.After)
}
+func addOpUpdateConnectionValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpUpdateConnection{}, middleware.After)
+}
+
func addOpUpdateLagValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpUpdateLag{}, middleware.After)
}
@@ -1325,6 +1397,21 @@ func validateOpAssociateHostedConnectionInput(v *AssociateHostedConnectionInput)
}
}
+func validateOpAssociateMacSecKeyInput(v *AssociateMacSecKeyInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "AssociateMacSecKeyInput"}
+ if v.ConnectionId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("ConnectionId"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpAssociateVirtualInterfaceInput(v *AssociateVirtualInterfaceInput) error {
if v == nil {
return nil
@@ -1804,6 +1891,24 @@ func validateOpDisassociateConnectionFromLagInput(v *DisassociateConnectionFromL
}
}
+func validateOpDisassociateMacSecKeyInput(v *DisassociateMacSecKeyInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DisassociateMacSecKeyInput"}
+ if v.ConnectionId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("ConnectionId"))
+ }
+ if v.SecretARN == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("SecretARN"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpStartBgpFailoverTestInput(v *StartBgpFailoverTestInput) error {
if v == nil {
return nil
@@ -1874,6 +1979,21 @@ func validateOpUntagResourceInput(v *UntagResourceInput) error {
}
}
+func validateOpUpdateConnectionInput(v *UpdateConnectionInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "UpdateConnectionInput"}
+ if v.ConnectionId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("ConnectionId"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpUpdateLagInput(v *UpdateLagInput) error {
if v == nil {
return nil
diff --git a/service/directoryservice/go.mod b/service/directoryservice/go.mod
index 14dc75677f5..a9a9933c61c 100644
--- a/service/directoryservice/go.mod
+++ b/service/directoryservice/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/directoryservice/go.sum b/service/directoryservice/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/directoryservice/go.sum
+++ b/service/directoryservice/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/dlm/go.mod b/service/dlm/go.mod
index 9ca9e84bb0d..4bd8c88c775 100644
--- a/service/dlm/go.mod
+++ b/service/dlm/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/dlm/go.sum b/service/dlm/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/dlm/go.sum
+++ b/service/dlm/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/docdb/go.mod b/service/docdb/go.mod
index 9352e9a05d5..ea15af6e1c6 100644
--- a/service/docdb/go.mod
+++ b/service/docdb/go.mod
@@ -5,7 +5,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.0.4
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/docdb/go.sum b/service/docdb/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/docdb/go.sum
+++ b/service/docdb/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/dynamodb/go.mod b/service/dynamodb/go.mod
index 2585740d31e..581a085f844 100644
--- a/service/dynamodb/go.mod
+++ b/service/dynamodb/go.mod
@@ -5,7 +5,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.0.2
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/dynamodb/go.sum b/service/dynamodb/go.sum
index 1b0499b1f27..8471403f077 100644
--- a/service/dynamodb/go.sum
+++ b/service/dynamodb/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
diff --git a/service/dynamodbstreams/go.mod b/service/dynamodbstreams/go.mod
index 5a492f4d5bc..15a2a2cd11d 100644
--- a/service/dynamodbstreams/go.mod
+++ b/service/dynamodbstreams/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/dynamodbstreams/go.sum b/service/dynamodbstreams/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/dynamodbstreams/go.sum
+++ b/service/dynamodbstreams/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/ebs/go.mod b/service/ebs/go.mod
index 27c58a3c9d0..83d57e1df84 100644
--- a/service/ebs/go.mod
+++ b/service/ebs/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/ebs/go.sum b/service/ebs/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/ebs/go.sum
+++ b/service/ebs/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/ec2/api_op_AssociateEnclaveCertificateIamRole.go b/service/ec2/api_op_AssociateEnclaveCertificateIamRole.go
index f1241a09254..ec1dde2ff5d 100644
--- a/service/ec2/api_op_AssociateEnclaveCertificateIamRole.go
+++ b/service/ec2/api_op_AssociateEnclaveCertificateIamRole.go
@@ -16,14 +16,14 @@ import (
// information, see AWS Certificate Manager for Nitro Enclaves
// (https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave-refapp.html) in
// the AWS Nitro Enclaves User Guide. When the IAM role is associated with the ACM
-// certificate, places the certificate, certificate chain, and encrypted private
-// key in an Amazon S3 bucket that only the associated IAM role can access. The
+// certificate, the certificate, certificate chain, and encrypted private key are
+// placed in an Amazon S3 bucket that only the associated IAM role can access. The
// private key of the certificate is encrypted with an AWS-managed KMS customer
// master (CMK) that has an attached attestation-based CMK policy. To enable the
// IAM role to access the Amazon S3 object, you must grant it permission to call
// s3:GetObject on the Amazon S3 bucket returned by the command. To enable the IAM
// role to access the AWS KMS CMK, you must grant it permission to call kms:Decrypt
-// on AWS KMS CMK returned by the command. For more information, see Grant the
+// on the AWS KMS CMK returned by the command. For more information, see Grant the
// role permission to access the certificate and encryption key
// (https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave-refapp.html#add-policy)
// in the AWS Nitro Enclaves User Guide.
diff --git a/service/ec2/api_op_CreateReplaceRootVolumeTask.go b/service/ec2/api_op_CreateReplaceRootVolumeTask.go
new file mode 100644
index 00000000000..945da7cb9b1
--- /dev/null
+++ b/service/ec2/api_op_CreateReplaceRootVolumeTask.go
@@ -0,0 +1,177 @@
+// 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"
+)
+
+// Creates a root volume replacement task for an Amazon EC2 instance. The root
+// volume can either be restored to its initial launch state, or it can be restored
+// using a specific snapshot. For more information, see Replace a root volume
+// (https://docs.aws.amazon.com/) in the Amazon Elastic Compute Cloud User Guide.
+func (c *Client) CreateReplaceRootVolumeTask(ctx context.Context, params *CreateReplaceRootVolumeTaskInput, optFns ...func(*Options)) (*CreateReplaceRootVolumeTaskOutput, error) {
+ if params == nil {
+ params = &CreateReplaceRootVolumeTaskInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "CreateReplaceRootVolumeTask", params, optFns, addOperationCreateReplaceRootVolumeTaskMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*CreateReplaceRootVolumeTaskOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type CreateReplaceRootVolumeTaskInput struct {
+
+ // The ID of the instance for which to replace the root volume.
+ //
+ // This member is required.
+ InstanceId *string
+
+ // Unique, case-sensitive identifier you provide to ensure the idempotency of the
+ // request. If you do not specify a client token, a randomly generated token is
+ // used for the request to ensure idempotency. For more information, see Ensuring
+ // Idempotency
+ // (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html).
+ ClientToken *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 ID of the snapshot from which to restore the replacement root volume. If you
+ // want to restore the volume to the initial launch state, omit this parameter.
+ SnapshotId *string
+
+ // The tags to apply to the root volume replacement task.
+ TagSpecifications []types.TagSpecification
+}
+
+type CreateReplaceRootVolumeTaskOutput struct {
+
+ // Information about the root volume replacement task.
+ ReplaceRootVolumeTask *types.ReplaceRootVolumeTask
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationCreateReplaceRootVolumeTaskMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsEc2query_serializeOpCreateReplaceRootVolumeTask{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsEc2query_deserializeOpCreateReplaceRootVolumeTask{}, 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 = addIdempotencyToken_opCreateReplaceRootVolumeTaskMiddleware(stack, options); err != nil {
+ return err
+ }
+ if err = addOpCreateReplaceRootVolumeTaskValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateReplaceRootVolumeTask(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
+}
+
+type idempotencyToken_initializeOpCreateReplaceRootVolumeTask struct {
+ tokenProvider IdempotencyTokenProvider
+}
+
+func (*idempotencyToken_initializeOpCreateReplaceRootVolumeTask) ID() string {
+ return "OperationIdempotencyTokenAutoFill"
+}
+
+func (m *idempotencyToken_initializeOpCreateReplaceRootVolumeTask) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ if m.tokenProvider == nil {
+ return next.HandleInitialize(ctx, in)
+ }
+
+ input, ok := in.Parameters.(*CreateReplaceRootVolumeTaskInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("expected middleware input to be of type *CreateReplaceRootVolumeTaskInput ")
+ }
+
+ if input.ClientToken == nil {
+ t, err := m.tokenProvider.GetIdempotencyToken()
+ if err != nil {
+ return out, metadata, err
+ }
+ input.ClientToken = &t
+ }
+ return next.HandleInitialize(ctx, in)
+}
+func addIdempotencyToken_opCreateReplaceRootVolumeTaskMiddleware(stack *middleware.Stack, cfg Options) error {
+ return stack.Initialize.Add(&idempotencyToken_initializeOpCreateReplaceRootVolumeTask{tokenProvider: cfg.IdempotencyTokenProvider}, middleware.Before)
+}
+
+func newServiceMetadataMiddleware_opCreateReplaceRootVolumeTask(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "ec2",
+ OperationName: "CreateReplaceRootVolumeTask",
+ }
+}
diff --git a/service/ec2/api_op_DescribeImageAttribute.go b/service/ec2/api_op_DescribeImageAttribute.go
index 6e7b26bfd27..d2490f00b8e 100644
--- a/service/ec2/api_op_DescribeImageAttribute.go
+++ b/service/ec2/api_op_DescribeImageAttribute.go
@@ -56,6 +56,9 @@ type DescribeImageAttributeOutput struct {
// The block device mapping entries.
BlockDeviceMappings []types.BlockDeviceMapping
+ // Describes a value for a resource attribute that is a String.
+ BootMode *types.AttributeValue
+
// A description for the AMI.
Description *types.AttributeValue
diff --git a/service/ec2/api_op_DescribeInstanceAttribute.go b/service/ec2/api_op_DescribeInstanceAttribute.go
index e4763c7109f..571c4613ed2 100644
--- a/service/ec2/api_op_DescribeInstanceAttribute.go
+++ b/service/ec2/api_op_DescribeInstanceAttribute.go
@@ -96,9 +96,12 @@ type DescribeInstanceAttributeOutput struct {
// The device name of the root device volume (for example, /dev/sda1).
RootDeviceName *types.AttributeValue
- // Indicates whether source/destination checking is enabled. A value of true means
- // that checking is enabled, and false means that checking is disabled. This value
- // must be false for a NAT instance to perform NAT.
+ // Enable or disable source/destination checks, which ensure that the instance is
+ // either the source or the destination of any traffic that it receives. If the
+ // value is true, source/destination checks are enabled; otherwise, they are
+ // disabled. The default value is true. You must disable source/destination checks
+ // if the instance runs services such as network address translation, routing, or
+ // firewalls.
SourceDestCheck *types.AttributeBooleanValue
// Indicates whether enhanced networking with the Intel 82599 Virtual Function
diff --git a/service/ec2/api_op_DescribeInstanceTypes.go b/service/ec2/api_op_DescribeInstanceTypes.go
index cae83118acc..ff4be549649 100644
--- a/service/ec2/api_op_DescribeInstanceTypes.go
+++ b/service/ec2/api_op_DescribeInstanceTypes.go
@@ -126,6 +126,10 @@ type DescribeInstanceTypesInput struct {
// * memory-info.size-in-mib - The memory size.
//
// *
+ // network-info.efa-info.maximum-efa-interfaces - The maximum number of Elastic
+ // Fabric Adapters (EFAs) per instance. (true | false).
+ //
+ // *
// network-info.efa-supported - Indicates whether the instance type supports
// Elastic Fabric Adapter (EFA) (true | false).
//
@@ -157,30 +161,33 @@ type DescribeInstanceTypesInput struct {
// * processor-info.sustained-clock-speed-in-ghz - The CPU clock speed,
// in GHz.
//
- // * supported-root-device-type - The root device type (ebs |
- // instance-store).
+ // * supported-boot-mode - The boot mode (legacy-bios | uefi).
//
- // * supported-usage-class - The usage class (on-demand |
- // spot).
+ // *
+ // supported-root-device-type - The root device type (ebs | instance-store).
//
- // * supported-virtualization-type - The virtualization type (hvm |
- // paravirtual).
+ // *
+ // supported-usage-class - The usage class (on-demand | spot).
//
- // * vcpu-info.default-cores - The default number of cores for the
- // instance type.
+ // *
+ // supported-virtualization-type - The virtualization type (hvm | paravirtual).
//
- // * vcpu-info.default-threads-per-core - The default number of
- // threads per core for the instance type.
+ // *
+ // vcpu-info.default-cores - The default number of cores for the instance type.
+ //
+ // *
+ // vcpu-info.default-threads-per-core - The default number of threads per core for
+ // the instance type.
//
- // * vcpu-info.default-vcpus - The default
- // number of vCPUs for the instance type.
+ // * vcpu-info.default-vcpus - The default number of vCPUs for
+ // the instance type.
//
- // * vcpu-info.valid-cores - The number of
- // cores that can be configured for the instance type.
+ // * vcpu-info.valid-cores - The number of cores that can be
+ // configured for the instance type.
//
- // *
- // vcpu-info.valid-threads-per-core - The number of threads per core that can be
- // configured for the instance type. For example, "1" or "1,2".
+ // * vcpu-info.valid-threads-per-core - The
+ // number of threads per core that can be configured for the instance type. For
+ // example, "1" or "1,2".
Filters []types.Filter
// The instance types. For more information, see Instance types
diff --git a/service/ec2/api_op_DescribeInstances.go b/service/ec2/api_op_DescribeInstances.go
index 8ee665bb8d6..9444af0ed37 100644
--- a/service/ec2/api_op_DescribeInstances.go
+++ b/service/ec2/api_op_DescribeInstances.go
@@ -272,35 +272,37 @@ type DescribeInstancesInput struct {
// * network-interface.vpc-id - The ID of the VPC for the network
// interface.
//
- // * owner-id - The AWS account ID of the instance owner.
+ // * outpost-arn - The Amazon Resource Name (ARN) of the Outpost.
//
// *
- // placement-group-name - The name of the placement group for the instance.
+ // owner-id - The AWS account ID of the instance owner.
//
- // *
- // placement-partition-number - The partition in which the instance is located.
+ // * placement-group-name -
+ // The name of the placement group for the instance.
//
- // *
- // platform - The platform. To list only Windows instances, use windows.
+ // * placement-partition-number
+ // - The partition in which the instance is located.
//
- // *
- // private-dns-name - The private IPv4 DNS name of the instance.
+ // * platform - The platform. To
+ // list only Windows instances, use windows.
//
- // *
- // private-ip-address - The private IPv4 address of the instance.
+ // * private-dns-name - The private IPv4
+ // DNS name of the instance.
//
- // * product-code -
- // The product code associated with the AMI used to launch the instance.
+ // * private-ip-address - The private IPv4 address of
+ // the instance.
//
- // *
- // product-code.type - The type of product code (devpay | marketplace).
+ // * product-code - The product code associated with the AMI used to
+ // launch the instance.
//
- // *
- // ramdisk-id - The RAM disk ID.
+ // * product-code.type - The type of product code (devpay |
+ // marketplace).
+ //
+ // * ramdisk-id - The RAM disk ID.
//
- // * reason - The reason for the current state of
- // the instance (for example, shows "User Initiated [date]" when you stop or
- // terminate the instance). Similar to the state-reason-code filter.
+ // * reason - The reason for the
+ // current state of the instance (for example, shows "User Initiated [date]" when
+ // you stop or terminate the instance). Similar to the state-reason-code filter.
//
// *
// requester-id - The ID of the entity that launched the instance on your behalf
diff --git a/service/ec2/api_op_DescribeReplaceRootVolumeTasks.go b/service/ec2/api_op_DescribeReplaceRootVolumeTasks.go
new file mode 100644
index 00000000000..a052a7e479e
--- /dev/null
+++ b/service/ec2/api_op_DescribeReplaceRootVolumeTasks.go
@@ -0,0 +1,224 @@
+// 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"
+)
+
+// Describes a root volume replacement task. For more information, see Replace a
+// root volume (https://docs.aws.amazon.com/) in the Amazon Elastic Compute Cloud
+// User Guide.
+func (c *Client) DescribeReplaceRootVolumeTasks(ctx context.Context, params *DescribeReplaceRootVolumeTasksInput, optFns ...func(*Options)) (*DescribeReplaceRootVolumeTasksOutput, error) {
+ if params == nil {
+ params = &DescribeReplaceRootVolumeTasksInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DescribeReplaceRootVolumeTasks", params, optFns, addOperationDescribeReplaceRootVolumeTasksMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DescribeReplaceRootVolumeTasksOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DescribeReplaceRootVolumeTasksInput 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
+
+ // Filter to use:
+ //
+ // * instance-id - The ID of the instance for which the root volume
+ // replacement task was created.
+ Filters []types.Filter
+
+ // The maximum number of results to return with a single call. To retrieve the
+ // remaining results, make another call with the returned nextToken value.
+ MaxResults int32
+
+ // The token for the next page of results.
+ NextToken *string
+
+ // The ID of the root volume replacement task to view.
+ ReplaceRootVolumeTaskIds []string
+}
+
+type DescribeReplaceRootVolumeTasksOutput struct {
+
+ // 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
+
+ // Information about the root volume replacement task.
+ ReplaceRootVolumeTasks []types.ReplaceRootVolumeTask
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDescribeReplaceRootVolumeTasksMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsEc2query_serializeOpDescribeReplaceRootVolumeTasks{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsEc2query_deserializeOpDescribeReplaceRootVolumeTasks{}, 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_opDescribeReplaceRootVolumeTasks(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
+}
+
+// DescribeReplaceRootVolumeTasksAPIClient is a client that implements the
+// DescribeReplaceRootVolumeTasks operation.
+type DescribeReplaceRootVolumeTasksAPIClient interface {
+ DescribeReplaceRootVolumeTasks(context.Context, *DescribeReplaceRootVolumeTasksInput, ...func(*Options)) (*DescribeReplaceRootVolumeTasksOutput, error)
+}
+
+var _ DescribeReplaceRootVolumeTasksAPIClient = (*Client)(nil)
+
+// DescribeReplaceRootVolumeTasksPaginatorOptions is the paginator options for
+// DescribeReplaceRootVolumeTasks
+type DescribeReplaceRootVolumeTasksPaginatorOptions struct {
+ // The maximum number of results to return with a single call. To retrieve the
+ // remaining results, make another call with the returned nextToken value.
+ 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
+}
+
+// DescribeReplaceRootVolumeTasksPaginator is a paginator for
+// DescribeReplaceRootVolumeTasks
+type DescribeReplaceRootVolumeTasksPaginator struct {
+ options DescribeReplaceRootVolumeTasksPaginatorOptions
+ client DescribeReplaceRootVolumeTasksAPIClient
+ params *DescribeReplaceRootVolumeTasksInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewDescribeReplaceRootVolumeTasksPaginator returns a new
+// DescribeReplaceRootVolumeTasksPaginator
+func NewDescribeReplaceRootVolumeTasksPaginator(client DescribeReplaceRootVolumeTasksAPIClient, params *DescribeReplaceRootVolumeTasksInput, optFns ...func(*DescribeReplaceRootVolumeTasksPaginatorOptions)) *DescribeReplaceRootVolumeTasksPaginator {
+ if params == nil {
+ params = &DescribeReplaceRootVolumeTasksInput{}
+ }
+
+ options := DescribeReplaceRootVolumeTasksPaginatorOptions{}
+ if params.MaxResults != 0 {
+ options.Limit = params.MaxResults
+ }
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &DescribeReplaceRootVolumeTasksPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *DescribeReplaceRootVolumeTasksPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next DescribeReplaceRootVolumeTasks page.
+func (p *DescribeReplaceRootVolumeTasksPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*DescribeReplaceRootVolumeTasksOutput, 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.DescribeReplaceRootVolumeTasks(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_opDescribeReplaceRootVolumeTasks(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "ec2",
+ OperationName: "DescribeReplaceRootVolumeTasks",
+ }
+}
diff --git a/service/ec2/api_op_DisableSerialConsoleAccess.go b/service/ec2/api_op_DisableSerialConsoleAccess.go
new file mode 100644
index 00000000000..2d761109203
--- /dev/null
+++ b/service/ec2/api_op_DisableSerialConsoleAccess.go
@@ -0,0 +1,120 @@
+// 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/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Disables access to the EC2 serial console of all instances for your account. By
+// default, access to the EC2 serial console is disabled for your account. For more
+// information, see Manage account access to the EC2 serial console
+// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configure-access-to-serial-console.html#serial-console-account-access)
+// in the Amazon EC2 User Guide.
+func (c *Client) DisableSerialConsoleAccess(ctx context.Context, params *DisableSerialConsoleAccessInput, optFns ...func(*Options)) (*DisableSerialConsoleAccessOutput, error) {
+ if params == nil {
+ params = &DisableSerialConsoleAccessInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DisableSerialConsoleAccess", params, optFns, addOperationDisableSerialConsoleAccessMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DisableSerialConsoleAccessOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DisableSerialConsoleAccessInput 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
+}
+
+type DisableSerialConsoleAccessOutput struct {
+
+ // If true, access to the EC2 serial console of all instances is enabled for your
+ // account. If false, access to the EC2 serial console of all instances is disabled
+ // for your account.
+ SerialConsoleAccessEnabled bool
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDisableSerialConsoleAccessMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsEc2query_serializeOpDisableSerialConsoleAccess{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsEc2query_deserializeOpDisableSerialConsoleAccess{}, 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_opDisableSerialConsoleAccess(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_opDisableSerialConsoleAccess(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "ec2",
+ OperationName: "DisableSerialConsoleAccess",
+ }
+}
diff --git a/service/ec2/api_op_EnableEbsEncryptionByDefault.go b/service/ec2/api_op_EnableEbsEncryptionByDefault.go
index 4ae652e4fad..4c9ec0c3a93 100644
--- a/service/ec2/api_op_EnableEbsEncryptionByDefault.go
+++ b/service/ec2/api_op_EnableEbsEncryptionByDefault.go
@@ -11,7 +11,7 @@ import (
)
// Enables EBS encryption by default for your account in the current Region. After
-// you enable encryption by default, the EBS volumes that you create are are always
+// you enable encryption by default, the EBS volumes that you create are always
// encrypted, either using the default CMK or the CMK that you specified when you
// created each volume. For more information, see Amazon EBS encryption
// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) in the
diff --git a/service/ec2/api_op_EnableSerialConsoleAccess.go b/service/ec2/api_op_EnableSerialConsoleAccess.go
new file mode 100644
index 00000000000..1a1ae376dc1
--- /dev/null
+++ b/service/ec2/api_op_EnableSerialConsoleAccess.go
@@ -0,0 +1,120 @@
+// 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/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Enables access to the EC2 serial console of all instances for your account. By
+// default, access to the EC2 serial console is disabled for your account. For more
+// information, see Manage account access to the EC2 serial console
+// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configure-access-to-serial-console.html#serial-console-account-access)
+// in the Amazon EC2 User Guide.
+func (c *Client) EnableSerialConsoleAccess(ctx context.Context, params *EnableSerialConsoleAccessInput, optFns ...func(*Options)) (*EnableSerialConsoleAccessOutput, error) {
+ if params == nil {
+ params = &EnableSerialConsoleAccessInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "EnableSerialConsoleAccess", params, optFns, addOperationEnableSerialConsoleAccessMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*EnableSerialConsoleAccessOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type EnableSerialConsoleAccessInput 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
+}
+
+type EnableSerialConsoleAccessOutput struct {
+
+ // If true, access to the EC2 serial console of all instances is enabled for your
+ // account. If false, access to the EC2 serial console of all instances is disabled
+ // for your account.
+ SerialConsoleAccessEnabled bool
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationEnableSerialConsoleAccessMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsEc2query_serializeOpEnableSerialConsoleAccess{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsEc2query_deserializeOpEnableSerialConsoleAccess{}, 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_opEnableSerialConsoleAccess(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_opEnableSerialConsoleAccess(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "ec2",
+ OperationName: "EnableSerialConsoleAccess",
+ }
+}
diff --git a/service/ec2/api_op_GetSerialConsoleAccessStatus.go b/service/ec2/api_op_GetSerialConsoleAccessStatus.go
new file mode 100644
index 00000000000..21e69bef413
--- /dev/null
+++ b/service/ec2/api_op_GetSerialConsoleAccessStatus.go
@@ -0,0 +1,121 @@
+// 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/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Retrieves the access status of your account to the EC2 serial console of all
+// instances. By default, access to the EC2 serial console is disabled for your
+// account. For more information, see Manage account access to the EC2 serial
+// console
+// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configure-access-to-serial-console.html#serial-console-account-access)
+// in the Amazon EC2 User Guide.
+func (c *Client) GetSerialConsoleAccessStatus(ctx context.Context, params *GetSerialConsoleAccessStatusInput, optFns ...func(*Options)) (*GetSerialConsoleAccessStatusOutput, error) {
+ if params == nil {
+ params = &GetSerialConsoleAccessStatusInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetSerialConsoleAccessStatus", params, optFns, addOperationGetSerialConsoleAccessStatusMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetSerialConsoleAccessStatusOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetSerialConsoleAccessStatusInput 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
+}
+
+type GetSerialConsoleAccessStatusOutput struct {
+
+ // If true, access to the EC2 serial console of all instances is enabled for your
+ // account. If false, access to the EC2 serial console of all instances is disabled
+ // for your account.
+ SerialConsoleAccessEnabled bool
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetSerialConsoleAccessStatusMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsEc2query_serializeOpGetSerialConsoleAccessStatus{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsEc2query_deserializeOpGetSerialConsoleAccessStatus{}, 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_opGetSerialConsoleAccessStatus(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_opGetSerialConsoleAccessStatus(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "ec2",
+ OperationName: "GetSerialConsoleAccessStatus",
+ }
+}
diff --git a/service/ec2/api_op_ModifyInstanceAttribute.go b/service/ec2/api_op_ModifyInstanceAttribute.go
index 2be5603fb16..849b2df7ee3 100644
--- a/service/ec2/api_op_ModifyInstanceAttribute.go
+++ b/service/ec2/api_op_ModifyInstanceAttribute.go
@@ -105,9 +105,12 @@ type ModifyInstanceAttributeInput struct {
// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedKernels.html).
Ramdisk *types.AttributeValue
- // Specifies whether source/destination checking is enabled. A value of true means
- // that checking is enabled, and false means that checking is disabled. This value
- // must be false for a NAT instance to perform NAT.
+ // Enable or disable source/destination checks, which ensure that the instance is
+ // either the source or the destination of any traffic that it receives. If the
+ // value is true, source/destination checks are enabled; otherwise, they are
+ // disabled. The default value is true. You must disable source/destination checks
+ // if the instance runs services such as network address translation, routing, or
+ // firewalls.
SourceDestCheck *types.AttributeBooleanValue
// Set to simple to enable enhanced networking with the Intel 82599 Virtual
diff --git a/service/ec2/api_op_ModifyVolume.go b/service/ec2/api_op_ModifyVolume.go
index bdd32405cf9..e56d603bf58 100644
--- a/service/ec2/api_op_ModifyVolume.go
+++ b/service/ec2/api_op_ModifyVolume.go
@@ -84,7 +84,8 @@ type ModifyVolumeInput struct {
// * io2: 100-64,000 IOPS
//
// Default:
- // If no IOPS value is specified, the existing value is retained.
+ // If no IOPS value is specified, the existing value is retained, unless a volume
+ // type is modified that supports different values.
Iops int32
// Specifies whether to enable Amazon EBS Multi-Attach. If you enable Multi-Attach,
diff --git a/service/ec2/api_op_RegisterImage.go b/service/ec2/api_op_RegisterImage.go
index 1347c7ba0c8..3724521ce36 100644
--- a/service/ec2/api_op_RegisterImage.go
+++ b/service/ec2/api_op_RegisterImage.go
@@ -100,6 +100,11 @@ type RegisterImageInput struct {
// in the Amazon Elastic Compute Cloud User Guide.
BlockDeviceMappings []types.BlockDeviceMapping
+ // The boot mode of the AMI. For more information, see Boot modes
+ // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html) in the
+ // Amazon Elastic Compute Cloud User Guide.
+ BootMode types.BootModeValues
+
// A description for your AMI.
Description *string
diff --git a/service/ec2/deserializers.go b/service/ec2/deserializers.go
index efe905f3515..f62e64c6005 100644
--- a/service/ec2/deserializers.go
+++ b/service/ec2/deserializers.go
@@ -6324,6 +6324,97 @@ func awsEc2query_deserializeOpErrorCreatePlacementGroup(response *smithyhttp.Res
}
}
+type awsEc2query_deserializeOpCreateReplaceRootVolumeTask struct {
+}
+
+func (*awsEc2query_deserializeOpCreateReplaceRootVolumeTask) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsEc2query_deserializeOpCreateReplaceRootVolumeTask) 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_deserializeOpErrorCreateReplaceRootVolumeTask(response, &metadata)
+ }
+ output := &CreateReplaceRootVolumeTaskOutput{}
+ 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_deserializeOpDocumentCreateReplaceRootVolumeTaskOutput(&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_deserializeOpErrorCreateReplaceRootVolumeTask(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_deserializeOpCreateReservedInstancesListing struct {
}
@@ -20537,6 +20628,97 @@ func awsEc2query_deserializeOpErrorDescribeRegions(response *smithyhttp.Response
}
}
+type awsEc2query_deserializeOpDescribeReplaceRootVolumeTasks struct {
+}
+
+func (*awsEc2query_deserializeOpDescribeReplaceRootVolumeTasks) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsEc2query_deserializeOpDescribeReplaceRootVolumeTasks) 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_deserializeOpErrorDescribeReplaceRootVolumeTasks(response, &metadata)
+ }
+ output := &DescribeReplaceRootVolumeTasksOutput{}
+ 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_deserializeOpDocumentDescribeReplaceRootVolumeTasksOutput(&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_deserializeOpErrorDescribeReplaceRootVolumeTasks(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_deserializeOpDescribeReservedInstances struct {
}
@@ -25473,6 +25655,97 @@ func awsEc2query_deserializeOpErrorDisableFastSnapshotRestores(response *smithyh
}
}
+type awsEc2query_deserializeOpDisableSerialConsoleAccess struct {
+}
+
+func (*awsEc2query_deserializeOpDisableSerialConsoleAccess) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsEc2query_deserializeOpDisableSerialConsoleAccess) 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_deserializeOpErrorDisableSerialConsoleAccess(response, &metadata)
+ }
+ output := &DisableSerialConsoleAccessOutput{}
+ 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_deserializeOpDocumentDisableSerialConsoleAccessOutput(&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_deserializeOpErrorDisableSerialConsoleAccess(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_deserializeOpDisableTransitGatewayRouteTablePropagation struct {
}
@@ -26769,14 +27042,14 @@ func awsEc2query_deserializeOpErrorEnableFastSnapshotRestores(response *smithyht
}
}
-type awsEc2query_deserializeOpEnableTransitGatewayRouteTablePropagation struct {
+type awsEc2query_deserializeOpEnableSerialConsoleAccess struct {
}
-func (*awsEc2query_deserializeOpEnableTransitGatewayRouteTablePropagation) ID() string {
+func (*awsEc2query_deserializeOpEnableSerialConsoleAccess) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpEnableTransitGatewayRouteTablePropagation) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpEnableSerialConsoleAccess) 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)
@@ -26790,9 +27063,9 @@ func (m *awsEc2query_deserializeOpEnableTransitGatewayRouteTablePropagation) Han
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorEnableTransitGatewayRouteTablePropagation(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorEnableSerialConsoleAccess(response, &metadata)
}
- output := &EnableTransitGatewayRouteTablePropagationOutput{}
+ output := &EnableSerialConsoleAccessOutput{}
out.Result = output
var buff [1024]byte
@@ -26813,7 +27086,7 @@ func (m *awsEc2query_deserializeOpEnableTransitGatewayRouteTablePropagation) Han
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- err = awsEc2query_deserializeOpDocumentEnableTransitGatewayRouteTablePropagationOutput(&output, decoder)
+ err = awsEc2query_deserializeOpDocumentEnableSerialConsoleAccessOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -26827,7 +27100,7 @@ func (m *awsEc2query_deserializeOpEnableTransitGatewayRouteTablePropagation) Han
return out, metadata, err
}
-func awsEc2query_deserializeOpErrorEnableTransitGatewayRouteTablePropagation(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorEnableSerialConsoleAccess(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)}
@@ -26860,14 +27133,14 @@ func awsEc2query_deserializeOpErrorEnableTransitGatewayRouteTablePropagation(res
}
}
-type awsEc2query_deserializeOpEnableVgwRoutePropagation struct {
+type awsEc2query_deserializeOpEnableTransitGatewayRouteTablePropagation struct {
}
-func (*awsEc2query_deserializeOpEnableVgwRoutePropagation) ID() string {
+func (*awsEc2query_deserializeOpEnableTransitGatewayRouteTablePropagation) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpEnableVgwRoutePropagation) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpEnableTransitGatewayRouteTablePropagation) 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)
@@ -26881,89 +27154,44 @@ func (m *awsEc2query_deserializeOpEnableVgwRoutePropagation) HandleDeserialize(c
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorEnableVgwRoutePropagation(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorEnableTransitGatewayRouteTablePropagation(response, &metadata)
}
- output := &EnableVgwRoutePropagationOutput{}
+ output := &EnableTransitGatewayRouteTablePropagationOutput{}
out.Result = output
- if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
- return out, metadata, &smithy.DeserializationError{
- Err: fmt.Errorf("failed to discard response body, %w", err),
- }
- }
-
- return out, metadata, err
-}
-
-func awsEc2query_deserializeOpErrorEnableVgwRoutePropagation(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)}
+ 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
}
- 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,
+ 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(),
}
- return genericError
-
}
-}
-
-type awsEc2query_deserializeOpEnableVolumeIO struct {
-}
-func (*awsEc2query_deserializeOpEnableVolumeIO) ID() string {
- return "OperationDeserializer"
-}
-
-func (m *awsEc2query_deserializeOpEnableVolumeIO) 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)
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ err = awsEc2query_deserializeOpDocumentEnableTransitGatewayRouteTablePropagationOutput(&output, decoder)
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_deserializeOpErrorEnableVolumeIO(response, &metadata)
- }
- output := &EnableVolumeIOOutput{}
- out.Result = output
-
- if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
- return out, metadata, &smithy.DeserializationError{
- Err: fmt.Errorf("failed to discard response body, %w", err),
+ 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_deserializeOpErrorEnableVolumeIO(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorEnableTransitGatewayRouteTablePropagation(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)}
@@ -26996,14 +27224,14 @@ func awsEc2query_deserializeOpErrorEnableVolumeIO(response *smithyhttp.Response,
}
}
-type awsEc2query_deserializeOpEnableVpcClassicLink struct {
+type awsEc2query_deserializeOpEnableVgwRoutePropagation struct {
}
-func (*awsEc2query_deserializeOpEnableVpcClassicLink) ID() string {
+func (*awsEc2query_deserializeOpEnableVgwRoutePropagation) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpEnableVpcClassicLink) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpEnableVgwRoutePropagation) 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)
@@ -27017,44 +27245,21 @@ func (m *awsEc2query_deserializeOpEnableVpcClassicLink) HandleDeserialize(ctx co
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorEnableVpcClassicLink(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorEnableVgwRoutePropagation(response, &metadata)
}
- output := &EnableVpcClassicLinkOutput{}
+ output := &EnableVgwRoutePropagationOutput{}
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)
+ if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
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_deserializeOpDocumentEnableVpcClassicLinkOutput(&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(),
+ Err: fmt.Errorf("failed to discard response body, %w", err),
}
- return out, metadata, err
}
return out, metadata, err
}
-func awsEc2query_deserializeOpErrorEnableVpcClassicLink(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorEnableVgwRoutePropagation(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)}
@@ -27087,14 +27292,14 @@ func awsEc2query_deserializeOpErrorEnableVpcClassicLink(response *smithyhttp.Res
}
}
-type awsEc2query_deserializeOpEnableVpcClassicLinkDnsSupport struct {
+type awsEc2query_deserializeOpEnableVolumeIO struct {
}
-func (*awsEc2query_deserializeOpEnableVpcClassicLinkDnsSupport) ID() string {
+func (*awsEc2query_deserializeOpEnableVolumeIO) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpEnableVpcClassicLinkDnsSupport) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpEnableVolumeIO) 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)
@@ -27108,44 +27313,21 @@ func (m *awsEc2query_deserializeOpEnableVpcClassicLinkDnsSupport) HandleDeserial
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorEnableVpcClassicLinkDnsSupport(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorEnableVolumeIO(response, &metadata)
}
- output := &EnableVpcClassicLinkDnsSupportOutput{}
+ output := &EnableVolumeIOOutput{}
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)
+ if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
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_deserializeOpDocumentEnableVpcClassicLinkDnsSupportOutput(&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(),
+ Err: fmt.Errorf("failed to discard response body, %w", err),
}
- return out, metadata, err
}
return out, metadata, err
}
-func awsEc2query_deserializeOpErrorEnableVpcClassicLinkDnsSupport(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorEnableVolumeIO(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)}
@@ -27178,14 +27360,14 @@ func awsEc2query_deserializeOpErrorEnableVpcClassicLinkDnsSupport(response *smit
}
}
-type awsEc2query_deserializeOpExportClientVpnClientCertificateRevocationList struct {
+type awsEc2query_deserializeOpEnableVpcClassicLink struct {
}
-func (*awsEc2query_deserializeOpExportClientVpnClientCertificateRevocationList) ID() string {
+func (*awsEc2query_deserializeOpEnableVpcClassicLink) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpExportClientVpnClientCertificateRevocationList) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpEnableVpcClassicLink) 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)
@@ -27199,9 +27381,9 @@ func (m *awsEc2query_deserializeOpExportClientVpnClientCertificateRevocationList
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorExportClientVpnClientCertificateRevocationList(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorEnableVpcClassicLink(response, &metadata)
}
- output := &ExportClientVpnClientCertificateRevocationListOutput{}
+ output := &EnableVpcClassicLinkOutput{}
out.Result = output
var buff [1024]byte
@@ -27222,7 +27404,7 @@ func (m *awsEc2query_deserializeOpExportClientVpnClientCertificateRevocationList
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- err = awsEc2query_deserializeOpDocumentExportClientVpnClientCertificateRevocationListOutput(&output, decoder)
+ err = awsEc2query_deserializeOpDocumentEnableVpcClassicLinkOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -27236,7 +27418,7 @@ func (m *awsEc2query_deserializeOpExportClientVpnClientCertificateRevocationList
return out, metadata, err
}
-func awsEc2query_deserializeOpErrorExportClientVpnClientCertificateRevocationList(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorEnableVpcClassicLink(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)}
@@ -27269,14 +27451,14 @@ func awsEc2query_deserializeOpErrorExportClientVpnClientCertificateRevocationLis
}
}
-type awsEc2query_deserializeOpExportClientVpnClientConfiguration struct {
+type awsEc2query_deserializeOpEnableVpcClassicLinkDnsSupport struct {
}
-func (*awsEc2query_deserializeOpExportClientVpnClientConfiguration) ID() string {
+func (*awsEc2query_deserializeOpEnableVpcClassicLinkDnsSupport) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpExportClientVpnClientConfiguration) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpEnableVpcClassicLinkDnsSupport) 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)
@@ -27290,9 +27472,9 @@ func (m *awsEc2query_deserializeOpExportClientVpnClientConfiguration) HandleDese
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorExportClientVpnClientConfiguration(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorEnableVpcClassicLinkDnsSupport(response, &metadata)
}
- output := &ExportClientVpnClientConfigurationOutput{}
+ output := &EnableVpcClassicLinkDnsSupportOutput{}
out.Result = output
var buff [1024]byte
@@ -27313,7 +27495,7 @@ func (m *awsEc2query_deserializeOpExportClientVpnClientConfiguration) HandleDese
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- err = awsEc2query_deserializeOpDocumentExportClientVpnClientConfigurationOutput(&output, decoder)
+ err = awsEc2query_deserializeOpDocumentEnableVpcClassicLinkDnsSupportOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -27327,7 +27509,7 @@ func (m *awsEc2query_deserializeOpExportClientVpnClientConfiguration) HandleDese
return out, metadata, err
}
-func awsEc2query_deserializeOpErrorExportClientVpnClientConfiguration(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorEnableVpcClassicLinkDnsSupport(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)}
@@ -27360,14 +27542,14 @@ func awsEc2query_deserializeOpErrorExportClientVpnClientConfiguration(response *
}
}
-type awsEc2query_deserializeOpExportImage struct {
+type awsEc2query_deserializeOpExportClientVpnClientCertificateRevocationList struct {
}
-func (*awsEc2query_deserializeOpExportImage) ID() string {
+func (*awsEc2query_deserializeOpExportClientVpnClientCertificateRevocationList) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpExportImage) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpExportClientVpnClientCertificateRevocationList) 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)
@@ -27381,9 +27563,9 @@ func (m *awsEc2query_deserializeOpExportImage) HandleDeserialize(ctx context.Con
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorExportImage(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorExportClientVpnClientCertificateRevocationList(response, &metadata)
}
- output := &ExportImageOutput{}
+ output := &ExportClientVpnClientCertificateRevocationListOutput{}
out.Result = output
var buff [1024]byte
@@ -27404,7 +27586,7 @@ func (m *awsEc2query_deserializeOpExportImage) HandleDeserialize(ctx context.Con
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- err = awsEc2query_deserializeOpDocumentExportImageOutput(&output, decoder)
+ err = awsEc2query_deserializeOpDocumentExportClientVpnClientCertificateRevocationListOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -27418,7 +27600,7 @@ func (m *awsEc2query_deserializeOpExportImage) HandleDeserialize(ctx context.Con
return out, metadata, err
}
-func awsEc2query_deserializeOpErrorExportImage(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorExportClientVpnClientCertificateRevocationList(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)}
@@ -27451,14 +27633,14 @@ func awsEc2query_deserializeOpErrorExportImage(response *smithyhttp.Response, me
}
}
-type awsEc2query_deserializeOpExportTransitGatewayRoutes struct {
+type awsEc2query_deserializeOpExportClientVpnClientConfiguration struct {
}
-func (*awsEc2query_deserializeOpExportTransitGatewayRoutes) ID() string {
+func (*awsEc2query_deserializeOpExportClientVpnClientConfiguration) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpExportTransitGatewayRoutes) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpExportClientVpnClientConfiguration) 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)
@@ -27472,9 +27654,9 @@ func (m *awsEc2query_deserializeOpExportTransitGatewayRoutes) HandleDeserialize(
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorExportTransitGatewayRoutes(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorExportClientVpnClientConfiguration(response, &metadata)
}
- output := &ExportTransitGatewayRoutesOutput{}
+ output := &ExportClientVpnClientConfigurationOutput{}
out.Result = output
var buff [1024]byte
@@ -27495,7 +27677,7 @@ func (m *awsEc2query_deserializeOpExportTransitGatewayRoutes) HandleDeserialize(
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- err = awsEc2query_deserializeOpDocumentExportTransitGatewayRoutesOutput(&output, decoder)
+ err = awsEc2query_deserializeOpDocumentExportClientVpnClientConfigurationOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -27509,7 +27691,7 @@ func (m *awsEc2query_deserializeOpExportTransitGatewayRoutes) HandleDeserialize(
return out, metadata, err
}
-func awsEc2query_deserializeOpErrorExportTransitGatewayRoutes(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorExportClientVpnClientConfiguration(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)}
@@ -27542,14 +27724,14 @@ func awsEc2query_deserializeOpErrorExportTransitGatewayRoutes(response *smithyht
}
}
-type awsEc2query_deserializeOpGetAssociatedEnclaveCertificateIamRoles struct {
+type awsEc2query_deserializeOpExportImage struct {
}
-func (*awsEc2query_deserializeOpGetAssociatedEnclaveCertificateIamRoles) ID() string {
+func (*awsEc2query_deserializeOpExportImage) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpGetAssociatedEnclaveCertificateIamRoles) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpExportImage) 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)
@@ -27563,9 +27745,9 @@ func (m *awsEc2query_deserializeOpGetAssociatedEnclaveCertificateIamRoles) Handl
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorGetAssociatedEnclaveCertificateIamRoles(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorExportImage(response, &metadata)
}
- output := &GetAssociatedEnclaveCertificateIamRolesOutput{}
+ output := &ExportImageOutput{}
out.Result = output
var buff [1024]byte
@@ -27586,7 +27768,7 @@ func (m *awsEc2query_deserializeOpGetAssociatedEnclaveCertificateIamRoles) Handl
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- err = awsEc2query_deserializeOpDocumentGetAssociatedEnclaveCertificateIamRolesOutput(&output, decoder)
+ err = awsEc2query_deserializeOpDocumentExportImageOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -27600,7 +27782,7 @@ func (m *awsEc2query_deserializeOpGetAssociatedEnclaveCertificateIamRoles) Handl
return out, metadata, err
}
-func awsEc2query_deserializeOpErrorGetAssociatedEnclaveCertificateIamRoles(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorExportImage(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)}
@@ -27633,14 +27815,14 @@ func awsEc2query_deserializeOpErrorGetAssociatedEnclaveCertificateIamRoles(respo
}
}
-type awsEc2query_deserializeOpGetAssociatedIpv6PoolCidrs struct {
+type awsEc2query_deserializeOpExportTransitGatewayRoutes struct {
}
-func (*awsEc2query_deserializeOpGetAssociatedIpv6PoolCidrs) ID() string {
+func (*awsEc2query_deserializeOpExportTransitGatewayRoutes) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpGetAssociatedIpv6PoolCidrs) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpExportTransitGatewayRoutes) 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)
@@ -27654,9 +27836,9 @@ func (m *awsEc2query_deserializeOpGetAssociatedIpv6PoolCidrs) HandleDeserialize(
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorGetAssociatedIpv6PoolCidrs(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorExportTransitGatewayRoutes(response, &metadata)
}
- output := &GetAssociatedIpv6PoolCidrsOutput{}
+ output := &ExportTransitGatewayRoutesOutput{}
out.Result = output
var buff [1024]byte
@@ -27677,7 +27859,7 @@ func (m *awsEc2query_deserializeOpGetAssociatedIpv6PoolCidrs) HandleDeserialize(
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- err = awsEc2query_deserializeOpDocumentGetAssociatedIpv6PoolCidrsOutput(&output, decoder)
+ err = awsEc2query_deserializeOpDocumentExportTransitGatewayRoutesOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -27691,7 +27873,189 @@ func (m *awsEc2query_deserializeOpGetAssociatedIpv6PoolCidrs) HandleDeserialize(
return out, metadata, err
}
-func awsEc2query_deserializeOpErrorGetAssociatedIpv6PoolCidrs(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorExportTransitGatewayRoutes(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_deserializeOpGetAssociatedEnclaveCertificateIamRoles struct {
+}
+
+func (*awsEc2query_deserializeOpGetAssociatedEnclaveCertificateIamRoles) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsEc2query_deserializeOpGetAssociatedEnclaveCertificateIamRoles) 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_deserializeOpErrorGetAssociatedEnclaveCertificateIamRoles(response, &metadata)
+ }
+ output := &GetAssociatedEnclaveCertificateIamRolesOutput{}
+ 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_deserializeOpDocumentGetAssociatedEnclaveCertificateIamRolesOutput(&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_deserializeOpErrorGetAssociatedEnclaveCertificateIamRoles(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_deserializeOpGetAssociatedIpv6PoolCidrs struct {
+}
+
+func (*awsEc2query_deserializeOpGetAssociatedIpv6PoolCidrs) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsEc2query_deserializeOpGetAssociatedIpv6PoolCidrs) 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_deserializeOpErrorGetAssociatedIpv6PoolCidrs(response, &metadata)
+ }
+ output := &GetAssociatedIpv6PoolCidrsOutput{}
+ 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_deserializeOpDocumentGetAssociatedIpv6PoolCidrsOutput(&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_deserializeOpErrorGetAssociatedIpv6PoolCidrs(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)}
@@ -28998,14 +29362,14 @@ func awsEc2query_deserializeOpErrorGetReservedInstancesExchangeQuote(response *s
}
}
-type awsEc2query_deserializeOpGetTransitGatewayAttachmentPropagations struct {
+type awsEc2query_deserializeOpGetSerialConsoleAccessStatus struct {
}
-func (*awsEc2query_deserializeOpGetTransitGatewayAttachmentPropagations) ID() string {
+func (*awsEc2query_deserializeOpGetSerialConsoleAccessStatus) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpGetTransitGatewayAttachmentPropagations) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpGetSerialConsoleAccessStatus) 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)
@@ -29019,9 +29383,9 @@ func (m *awsEc2query_deserializeOpGetTransitGatewayAttachmentPropagations) Handl
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorGetTransitGatewayAttachmentPropagations(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorGetSerialConsoleAccessStatus(response, &metadata)
}
- output := &GetTransitGatewayAttachmentPropagationsOutput{}
+ output := &GetSerialConsoleAccessStatusOutput{}
out.Result = output
var buff [1024]byte
@@ -29042,7 +29406,7 @@ func (m *awsEc2query_deserializeOpGetTransitGatewayAttachmentPropagations) Handl
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- err = awsEc2query_deserializeOpDocumentGetTransitGatewayAttachmentPropagationsOutput(&output, decoder)
+ err = awsEc2query_deserializeOpDocumentGetSerialConsoleAccessStatusOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -29056,7 +29420,7 @@ func (m *awsEc2query_deserializeOpGetTransitGatewayAttachmentPropagations) Handl
return out, metadata, err
}
-func awsEc2query_deserializeOpErrorGetTransitGatewayAttachmentPropagations(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorGetSerialConsoleAccessStatus(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)}
@@ -29089,14 +29453,14 @@ func awsEc2query_deserializeOpErrorGetTransitGatewayAttachmentPropagations(respo
}
}
-type awsEc2query_deserializeOpGetTransitGatewayMulticastDomainAssociations struct {
+type awsEc2query_deserializeOpGetTransitGatewayAttachmentPropagations struct {
}
-func (*awsEc2query_deserializeOpGetTransitGatewayMulticastDomainAssociations) ID() string {
+func (*awsEc2query_deserializeOpGetTransitGatewayAttachmentPropagations) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpGetTransitGatewayMulticastDomainAssociations) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpGetTransitGatewayAttachmentPropagations) 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)
@@ -29110,9 +29474,9 @@ func (m *awsEc2query_deserializeOpGetTransitGatewayMulticastDomainAssociations)
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorGetTransitGatewayMulticastDomainAssociations(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorGetTransitGatewayAttachmentPropagations(response, &metadata)
}
- output := &GetTransitGatewayMulticastDomainAssociationsOutput{}
+ output := &GetTransitGatewayAttachmentPropagationsOutput{}
out.Result = output
var buff [1024]byte
@@ -29133,7 +29497,7 @@ func (m *awsEc2query_deserializeOpGetTransitGatewayMulticastDomainAssociations)
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- err = awsEc2query_deserializeOpDocumentGetTransitGatewayMulticastDomainAssociationsOutput(&output, decoder)
+ err = awsEc2query_deserializeOpDocumentGetTransitGatewayAttachmentPropagationsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -29147,7 +29511,7 @@ func (m *awsEc2query_deserializeOpGetTransitGatewayMulticastDomainAssociations)
return out, metadata, err
}
-func awsEc2query_deserializeOpErrorGetTransitGatewayMulticastDomainAssociations(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorGetTransitGatewayAttachmentPropagations(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)}
@@ -29180,14 +29544,14 @@ func awsEc2query_deserializeOpErrorGetTransitGatewayMulticastDomainAssociations(
}
}
-type awsEc2query_deserializeOpGetTransitGatewayPrefixListReferences struct {
+type awsEc2query_deserializeOpGetTransitGatewayMulticastDomainAssociations struct {
}
-func (*awsEc2query_deserializeOpGetTransitGatewayPrefixListReferences) ID() string {
+func (*awsEc2query_deserializeOpGetTransitGatewayMulticastDomainAssociations) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpGetTransitGatewayPrefixListReferences) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpGetTransitGatewayMulticastDomainAssociations) 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)
@@ -29201,9 +29565,9 @@ func (m *awsEc2query_deserializeOpGetTransitGatewayPrefixListReferences) HandleD
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorGetTransitGatewayPrefixListReferences(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorGetTransitGatewayMulticastDomainAssociations(response, &metadata)
}
- output := &GetTransitGatewayPrefixListReferencesOutput{}
+ output := &GetTransitGatewayMulticastDomainAssociationsOutput{}
out.Result = output
var buff [1024]byte
@@ -29224,7 +29588,7 @@ func (m *awsEc2query_deserializeOpGetTransitGatewayPrefixListReferences) HandleD
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- err = awsEc2query_deserializeOpDocumentGetTransitGatewayPrefixListReferencesOutput(&output, decoder)
+ err = awsEc2query_deserializeOpDocumentGetTransitGatewayMulticastDomainAssociationsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -29238,7 +29602,7 @@ func (m *awsEc2query_deserializeOpGetTransitGatewayPrefixListReferences) HandleD
return out, metadata, err
}
-func awsEc2query_deserializeOpErrorGetTransitGatewayPrefixListReferences(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorGetTransitGatewayMulticastDomainAssociations(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)}
@@ -29271,14 +29635,14 @@ func awsEc2query_deserializeOpErrorGetTransitGatewayPrefixListReferences(respons
}
}
-type awsEc2query_deserializeOpGetTransitGatewayRouteTableAssociations struct {
+type awsEc2query_deserializeOpGetTransitGatewayPrefixListReferences struct {
}
-func (*awsEc2query_deserializeOpGetTransitGatewayRouteTableAssociations) ID() string {
+func (*awsEc2query_deserializeOpGetTransitGatewayPrefixListReferences) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpGetTransitGatewayRouteTableAssociations) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpGetTransitGatewayPrefixListReferences) 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)
@@ -29292,9 +29656,9 @@ func (m *awsEc2query_deserializeOpGetTransitGatewayRouteTableAssociations) Handl
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorGetTransitGatewayRouteTableAssociations(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorGetTransitGatewayPrefixListReferences(response, &metadata)
}
- output := &GetTransitGatewayRouteTableAssociationsOutput{}
+ output := &GetTransitGatewayPrefixListReferencesOutput{}
out.Result = output
var buff [1024]byte
@@ -29315,7 +29679,7 @@ func (m *awsEc2query_deserializeOpGetTransitGatewayRouteTableAssociations) Handl
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- err = awsEc2query_deserializeOpDocumentGetTransitGatewayRouteTableAssociationsOutput(&output, decoder)
+ err = awsEc2query_deserializeOpDocumentGetTransitGatewayPrefixListReferencesOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -29329,7 +29693,7 @@ func (m *awsEc2query_deserializeOpGetTransitGatewayRouteTableAssociations) Handl
return out, metadata, err
}
-func awsEc2query_deserializeOpErrorGetTransitGatewayRouteTableAssociations(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorGetTransitGatewayPrefixListReferences(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)}
@@ -29362,14 +29726,14 @@ func awsEc2query_deserializeOpErrorGetTransitGatewayRouteTableAssociations(respo
}
}
-type awsEc2query_deserializeOpGetTransitGatewayRouteTablePropagations struct {
+type awsEc2query_deserializeOpGetTransitGatewayRouteTableAssociations struct {
}
-func (*awsEc2query_deserializeOpGetTransitGatewayRouteTablePropagations) ID() string {
+func (*awsEc2query_deserializeOpGetTransitGatewayRouteTableAssociations) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpGetTransitGatewayRouteTablePropagations) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpGetTransitGatewayRouteTableAssociations) 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)
@@ -29383,9 +29747,9 @@ func (m *awsEc2query_deserializeOpGetTransitGatewayRouteTablePropagations) Handl
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorGetTransitGatewayRouteTablePropagations(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorGetTransitGatewayRouteTableAssociations(response, &metadata)
}
- output := &GetTransitGatewayRouteTablePropagationsOutput{}
+ output := &GetTransitGatewayRouteTableAssociationsOutput{}
out.Result = output
var buff [1024]byte
@@ -29406,7 +29770,7 @@ func (m *awsEc2query_deserializeOpGetTransitGatewayRouteTablePropagations) Handl
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- err = awsEc2query_deserializeOpDocumentGetTransitGatewayRouteTablePropagationsOutput(&output, decoder)
+ err = awsEc2query_deserializeOpDocumentGetTransitGatewayRouteTableAssociationsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -29420,7 +29784,7 @@ func (m *awsEc2query_deserializeOpGetTransitGatewayRouteTablePropagations) Handl
return out, metadata, err
}
-func awsEc2query_deserializeOpErrorGetTransitGatewayRouteTablePropagations(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorGetTransitGatewayRouteTableAssociations(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)}
@@ -29453,14 +29817,14 @@ func awsEc2query_deserializeOpErrorGetTransitGatewayRouteTablePropagations(respo
}
}
-type awsEc2query_deserializeOpImportClientVpnClientCertificateRevocationList struct {
+type awsEc2query_deserializeOpGetTransitGatewayRouteTablePropagations struct {
}
-func (*awsEc2query_deserializeOpImportClientVpnClientCertificateRevocationList) ID() string {
+func (*awsEc2query_deserializeOpGetTransitGatewayRouteTablePropagations) ID() string {
return "OperationDeserializer"
}
-func (m *awsEc2query_deserializeOpImportClientVpnClientCertificateRevocationList) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsEc2query_deserializeOpGetTransitGatewayRouteTablePropagations) 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)
@@ -29474,9 +29838,9 @@ func (m *awsEc2query_deserializeOpImportClientVpnClientCertificateRevocationList
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsEc2query_deserializeOpErrorImportClientVpnClientCertificateRevocationList(response, &metadata)
+ return out, metadata, awsEc2query_deserializeOpErrorGetTransitGatewayRouteTablePropagations(response, &metadata)
}
- output := &ImportClientVpnClientCertificateRevocationListOutput{}
+ output := &GetTransitGatewayRouteTablePropagationsOutput{}
out.Result = output
var buff [1024]byte
@@ -29497,7 +29861,7 @@ func (m *awsEc2query_deserializeOpImportClientVpnClientCertificateRevocationList
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- err = awsEc2query_deserializeOpDocumentImportClientVpnClientCertificateRevocationListOutput(&output, decoder)
+ err = awsEc2query_deserializeOpDocumentGetTransitGatewayRouteTablePropagationsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -29511,7 +29875,98 @@ func (m *awsEc2query_deserializeOpImportClientVpnClientCertificateRevocationList
return out, metadata, err
}
-func awsEc2query_deserializeOpErrorImportClientVpnClientCertificateRevocationList(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsEc2query_deserializeOpErrorGetTransitGatewayRouteTablePropagations(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_deserializeOpImportClientVpnClientCertificateRevocationList struct {
+}
+
+func (*awsEc2query_deserializeOpImportClientVpnClientCertificateRevocationList) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsEc2query_deserializeOpImportClientVpnClientCertificateRevocationList) 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_deserializeOpErrorImportClientVpnClientCertificateRevocationList(response, &metadata)
+ }
+ output := &ImportClientVpnClientCertificateRevocationListOutput{}
+ 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_deserializeOpDocumentImportClientVpnClientCertificateRevocationListOutput(&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_deserializeOpErrorImportClientVpnClientCertificateRevocationList(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)}
@@ -42096,6 +42551,86 @@ func awsEc2query_deserializeDocumentBlockDeviceMappingListUnwrapped(v *[]types.B
*v = sv
return nil
}
+func awsEc2query_deserializeDocumentBootModeTypeList(v *[]types.BootModeType, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv []types.BootModeType
+ if *v == nil {
+ sv = make([]types.BootModeType, 0)
+ } else {
+ sv = *v
+ }
+
+ originalDecoder := decoder
+ for {
+ t, done, err := decoder.Token()
+ if err != nil {
+ return err
+ }
+ if done {
+ break
+ }
+ memberDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ decoder = memberDecoder
+ switch {
+ case strings.EqualFold("item", t.Name.Local):
+ var col types.BootModeType
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ col = types.BootModeType(xtv)
+ }
+ sv = append(sv, col)
+
+ default:
+ err = decoder.Decoder.Skip()
+ if err != nil {
+ return err
+ }
+
+ }
+ decoder = originalDecoder
+ }
+ *v = sv
+ return nil
+}
+
+func awsEc2query_deserializeDocumentBootModeTypeListUnwrapped(v *[]types.BootModeType, decoder smithyxml.NodeDecoder) error {
+ var sv []types.BootModeType
+ if *v == nil {
+ sv = make([]types.BootModeType, 0)
+ } else {
+ sv = *v
+ }
+
+ switch {
+ default:
+ var mv types.BootModeType
+ t := decoder.StartEl
+ _ = t
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ mv = types.BootModeType(xtv)
+ }
+ sv = append(sv, mv)
+ }
+ *v = sv
+ return nil
+}
func awsEc2query_deserializeDocumentBundleTask(v **types.BundleTask, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -50515,6 +51050,59 @@ func awsEc2query_deserializeDocumentEbsOptimizedInfo(v **types.EbsOptimizedInfo,
return nil
}
+func awsEc2query_deserializeDocumentEfaInfo(v **types.EfaInfo, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.EfaInfo
+ if *v == nil {
+ sv = &types.EfaInfo{}
+ } 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("maximumEfaInterfaces", 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.MaximumEfaInterfaces = 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_deserializeDocumentEgressOnlyInternetGateway(v **types.EgressOnlyInternetGateway, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -57703,6 +58291,19 @@ func awsEc2query_deserializeDocumentImage(v **types.Image, decoder smithyxml.Nod
return err
}
+ case strings.EqualFold("bootMode", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.BootMode = types.BootModeValues(xtv)
+ }
+
case strings.EqualFold("creationDate", t.Name.Local):
val, err := decoder.Value()
if err != nil {
@@ -59306,6 +59907,19 @@ func awsEc2query_deserializeDocumentInstance(v **types.Instance, decoder smithyx
return err
}
+ case strings.EqualFold("bootMode", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.BootMode = types.BootModeValues(xtv)
+ }
+
case strings.EqualFold("capacityReservationId", t.Name.Local):
val, err := decoder.Value()
if err != nil {
@@ -63103,6 +63717,12 @@ func awsEc2query_deserializeDocumentInstanceTypeInfo(v **types.InstanceTypeInfo,
return err
}
+ case strings.EqualFold("supportedBootModes", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsEc2query_deserializeDocumentBootModeTypeList(&sv.SupportedBootModes, nodeDecoder); err != nil {
+ return err
+ }
+
case strings.EqualFold("supportedRootDeviceTypes", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
if err := awsEc2query_deserializeDocumentRootDeviceTypeList(&sv.SupportedRootDeviceTypes, nodeDecoder); err != nil {
@@ -71187,6 +71807,12 @@ func awsEc2query_deserializeDocumentNetworkInfo(v **types.NetworkInfo, decoder s
sv.DefaultNetworkCardIndex = ptr.Int32(int32(i64))
}
+ case strings.EqualFold("efaInfo", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsEc2query_deserializeDocumentEfaInfo(&sv.EfaInfo, nodeDecoder); err != nil {
+ return err
+ }
+
case strings.EqualFold("efaSupported", t.Name.Local):
val, err := decoder.Value()
if err != nil {
@@ -77854,6 +78480,181 @@ func awsEc2query_deserializeDocumentRegionListUnwrapped(v *[]types.Region, decod
*v = sv
return nil
}
+func awsEc2query_deserializeDocumentReplaceRootVolumeTask(v **types.ReplaceRootVolumeTask, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.ReplaceRootVolumeTask
+ if *v == nil {
+ sv = &types.ReplaceRootVolumeTask{}
+ } 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("completeTime", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.CompleteTime = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("instanceId", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.InstanceId = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("replaceRootVolumeTaskId", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ReplaceRootVolumeTaskId = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("startTime", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.StartTime = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("tagSet", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsEc2query_deserializeDocumentTagList(&sv.Tags, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("taskState", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.TaskState = types.ReplaceRootVolumeTaskState(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_deserializeDocumentReplaceRootVolumeTasks(v *[]types.ReplaceRootVolumeTask, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv []types.ReplaceRootVolumeTask
+ if *v == nil {
+ sv = make([]types.ReplaceRootVolumeTask, 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.ReplaceRootVolumeTask
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &col
+ if err := awsEc2query_deserializeDocumentReplaceRootVolumeTask(&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_deserializeDocumentReplaceRootVolumeTasksUnwrapped(v *[]types.ReplaceRootVolumeTask, decoder smithyxml.NodeDecoder) error {
+ var sv []types.ReplaceRootVolumeTask
+ if *v == nil {
+ sv = make([]types.ReplaceRootVolumeTask, 0)
+ } else {
+ sv = *v
+ }
+
+ switch {
+ default:
+ var mv types.ReplaceRootVolumeTask
+ t := decoder.StartEl
+ _ = t
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &mv
+ if err := awsEc2query_deserializeDocumentReplaceRootVolumeTask(&destAddr, nodeDecoder); err != nil {
+ return err
+ }
+ mv = *destAddr
+ sv = append(sv, mv)
+ }
+ *v = sv
+ return nil
+}
func awsEc2query_deserializeDocumentReservation(v **types.Reservation, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -102808,6 +103609,48 @@ func awsEc2query_deserializeOpDocumentCreatePlacementGroupOutput(v **CreatePlace
return nil
}
+func awsEc2query_deserializeOpDocumentCreateReplaceRootVolumeTaskOutput(v **CreateReplaceRootVolumeTaskOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *CreateReplaceRootVolumeTaskOutput
+ if *v == nil {
+ sv = &CreateReplaceRootVolumeTaskOutput{}
+ } 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("replaceRootVolumeTask", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsEc2query_deserializeDocumentReplaceRootVolumeTask(&sv.ReplaceRootVolumeTask, nodeDecoder); err != nil {
+ return err
+ }
+
+ 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_deserializeOpDocumentCreateReservedInstancesListingOutput(v **CreateReservedInstancesListingOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -108207,6 +109050,12 @@ func awsEc2query_deserializeOpDocumentDescribeImageAttributeOutput(v **DescribeI
return err
}
+ case strings.EqualFold("bootMode", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsEc2query_deserializeDocumentAttributeValue(&sv.BootMode, nodeDecoder); err != nil {
+ return err
+ }
+
case strings.EqualFold("description", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
if err := awsEc2query_deserializeDocumentAttributeValue(&sv.Description, nodeDecoder); err != nil {
@@ -108933,13 +109782,220 @@ func awsEc2query_deserializeOpDocumentDescribeInternetGatewaysOutput(v **Describ
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeIpv6PoolsOutput(v **DescribeIpv6PoolsOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeIpv6PoolsOutput(v **DescribeIpv6PoolsOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *DescribeIpv6PoolsOutput
+ if *v == nil {
+ sv = &DescribeIpv6PoolsOutput{}
+ } 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("ipv6PoolSet", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsEc2query_deserializeDocumentIpv6PoolSet(&sv.Ipv6Pools, 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_deserializeOpDocumentDescribeKeyPairsOutput(v **DescribeKeyPairsOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *DescribeKeyPairsOutput
+ if *v == nil {
+ sv = &DescribeKeyPairsOutput{}
+ } 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("keySet", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsEc2query_deserializeDocumentKeyPairList(&sv.KeyPairs, nodeDecoder); err != nil {
+ return err
+ }
+
+ 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_deserializeOpDocumentDescribeLaunchTemplatesOutput(v **DescribeLaunchTemplatesOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *DescribeLaunchTemplatesOutput
+ if *v == nil {
+ sv = &DescribeLaunchTemplatesOutput{}
+ } 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("launchTemplates", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsEc2query_deserializeDocumentLaunchTemplateSet(&sv.LaunchTemplates, 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_deserializeOpDocumentDescribeLaunchTemplateVersionsOutput(v **DescribeLaunchTemplateVersionsOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *DescribeLaunchTemplateVersionsOutput
+ if *v == nil {
+ sv = &DescribeLaunchTemplateVersionsOutput{}
+ } 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("launchTemplateVersionSet", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsEc2query_deserializeDocumentLaunchTemplateVersionSet(&sv.LaunchTemplateVersions, 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_deserializeOpDocumentDescribeLocalGatewayRouteTablesOutput(v **DescribeLocalGatewayRouteTablesOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeIpv6PoolsOutput
+ var sv *DescribeLocalGatewayRouteTablesOutput
if *v == nil {
- sv = &DescribeIpv6PoolsOutput{}
+ sv = &DescribeLocalGatewayRouteTablesOutput{}
} else {
sv = *v
}
@@ -108955,9 +110011,9 @@ func awsEc2query_deserializeOpDocumentDescribeIpv6PoolsOutput(v **DescribeIpv6Po
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("ipv6PoolSet", t.Name.Local):
+ case strings.EqualFold("localGatewayRouteTableSet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentIpv6PoolSet(&sv.Ipv6Pools, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentLocalGatewayRouteTableSet(&sv.LocalGatewayRouteTables, nodeDecoder); err != nil {
return err
}
@@ -108988,55 +110044,13 @@ func awsEc2query_deserializeOpDocumentDescribeIpv6PoolsOutput(v **DescribeIpv6Po
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeKeyPairsOutput(v **DescribeKeyPairsOutput, decoder smithyxml.NodeDecoder) error {
- if v == nil {
- return fmt.Errorf("unexpected nil of type %T", v)
- }
- var sv *DescribeKeyPairsOutput
- if *v == nil {
- sv = &DescribeKeyPairsOutput{}
- } 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("keySet", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentKeyPairList(&sv.KeyPairs, nodeDecoder); err != nil {
- return err
- }
-
- 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_deserializeOpDocumentDescribeLaunchTemplatesOutput(v **DescribeLaunchTemplatesOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsOutput(v **DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeLaunchTemplatesOutput
+ var sv *DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsOutput
if *v == nil {
- sv = &DescribeLaunchTemplatesOutput{}
+ sv = &DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsOutput{}
} else {
sv = *v
}
@@ -109052,9 +110066,9 @@ func awsEc2query_deserializeOpDocumentDescribeLaunchTemplatesOutput(v **Describe
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("launchTemplates", t.Name.Local):
+ case strings.EqualFold("localGatewayRouteTableVirtualInterfaceGroupAssociationSet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentLaunchTemplateSet(&sv.LaunchTemplates, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentLocalGatewayRouteTableVirtualInterfaceGroupAssociationSet(&sv.LocalGatewayRouteTableVirtualInterfaceGroupAssociations, nodeDecoder); err != nil {
return err
}
@@ -109085,13 +110099,13 @@ func awsEc2query_deserializeOpDocumentDescribeLaunchTemplatesOutput(v **Describe
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeLaunchTemplateVersionsOutput(v **DescribeLaunchTemplateVersionsOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeLocalGatewayRouteTableVpcAssociationsOutput(v **DescribeLocalGatewayRouteTableVpcAssociationsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeLaunchTemplateVersionsOutput
+ var sv *DescribeLocalGatewayRouteTableVpcAssociationsOutput
if *v == nil {
- sv = &DescribeLaunchTemplateVersionsOutput{}
+ sv = &DescribeLocalGatewayRouteTableVpcAssociationsOutput{}
} else {
sv = *v
}
@@ -109107,9 +110121,9 @@ func awsEc2query_deserializeOpDocumentDescribeLaunchTemplateVersionsOutput(v **D
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("launchTemplateVersionSet", t.Name.Local):
+ case strings.EqualFold("localGatewayRouteTableVpcAssociationSet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentLaunchTemplateVersionSet(&sv.LaunchTemplateVersions, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentLocalGatewayRouteTableVpcAssociationSet(&sv.LocalGatewayRouteTableVpcAssociations, nodeDecoder); err != nil {
return err
}
@@ -109140,13 +110154,13 @@ func awsEc2query_deserializeOpDocumentDescribeLaunchTemplateVersionsOutput(v **D
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeLocalGatewayRouteTablesOutput(v **DescribeLocalGatewayRouteTablesOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeLocalGatewaysOutput(v **DescribeLocalGatewaysOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeLocalGatewayRouteTablesOutput
+ var sv *DescribeLocalGatewaysOutput
if *v == nil {
- sv = &DescribeLocalGatewayRouteTablesOutput{}
+ sv = &DescribeLocalGatewaysOutput{}
} else {
sv = *v
}
@@ -109162,9 +110176,9 @@ func awsEc2query_deserializeOpDocumentDescribeLocalGatewayRouteTablesOutput(v **
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("localGatewayRouteTableSet", t.Name.Local):
+ case strings.EqualFold("localGatewaySet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentLocalGatewayRouteTableSet(&sv.LocalGatewayRouteTables, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentLocalGatewaySet(&sv.LocalGateways, nodeDecoder); err != nil {
return err
}
@@ -109195,13 +110209,13 @@ func awsEc2query_deserializeOpDocumentDescribeLocalGatewayRouteTablesOutput(v **
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsOutput(v **DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeLocalGatewayVirtualInterfaceGroupsOutput(v **DescribeLocalGatewayVirtualInterfaceGroupsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsOutput
+ var sv *DescribeLocalGatewayVirtualInterfaceGroupsOutput
if *v == nil {
- sv = &DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsOutput{}
+ sv = &DescribeLocalGatewayVirtualInterfaceGroupsOutput{}
} else {
sv = *v
}
@@ -109217,9 +110231,9 @@ func awsEc2query_deserializeOpDocumentDescribeLocalGatewayRouteTableVirtualInter
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("localGatewayRouteTableVirtualInterfaceGroupAssociationSet", t.Name.Local):
+ case strings.EqualFold("localGatewayVirtualInterfaceGroupSet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentLocalGatewayRouteTableVirtualInterfaceGroupAssociationSet(&sv.LocalGatewayRouteTableVirtualInterfaceGroupAssociations, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentLocalGatewayVirtualInterfaceGroupSet(&sv.LocalGatewayVirtualInterfaceGroups, nodeDecoder); err != nil {
return err
}
@@ -109250,13 +110264,13 @@ func awsEc2query_deserializeOpDocumentDescribeLocalGatewayRouteTableVirtualInter
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeLocalGatewayRouteTableVpcAssociationsOutput(v **DescribeLocalGatewayRouteTableVpcAssociationsOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeLocalGatewayVirtualInterfacesOutput(v **DescribeLocalGatewayVirtualInterfacesOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeLocalGatewayRouteTableVpcAssociationsOutput
+ var sv *DescribeLocalGatewayVirtualInterfacesOutput
if *v == nil {
- sv = &DescribeLocalGatewayRouteTableVpcAssociationsOutput{}
+ sv = &DescribeLocalGatewayVirtualInterfacesOutput{}
} else {
sv = *v
}
@@ -109272,9 +110286,9 @@ func awsEc2query_deserializeOpDocumentDescribeLocalGatewayRouteTableVpcAssociati
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("localGatewayRouteTableVpcAssociationSet", t.Name.Local):
+ case strings.EqualFold("localGatewayVirtualInterfaceSet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentLocalGatewayRouteTableVpcAssociationSet(&sv.LocalGatewayRouteTableVpcAssociations, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentLocalGatewayVirtualInterfaceSet(&sv.LocalGatewayVirtualInterfaces, nodeDecoder); err != nil {
return err
}
@@ -109305,13 +110319,13 @@ func awsEc2query_deserializeOpDocumentDescribeLocalGatewayRouteTableVpcAssociati
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeLocalGatewaysOutput(v **DescribeLocalGatewaysOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeManagedPrefixListsOutput(v **DescribeManagedPrefixListsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeLocalGatewaysOutput
+ var sv *DescribeManagedPrefixListsOutput
if *v == nil {
- sv = &DescribeLocalGatewaysOutput{}
+ sv = &DescribeManagedPrefixListsOutput{}
} else {
sv = *v
}
@@ -109327,12 +110341,6 @@ func awsEc2query_deserializeOpDocumentDescribeLocalGatewaysOutput(v **DescribeLo
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("localGatewaySet", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentLocalGatewaySet(&sv.LocalGateways, nodeDecoder); err != nil {
- return err
- }
-
case strings.EqualFold("nextToken", t.Name.Local):
val, err := decoder.Value()
if err != nil {
@@ -109346,6 +110354,12 @@ func awsEc2query_deserializeOpDocumentDescribeLocalGatewaysOutput(v **DescribeLo
sv.NextToken = ptr.String(xtv)
}
+ case strings.EqualFold("prefixListSet", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsEc2query_deserializeDocumentManagedPrefixListSet(&sv.PrefixLists, nodeDecoder); err != nil {
+ return err
+ }
+
default:
// Do nothing and ignore the unexpected tag element
err = decoder.Decoder.Skip()
@@ -109360,13 +110374,13 @@ func awsEc2query_deserializeOpDocumentDescribeLocalGatewaysOutput(v **DescribeLo
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeLocalGatewayVirtualInterfaceGroupsOutput(v **DescribeLocalGatewayVirtualInterfaceGroupsOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeMovingAddressesOutput(v **DescribeMovingAddressesOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeLocalGatewayVirtualInterfaceGroupsOutput
+ var sv *DescribeMovingAddressesOutput
if *v == nil {
- sv = &DescribeLocalGatewayVirtualInterfaceGroupsOutput{}
+ sv = &DescribeMovingAddressesOutput{}
} else {
sv = *v
}
@@ -109382,9 +110396,9 @@ func awsEc2query_deserializeOpDocumentDescribeLocalGatewayVirtualInterfaceGroups
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("localGatewayVirtualInterfaceGroupSet", t.Name.Local):
+ case strings.EqualFold("movingAddressStatusSet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentLocalGatewayVirtualInterfaceGroupSet(&sv.LocalGatewayVirtualInterfaceGroups, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentMovingAddressStatusSet(&sv.MovingAddressStatuses, nodeDecoder); err != nil {
return err
}
@@ -109415,13 +110429,13 @@ func awsEc2query_deserializeOpDocumentDescribeLocalGatewayVirtualInterfaceGroups
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeLocalGatewayVirtualInterfacesOutput(v **DescribeLocalGatewayVirtualInterfacesOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeNatGatewaysOutput(v **DescribeNatGatewaysOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeLocalGatewayVirtualInterfacesOutput
+ var sv *DescribeNatGatewaysOutput
if *v == nil {
- sv = &DescribeLocalGatewayVirtualInterfacesOutput{}
+ sv = &DescribeNatGatewaysOutput{}
} else {
sv = *v
}
@@ -109437,9 +110451,9 @@ func awsEc2query_deserializeOpDocumentDescribeLocalGatewayVirtualInterfacesOutpu
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("localGatewayVirtualInterfaceSet", t.Name.Local):
+ case strings.EqualFold("natGatewaySet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentLocalGatewayVirtualInterfaceSet(&sv.LocalGatewayVirtualInterfaces, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentNatGatewayList(&sv.NatGateways, nodeDecoder); err != nil {
return err
}
@@ -109470,13 +110484,13 @@ func awsEc2query_deserializeOpDocumentDescribeLocalGatewayVirtualInterfacesOutpu
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeManagedPrefixListsOutput(v **DescribeManagedPrefixListsOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeNetworkAclsOutput(v **DescribeNetworkAclsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeManagedPrefixListsOutput
+ var sv *DescribeNetworkAclsOutput
if *v == nil {
- sv = &DescribeManagedPrefixListsOutput{}
+ sv = &DescribeNetworkAclsOutput{}
} else {
sv = *v
}
@@ -109492,6 +110506,12 @@ func awsEc2query_deserializeOpDocumentDescribeManagedPrefixListsOutput(v **Descr
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
+ case strings.EqualFold("networkAclSet", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsEc2query_deserializeDocumentNetworkAclList(&sv.NetworkAcls, nodeDecoder); err != nil {
+ return err
+ }
+
case strings.EqualFold("nextToken", t.Name.Local):
val, err := decoder.Value()
if err != nil {
@@ -109505,12 +110525,6 @@ func awsEc2query_deserializeOpDocumentDescribeManagedPrefixListsOutput(v **Descr
sv.NextToken = ptr.String(xtv)
}
- case strings.EqualFold("prefixListSet", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentManagedPrefixListSet(&sv.PrefixLists, nodeDecoder); err != nil {
- return err
- }
-
default:
// Do nothing and ignore the unexpected tag element
err = decoder.Decoder.Skip()
@@ -109525,13 +110539,13 @@ func awsEc2query_deserializeOpDocumentDescribeManagedPrefixListsOutput(v **Descr
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeMovingAddressesOutput(v **DescribeMovingAddressesOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeNetworkInsightsAnalysesOutput(v **DescribeNetworkInsightsAnalysesOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeMovingAddressesOutput
+ var sv *DescribeNetworkInsightsAnalysesOutput
if *v == nil {
- sv = &DescribeMovingAddressesOutput{}
+ sv = &DescribeNetworkInsightsAnalysesOutput{}
} else {
sv = *v
}
@@ -109547,9 +110561,9 @@ func awsEc2query_deserializeOpDocumentDescribeMovingAddressesOutput(v **Describe
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("movingAddressStatusSet", t.Name.Local):
+ case strings.EqualFold("networkInsightsAnalysisSet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentMovingAddressStatusSet(&sv.MovingAddressStatuses, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentNetworkInsightsAnalysisList(&sv.NetworkInsightsAnalyses, nodeDecoder); err != nil {
return err
}
@@ -109580,13 +110594,13 @@ func awsEc2query_deserializeOpDocumentDescribeMovingAddressesOutput(v **Describe
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeNatGatewaysOutput(v **DescribeNatGatewaysOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeNetworkInsightsPathsOutput(v **DescribeNetworkInsightsPathsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeNatGatewaysOutput
+ var sv *DescribeNetworkInsightsPathsOutput
if *v == nil {
- sv = &DescribeNatGatewaysOutput{}
+ sv = &DescribeNetworkInsightsPathsOutput{}
} else {
sv = *v
}
@@ -109602,9 +110616,9 @@ func awsEc2query_deserializeOpDocumentDescribeNatGatewaysOutput(v **DescribeNatG
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("natGatewaySet", t.Name.Local):
+ case strings.EqualFold("networkInsightsPathSet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentNatGatewayList(&sv.NatGateways, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentNetworkInsightsPathList(&sv.NetworkInsightsPaths, nodeDecoder); err != nil {
return err
}
@@ -109635,13 +110649,13 @@ func awsEc2query_deserializeOpDocumentDescribeNatGatewaysOutput(v **DescribeNatG
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeNetworkAclsOutput(v **DescribeNetworkAclsOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeNetworkInterfaceAttributeOutput(v **DescribeNetworkInterfaceAttributeOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeNetworkAclsOutput
+ var sv *DescribeNetworkInterfaceAttributeOutput
if *v == nil {
- sv = &DescribeNetworkAclsOutput{}
+ sv = &DescribeNetworkInterfaceAttributeOutput{}
} else {
sv = *v
}
@@ -109657,68 +110671,25 @@ func awsEc2query_deserializeOpDocumentDescribeNetworkAclsOutput(v **DescribeNetw
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("networkAclSet", t.Name.Local):
+ case strings.EqualFold("attachment", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentNetworkAclList(&sv.NetworkAcls, nodeDecoder); err != nil {
- return err
- }
-
- case strings.EqualFold("nextToken", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
+ if err := awsEc2query_deserializeDocumentNetworkInterfaceAttachment(&sv.Attachment, nodeDecoder); 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 {
+ case strings.EqualFold("description", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsEc2query_deserializeDocumentAttributeValue(&sv.Description, nodeDecoder); err != nil {
return err
}
- }
- decoder = originalDecoder
- }
- *v = sv
- return nil
-}
-
-func awsEc2query_deserializeOpDocumentDescribeNetworkInsightsAnalysesOutput(v **DescribeNetworkInsightsAnalysesOutput, decoder smithyxml.NodeDecoder) error {
- if v == nil {
- return fmt.Errorf("unexpected nil of type %T", v)
- }
- var sv *DescribeNetworkInsightsAnalysesOutput
- if *v == nil {
- sv = &DescribeNetworkInsightsAnalysesOutput{}
- } 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("networkInsightsAnalysisSet", t.Name.Local):
+ case strings.EqualFold("groupSet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentNetworkInsightsAnalysisList(&sv.NetworkInsightsAnalyses, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentGroupIdentifierList(&sv.Groups, nodeDecoder); err != nil {
return err
}
- case strings.EqualFold("nextToken", t.Name.Local):
+ case strings.EqualFold("networkInterfaceId", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -109728,7 +110699,13 @@ func awsEc2query_deserializeOpDocumentDescribeNetworkInsightsAnalysesOutput(v **
}
{
xtv := string(val)
- sv.NextToken = ptr.String(xtv)
+ sv.NetworkInterfaceId = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("sourceDestCheck", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsEc2query_deserializeDocumentAttributeBooleanValue(&sv.SourceDestCheck, nodeDecoder); err != nil {
+ return err
}
default:
@@ -109745,13 +110722,13 @@ func awsEc2query_deserializeOpDocumentDescribeNetworkInsightsAnalysesOutput(v **
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeNetworkInsightsPathsOutput(v **DescribeNetworkInsightsPathsOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeNetworkInterfacePermissionsOutput(v **DescribeNetworkInterfacePermissionsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeNetworkInsightsPathsOutput
+ var sv *DescribeNetworkInterfacePermissionsOutput
if *v == nil {
- sv = &DescribeNetworkInsightsPathsOutput{}
+ sv = &DescribeNetworkInterfacePermissionsOutput{}
} else {
sv = *v
}
@@ -109767,9 +110744,9 @@ func awsEc2query_deserializeOpDocumentDescribeNetworkInsightsPathsOutput(v **Des
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("networkInsightsPathSet", t.Name.Local):
+ case strings.EqualFold("networkInterfacePermissions", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentNetworkInsightsPathList(&sv.NetworkInsightsPaths, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentNetworkInterfacePermissionList(&sv.NetworkInterfacePermissions, nodeDecoder); err != nil {
return err
}
@@ -109800,13 +110777,13 @@ func awsEc2query_deserializeOpDocumentDescribeNetworkInsightsPathsOutput(v **Des
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeNetworkInterfaceAttributeOutput(v **DescribeNetworkInterfaceAttributeOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeNetworkInterfacesOutput(v **DescribeNetworkInterfacesOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeNetworkInterfaceAttributeOutput
+ var sv *DescribeNetworkInterfacesOutput
if *v == nil {
- sv = &DescribeNetworkInterfaceAttributeOutput{}
+ sv = &DescribeNetworkInterfacesOutput{}
} else {
sv = *v
}
@@ -109822,25 +110799,13 @@ func awsEc2query_deserializeOpDocumentDescribeNetworkInterfaceAttributeOutput(v
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("attachment", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentNetworkInterfaceAttachment(&sv.Attachment, nodeDecoder); err != nil {
- return err
- }
-
- case strings.EqualFold("description", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentAttributeValue(&sv.Description, nodeDecoder); err != nil {
- return err
- }
-
- case strings.EqualFold("groupSet", t.Name.Local):
+ case strings.EqualFold("networkInterfaceSet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentGroupIdentifierList(&sv.Groups, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentNetworkInterfaceList(&sv.NetworkInterfaces, nodeDecoder); err != nil {
return err
}
- case strings.EqualFold("networkInterfaceId", t.Name.Local):
+ case strings.EqualFold("nextToken", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -109850,13 +110815,7 @@ func awsEc2query_deserializeOpDocumentDescribeNetworkInterfaceAttributeOutput(v
}
{
xtv := string(val)
- sv.NetworkInterfaceId = ptr.String(xtv)
- }
-
- case strings.EqualFold("sourceDestCheck", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentAttributeBooleanValue(&sv.SourceDestCheck, nodeDecoder); err != nil {
- return err
+ sv.NextToken = ptr.String(xtv)
}
default:
@@ -109873,13 +110832,13 @@ func awsEc2query_deserializeOpDocumentDescribeNetworkInterfaceAttributeOutput(v
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeNetworkInterfacePermissionsOutput(v **DescribeNetworkInterfacePermissionsOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribePlacementGroupsOutput(v **DescribePlacementGroupsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeNetworkInterfacePermissionsOutput
+ var sv *DescribePlacementGroupsOutput
if *v == nil {
- sv = &DescribeNetworkInterfacePermissionsOutput{}
+ sv = &DescribePlacementGroupsOutput{}
} else {
sv = *v
}
@@ -109895,24 +110854,11 @@ func awsEc2query_deserializeOpDocumentDescribeNetworkInterfacePermissionsOutput(
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("networkInterfacePermissions", t.Name.Local):
+ case strings.EqualFold("placementGroupSet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentNetworkInterfacePermissionList(&sv.NetworkInterfacePermissions, nodeDecoder); err != nil {
- return err
- }
-
- case strings.EqualFold("nextToken", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
+ if err := awsEc2query_deserializeDocumentPlacementGroupList(&sv.PlacementGroups, nodeDecoder); 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
@@ -109928,13 +110874,13 @@ func awsEc2query_deserializeOpDocumentDescribeNetworkInterfacePermissionsOutput(
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeNetworkInterfacesOutput(v **DescribeNetworkInterfacesOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribePrefixListsOutput(v **DescribePrefixListsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeNetworkInterfacesOutput
+ var sv *DescribePrefixListsOutput
if *v == nil {
- sv = &DescribeNetworkInterfacesOutput{}
+ sv = &DescribePrefixListsOutput{}
} else {
sv = *v
}
@@ -109950,12 +110896,6 @@ func awsEc2query_deserializeOpDocumentDescribeNetworkInterfacesOutput(v **Descri
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("networkInterfaceSet", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentNetworkInterfaceList(&sv.NetworkInterfaces, nodeDecoder); err != nil {
- return err
- }
-
case strings.EqualFold("nextToken", t.Name.Local):
val, err := decoder.Value()
if err != nil {
@@ -109969,45 +110909,9 @@ func awsEc2query_deserializeOpDocumentDescribeNetworkInterfacesOutput(v **Descri
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_deserializeOpDocumentDescribePlacementGroupsOutput(v **DescribePlacementGroupsOutput, decoder smithyxml.NodeDecoder) error {
- if v == nil {
- return fmt.Errorf("unexpected nil of type %T", v)
- }
- var sv *DescribePlacementGroupsOutput
- if *v == nil {
- sv = &DescribePlacementGroupsOutput{}
- } 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("placementGroupSet", t.Name.Local):
+ case strings.EqualFold("prefixListSet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentPlacementGroupList(&sv.PlacementGroups, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentPrefixListSet(&sv.PrefixLists, nodeDecoder); err != nil {
return err
}
@@ -110025,13 +110929,13 @@ func awsEc2query_deserializeOpDocumentDescribePlacementGroupsOutput(v **Describe
return nil
}
-func awsEc2query_deserializeOpDocumentDescribePrefixListsOutput(v **DescribePrefixListsOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribePrincipalIdFormatOutput(v **DescribePrincipalIdFormatOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribePrefixListsOutput
+ var sv *DescribePrincipalIdFormatOutput
if *v == nil {
- sv = &DescribePrefixListsOutput{}
+ sv = &DescribePrincipalIdFormatOutput{}
} else {
sv = *v
}
@@ -110060,9 +110964,9 @@ func awsEc2query_deserializeOpDocumentDescribePrefixListsOutput(v **DescribePref
sv.NextToken = ptr.String(xtv)
}
- case strings.EqualFold("prefixListSet", t.Name.Local):
+ case strings.EqualFold("principalSet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentPrefixListSet(&sv.PrefixLists, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentPrincipalIdFormatList(&sv.Principals, nodeDecoder); err != nil {
return err
}
@@ -110080,13 +110984,13 @@ func awsEc2query_deserializeOpDocumentDescribePrefixListsOutput(v **DescribePref
return nil
}
-func awsEc2query_deserializeOpDocumentDescribePrincipalIdFormatOutput(v **DescribePrincipalIdFormatOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribePublicIpv4PoolsOutput(v **DescribePublicIpv4PoolsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribePrincipalIdFormatOutput
+ var sv *DescribePublicIpv4PoolsOutput
if *v == nil {
- sv = &DescribePrincipalIdFormatOutput{}
+ sv = &DescribePublicIpv4PoolsOutput{}
} else {
sv = *v
}
@@ -110115,9 +111019,9 @@ func awsEc2query_deserializeOpDocumentDescribePrincipalIdFormatOutput(v **Descri
sv.NextToken = ptr.String(xtv)
}
- case strings.EqualFold("principalSet", t.Name.Local):
+ case strings.EqualFold("publicIpv4PoolSet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentPrincipalIdFormatList(&sv.Principals, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentPublicIpv4PoolSet(&sv.PublicIpv4Pools, nodeDecoder); err != nil {
return err
}
@@ -110135,13 +111039,13 @@ func awsEc2query_deserializeOpDocumentDescribePrincipalIdFormatOutput(v **Descri
return nil
}
-func awsEc2query_deserializeOpDocumentDescribePublicIpv4PoolsOutput(v **DescribePublicIpv4PoolsOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeRegionsOutput(v **DescribeRegionsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribePublicIpv4PoolsOutput
+ var sv *DescribeRegionsOutput
if *v == nil {
- sv = &DescribePublicIpv4PoolsOutput{}
+ sv = &DescribeRegionsOutput{}
} else {
sv = *v
}
@@ -110157,22 +111061,9 @@ func awsEc2query_deserializeOpDocumentDescribePublicIpv4PoolsOutput(v **Describe
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- 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)
- }
-
- case strings.EqualFold("publicIpv4PoolSet", t.Name.Local):
+ case strings.EqualFold("regionInfo", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentPublicIpv4PoolSet(&sv.PublicIpv4Pools, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentRegionList(&sv.Regions, nodeDecoder); err != nil {
return err
}
@@ -110190,13 +111081,13 @@ func awsEc2query_deserializeOpDocumentDescribePublicIpv4PoolsOutput(v **Describe
return nil
}
-func awsEc2query_deserializeOpDocumentDescribeRegionsOutput(v **DescribeRegionsOutput, decoder smithyxml.NodeDecoder) error {
+func awsEc2query_deserializeOpDocumentDescribeReplaceRootVolumeTasksOutput(v **DescribeReplaceRootVolumeTasksOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *DescribeRegionsOutput
+ var sv *DescribeReplaceRootVolumeTasksOutput
if *v == nil {
- sv = &DescribeRegionsOutput{}
+ sv = &DescribeReplaceRootVolumeTasksOutput{}
} else {
sv = *v
}
@@ -110212,9 +111103,22 @@ func awsEc2query_deserializeOpDocumentDescribeRegionsOutput(v **DescribeRegionsO
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("regionInfo", t.Name.Local):
+ 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)
+ }
+
+ case strings.EqualFold("replaceRootVolumeTaskSet", t.Name.Local):
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsEc2query_deserializeDocumentRegionList(&sv.Regions, nodeDecoder); err != nil {
+ if err := awsEc2query_deserializeDocumentReplaceRootVolumeTasks(&sv.ReplaceRootVolumeTasks, nodeDecoder); err != nil {
return err
}
@@ -113138,6 +114042,58 @@ func awsEc2query_deserializeOpDocumentDisableFastSnapshotRestoresOutput(v **Disa
return nil
}
+func awsEc2query_deserializeOpDocumentDisableSerialConsoleAccessOutput(v **DisableSerialConsoleAccessOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *DisableSerialConsoleAccessOutput
+ if *v == nil {
+ sv = &DisableSerialConsoleAccessOutput{}
+ } 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("serialConsoleAccessEnabled", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv, err := strconv.ParseBool(string(val))
+ if err != nil {
+ return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", val)
+ }
+ sv.SerialConsoleAccessEnabled = 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_deserializeOpDocumentDisableTransitGatewayRouteTablePropagationOutput(v **DisableTransitGatewayRouteTablePropagationOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -113733,6 +114689,58 @@ func awsEc2query_deserializeOpDocumentEnableFastSnapshotRestoresOutput(v **Enabl
return nil
}
+func awsEc2query_deserializeOpDocumentEnableSerialConsoleAccessOutput(v **EnableSerialConsoleAccessOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *EnableSerialConsoleAccessOutput
+ if *v == nil {
+ sv = &EnableSerialConsoleAccessOutput{}
+ } 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("serialConsoleAccessEnabled", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv, err := strconv.ParseBool(string(val))
+ if err != nil {
+ return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", val)
+ }
+ sv.SerialConsoleAccessEnabled = 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_deserializeOpDocumentEnableTransitGatewayRouteTablePropagationOutput(v **EnableTransitGatewayRouteTablePropagationOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -115260,6 +116268,58 @@ func awsEc2query_deserializeOpDocumentGetReservedInstancesExchangeQuoteOutput(v
return nil
}
+func awsEc2query_deserializeOpDocumentGetSerialConsoleAccessStatusOutput(v **GetSerialConsoleAccessStatusOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *GetSerialConsoleAccessStatusOutput
+ if *v == nil {
+ sv = &GetSerialConsoleAccessStatusOutput{}
+ } 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("serialConsoleAccessEnabled", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv, err := strconv.ParseBool(string(val))
+ if err != nil {
+ return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", val)
+ }
+ sv.SerialConsoleAccessEnabled = 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_deserializeOpDocumentGetTransitGatewayAttachmentPropagationsOutput(v **GetTransitGatewayAttachmentPropagationsOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
diff --git a/service/ec2/go.mod b/service/ec2/go.mod
index a0dff870056..15bcf2d712e 100644
--- a/service/ec2/go.mod
+++ b/service/ec2/go.mod
@@ -5,7 +5,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.0.4
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/ec2/go.sum b/service/ec2/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/ec2/go.sum
+++ b/service/ec2/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/ec2/serializers.go b/service/ec2/serializers.go
index c0c0b02daea..c59acb85a87 100644
--- a/service/ec2/serializers.go
+++ b/service/ec2/serializers.go
@@ -3991,6 +3991,62 @@ func (m *awsEc2query_serializeOpCreatePlacementGroup) HandleSerialize(ctx contex
return next.HandleSerialize(ctx, in)
}
+type awsEc2query_serializeOpCreateReplaceRootVolumeTask struct {
+}
+
+func (*awsEc2query_serializeOpCreateReplaceRootVolumeTask) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsEc2query_serializeOpCreateReplaceRootVolumeTask) 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.(*CreateReplaceRootVolumeTaskInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("CreateReplaceRootVolumeTask")
+ body.Key("Version").String("2016-11-15")
+
+ if err := awsEc2query_serializeOpDocumentCreateReplaceRootVolumeTaskInput(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_serializeOpCreateReservedInstancesListing struct {
}
@@ -13063,6 +13119,62 @@ func (m *awsEc2query_serializeOpDescribeRegions) HandleSerialize(ctx context.Con
return next.HandleSerialize(ctx, in)
}
+type awsEc2query_serializeOpDescribeReplaceRootVolumeTasks struct {
+}
+
+func (*awsEc2query_serializeOpDescribeReplaceRootVolumeTasks) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsEc2query_serializeOpDescribeReplaceRootVolumeTasks) 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.(*DescribeReplaceRootVolumeTasksInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("DescribeReplaceRootVolumeTasks")
+ body.Key("Version").String("2016-11-15")
+
+ if err := awsEc2query_serializeOpDocumentDescribeReplaceRootVolumeTasksInput(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_serializeOpDescribeReservedInstances struct {
}
@@ -16143,6 +16255,62 @@ func (m *awsEc2query_serializeOpDisableFastSnapshotRestores) HandleSerialize(ctx
return next.HandleSerialize(ctx, in)
}
+type awsEc2query_serializeOpDisableSerialConsoleAccess struct {
+}
+
+func (*awsEc2query_serializeOpDisableSerialConsoleAccess) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsEc2query_serializeOpDisableSerialConsoleAccess) 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.(*DisableSerialConsoleAccessInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("DisableSerialConsoleAccess")
+ body.Key("Version").String("2016-11-15")
+
+ if err := awsEc2query_serializeOpDocumentDisableSerialConsoleAccessInput(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_serializeOpDisableTransitGatewayRouteTablePropagation struct {
}
@@ -16983,6 +17151,62 @@ func (m *awsEc2query_serializeOpEnableFastSnapshotRestores) HandleSerialize(ctx
return next.HandleSerialize(ctx, in)
}
+type awsEc2query_serializeOpEnableSerialConsoleAccess struct {
+}
+
+func (*awsEc2query_serializeOpEnableSerialConsoleAccess) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsEc2query_serializeOpEnableSerialConsoleAccess) 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.(*EnableSerialConsoleAccessInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("EnableSerialConsoleAccess")
+ body.Key("Version").String("2016-11-15")
+
+ if err := awsEc2query_serializeOpDocumentEnableSerialConsoleAccessInput(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_serializeOpEnableTransitGatewayRouteTablePropagation struct {
}
@@ -18383,6 +18607,62 @@ func (m *awsEc2query_serializeOpGetReservedInstancesExchangeQuote) HandleSeriali
return next.HandleSerialize(ctx, in)
}
+type awsEc2query_serializeOpGetSerialConsoleAccessStatus struct {
+}
+
+func (*awsEc2query_serializeOpGetSerialConsoleAccessStatus) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsEc2query_serializeOpGetSerialConsoleAccessStatus) 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.(*GetSerialConsoleAccessStatusInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("GetSerialConsoleAccessStatus")
+ body.Key("Version").String("2016-11-15")
+
+ if err := awsEc2query_serializeOpDocumentGetSerialConsoleAccessStatusInput(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_serializeOpGetTransitGatewayAttachmentPropagations struct {
}
@@ -28748,6 +29028,19 @@ func awsEc2query_serializeDocumentRemovePrefixListEntry(v *types.RemovePrefixLis
return nil
}
+func awsEc2query_serializeDocumentReplaceRootVolumeTaskIds(v []string, value query.Value) error {
+ if len(v) == 0 {
+ return nil
+ }
+ array := value.Array("ReplaceRootVolumeTaskId")
+
+ for i := range v {
+ av := array.Value()
+ av.String(v[i])
+ }
+ return nil
+}
+
func awsEc2query_serializeDocumentRequestHostIdList(v []string, value query.Value) error {
if len(v) == 0 {
return nil
@@ -33633,6 +33926,40 @@ func awsEc2query_serializeOpDocumentCreatePlacementGroupInput(v *CreatePlacement
return nil
}
+func awsEc2query_serializeOpDocumentCreateReplaceRootVolumeTaskInput(v *CreateReplaceRootVolumeTaskInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.ClientToken != nil {
+ objectKey := object.Key("ClientToken")
+ objectKey.String(*v.ClientToken)
+ }
+
+ if v.DryRun {
+ objectKey := object.Key("DryRun")
+ objectKey.Boolean(v.DryRun)
+ }
+
+ if v.InstanceId != nil {
+ objectKey := object.Key("InstanceId")
+ objectKey.String(*v.InstanceId)
+ }
+
+ if v.SnapshotId != nil {
+ objectKey := object.Key("SnapshotId")
+ objectKey.String(*v.SnapshotId)
+ }
+
+ if v.TagSpecifications != nil {
+ objectKey := object.FlatKey("TagSpecification")
+ if err := awsEc2query_serializeDocumentTagSpecificationList(v.TagSpecifications, objectKey); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsEc2query_serializeOpDocumentCreateReservedInstancesListingInput(v *CreateReservedInstancesListingInput, value query.Value) error {
object := value.Object()
_ = object
@@ -38392,6 +38719,42 @@ func awsEc2query_serializeOpDocumentDescribeRegionsInput(v *DescribeRegionsInput
return nil
}
+func awsEc2query_serializeOpDocumentDescribeReplaceRootVolumeTasksInput(v *DescribeReplaceRootVolumeTasksInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.DryRun {
+ 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.MaxResults != 0 {
+ objectKey := object.Key("MaxResults")
+ objectKey.Integer(v.MaxResults)
+ }
+
+ if v.NextToken != nil {
+ objectKey := object.Key("NextToken")
+ objectKey.String(*v.NextToken)
+ }
+
+ if v.ReplaceRootVolumeTaskIds != nil {
+ objectKey := object.FlatKey("ReplaceRootVolumeTaskId")
+ if err := awsEc2query_serializeDocumentReplaceRootVolumeTaskIds(v.ReplaceRootVolumeTaskIds, objectKey); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsEc2query_serializeOpDocumentDescribeReservedInstancesInput(v *DescribeReservedInstancesInput, value query.Value) error {
object := value.Object()
_ = object
@@ -40206,6 +40569,18 @@ func awsEc2query_serializeOpDocumentDisableFastSnapshotRestoresInput(v *DisableF
return nil
}
+func awsEc2query_serializeOpDocumentDisableSerialConsoleAccessInput(v *DisableSerialConsoleAccessInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.DryRun {
+ objectKey := object.Key("DryRun")
+ objectKey.Boolean(v.DryRun)
+ }
+
+ return nil
+}
+
func awsEc2query_serializeOpDocumentDisableTransitGatewayRouteTablePropagationInput(v *DisableTransitGatewayRouteTablePropagationInput, value query.Value) error {
object := value.Object()
_ = object
@@ -40487,6 +40862,18 @@ func awsEc2query_serializeOpDocumentEnableFastSnapshotRestoresInput(v *EnableFas
return nil
}
+func awsEc2query_serializeOpDocumentEnableSerialConsoleAccessInput(v *EnableSerialConsoleAccessInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.DryRun {
+ objectKey := object.Key("DryRun")
+ objectKey.Boolean(v.DryRun)
+ }
+
+ return nil
+}
+
func awsEc2query_serializeOpDocumentEnableTransitGatewayRouteTablePropagationInput(v *EnableTransitGatewayRouteTablePropagationInput, value query.Value) error {
object := value.Object()
_ = object
@@ -41046,6 +41433,18 @@ func awsEc2query_serializeOpDocumentGetReservedInstancesExchangeQuoteInput(v *Ge
return nil
}
+func awsEc2query_serializeOpDocumentGetSerialConsoleAccessStatusInput(v *GetSerialConsoleAccessStatusInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.DryRun {
+ objectKey := object.Key("DryRun")
+ objectKey.Boolean(v.DryRun)
+ }
+
+ return nil
+}
+
func awsEc2query_serializeOpDocumentGetTransitGatewayAttachmentPropagationsInput(v *GetTransitGatewayAttachmentPropagationsInput, value query.Value) error {
object := value.Object()
_ = object
@@ -43376,6 +43775,11 @@ func awsEc2query_serializeOpDocumentRegisterImageInput(v *RegisterImageInput, va
}
}
+ if len(v.BootMode) > 0 {
+ objectKey := object.Key("BootMode")
+ objectKey.String(string(v.BootMode))
+ }
+
if v.Description != nil {
objectKey := object.Key("Description")
objectKey.String(*v.Description)
diff --git a/service/ec2/types/enums.go b/service/ec2/types/enums.go
index 7be5b4e0bc0..fc32da9c501 100644
--- a/service/ec2/types/enums.go
+++ b/service/ec2/types/enums.go
@@ -426,6 +426,42 @@ func (BgpStatus) Values() []BgpStatus {
}
}
+type BootModeType string
+
+// Enum values for BootModeType
+const (
+ BootModeTypeLegacyBios BootModeType = "legacy-bios"
+ BootModeTypeUefi BootModeType = "uefi"
+)
+
+// Values returns all known values for BootModeType. 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 (BootModeType) Values() []BootModeType {
+ return []BootModeType{
+ "legacy-bios",
+ "uefi",
+ }
+}
+
+type BootModeValues string
+
+// Enum values for BootModeValues
+const (
+ BootModeValuesLegacyBios BootModeValues = "legacy-bios"
+ BootModeValuesUefi BootModeValues = "uefi"
+)
+
+// Values returns all known values for BootModeValues. 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 (BootModeValues) Values() []BootModeValues {
+ return []BootModeValues{
+ "legacy-bios",
+ "uefi",
+ }
+}
+
type BundleTaskState string
// Enum values for BundleTaskState
@@ -1778,6 +1814,7 @@ const (
ImageAttributeNameProductCodes ImageAttributeName = "productCodes"
ImageAttributeNameBlockDeviceMapping ImageAttributeName = "blockDeviceMapping"
ImageAttributeNameSriovNetSupport ImageAttributeName = "sriovNetSupport"
+ ImageAttributeNameBootMode ImageAttributeName = "bootMode"
)
// Values returns all known values for ImageAttributeName. Note that this can be
@@ -1792,6 +1829,7 @@ func (ImageAttributeName) Values() []ImageAttributeName {
"productCodes",
"blockDeviceMapping",
"sriovNetSupport",
+ "bootMode",
}
}
@@ -2435,6 +2473,15 @@ const (
InstanceTypeM6gd12xlarge InstanceType = "m6gd.12xlarge"
InstanceTypeM6gd16xlarge InstanceType = "m6gd.16xlarge"
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"
)
// Values returns all known values for InstanceType. Note that this can be expanded
@@ -2831,6 +2878,15 @@ func (InstanceType) Values() []InstanceType {
"m6gd.12xlarge",
"m6gd.16xlarge",
"mac1.metal",
+ "x2gd.medium",
+ "x2gd.large",
+ "x2gd.xlarge",
+ "x2gd.2xlarge",
+ "x2gd.4xlarge",
+ "x2gd.8xlarge",
+ "x2gd.12xlarge",
+ "x2gd.16xlarge",
+ "x2gd.metal",
}
}
@@ -3677,6 +3733,32 @@ func (ReplacementStrategy) Values() []ReplacementStrategy {
}
}
+type ReplaceRootVolumeTaskState string
+
+// Enum values for ReplaceRootVolumeTaskState
+const (
+ ReplaceRootVolumeTaskStatePending ReplaceRootVolumeTaskState = "pending"
+ ReplaceRootVolumeTaskStateInProgress ReplaceRootVolumeTaskState = "in-progress"
+ ReplaceRootVolumeTaskStateFailing ReplaceRootVolumeTaskState = "failing"
+ ReplaceRootVolumeTaskStateSucceeded ReplaceRootVolumeTaskState = "succeeded"
+ ReplaceRootVolumeTaskStateFailed ReplaceRootVolumeTaskState = "failed"
+ ReplaceRootVolumeTaskStateFailedDetached ReplaceRootVolumeTaskState = "failed-detached"
+)
+
+// Values returns all known values for ReplaceRootVolumeTaskState. 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 (ReplaceRootVolumeTaskState) Values() []ReplaceRootVolumeTaskState {
+ return []ReplaceRootVolumeTaskState{
+ "pending",
+ "in-progress",
+ "failing",
+ "succeeded",
+ "failed",
+ "failed-detached",
+ }
+}
+
type ReportInstanceReasonCodes string
// Enum values for ReportInstanceReasonCodes
diff --git a/service/ec2/types/types.go b/service/ec2/types/types.go
index 8902a6f5b34..2f3933d704c 100644
--- a/service/ec2/types/types.go
+++ b/service/ec2/types/types.go
@@ -2084,6 +2084,13 @@ type EbsOptimizedInfo struct {
MaximumThroughputInMBps *float64
}
+// Describes the Elastic Fabric Adapters for the instance type.
+type EfaInfo struct {
+
+ // The maximum number of Elastic Fabric Adapters for the instance type.
+ MaximumEfaInterfaces *int32
+}
+
// Describes an egress-only internet gateway.
type EgressOnlyInternetGateway struct {
@@ -2799,7 +2806,8 @@ type FleetLaunchTemplateConfigRequest struct {
LaunchTemplateSpecification *FleetLaunchTemplateSpecificationRequest
// Any parameters that you specify override the same parameters in the launch
- // template.
+ // template. For fleets of type request and maintain, a maximum of 300 items is
+ // allowed across all launch templates.
Overrides []FleetLaunchTemplateOverridesRequest
}
@@ -3521,6 +3529,11 @@ type Image struct {
// Any block device mapping entries.
BlockDeviceMappings []BlockDeviceMapping
+ // The boot mode of the image. For more information, see Boot modes
+ // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html) in the
+ // Amazon Elastic Compute Cloud User Guide.
+ BootMode BootModeValues
+
// The date and time the image was created.
CreationDate *string
@@ -3852,6 +3865,11 @@ type Instance struct {
// Any block device mapping entries for the instance.
BlockDeviceMappings []InstanceBlockDeviceMapping
+ // The boot mode of the instance. For more information, see Boot modes
+ // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html) in the
+ // Amazon EC2 User Guide.
+ BootMode BootModeValues
+
// The ID of the Capacity Reservation.
CapacityReservationId *string
@@ -3975,13 +3993,7 @@ type Instance struct {
// The security groups for the instance.
SecurityGroups []GroupIdentifier
- // Specifies whether to enable an instance launched in a VPC to perform NAT. This
- // controls whether source/destination checking is enabled on the instance. A value
- // of true means that checking is enabled, and false means that checking is
- // disabled. The value must be false for the instance to perform NAT. For more
- // information, see NAT instances
- // (https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html)
- // in the Amazon VPC User Guide.
+ // Indicates whether source/destination checking is enabled.
SourceDestCheck bool
// If the request is a Spot Instance request, the ID of the request.
@@ -4623,6 +4635,11 @@ type InstanceTypeInfo struct {
// Describes the processor.
ProcessorInfo *ProcessorInfo
+ // The supported boot modes. For more information, see Boot modes
+ // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html) in the
+ // Amazon EC2 User Guide.
+ SupportedBootModes []BootModeType
+
// The supported root device types.
SupportedRootDeviceTypes []RootDeviceType
@@ -6289,6 +6306,9 @@ type NetworkInfo struct {
// The index of the default network card, starting at 0.
DefaultNetworkCardIndex *int32
+ // Describes the Elastic Fabric Adapters for the instance type.
+ EfaInfo *EfaInfo
+
// Indicates whether Elastic Fabric Adapter (EFA) is supported.
EfaSupported *bool
@@ -7318,6 +7338,51 @@ type RemovePrefixListEntry struct {
Cidr *string
}
+// Information about a root volume replacement task.
+type ReplaceRootVolumeTask struct {
+
+ // The time the task completed.
+ CompleteTime *string
+
+ // The ID of the instance for which the root volume replacement task was created.
+ InstanceId *string
+
+ // The ID of the root volume replacement task.
+ ReplaceRootVolumeTaskId *string
+
+ // The time the task was started.
+ StartTime *string
+
+ // The tags assigned to the task.
+ Tags []Tag
+
+ // The state of the task. The task can be in one of the following states:
+ //
+ // *
+ // pending - the replacement volume is being created.
+ //
+ // * in-progress - the original
+ // volume is being detached and the replacement volume is being attached.
+ //
+ // *
+ // succeeded - the replacement volume has been successfully attached to the
+ // instance and the instance is available.
+ //
+ // * failing - the replacement task is in
+ // the process of failing.
+ //
+ // * failed - the replacement task has failed but the
+ // original root volume is still attached.
+ //
+ // * failing-detached - the replacement
+ // task is in the process of failing. The instance might have no root volume
+ // attached.
+ //
+ // * failed-detached - the replacement task has failed and the instance
+ // has no root volume attached.
+ TaskState ReplaceRootVolumeTaskState
+}
+
// The information to include in the launch template.
type RequestLaunchTemplateData struct {
diff --git a/service/ec2/validators.go b/service/ec2/validators.go
index 9c111ae87b2..be053e20e70 100644
--- a/service/ec2/validators.go
+++ b/service/ec2/validators.go
@@ -1210,6 +1210,26 @@ func (m *validateOpCreateNetworkInterfacePermission) HandleInitialize(ctx contex
return next.HandleInitialize(ctx, in)
}
+type validateOpCreateReplaceRootVolumeTask struct {
+}
+
+func (*validateOpCreateReplaceRootVolumeTask) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpCreateReplaceRootVolumeTask) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*CreateReplaceRootVolumeTaskInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpCreateReplaceRootVolumeTaskInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpCreateReservedInstancesListing struct {
}
@@ -6170,6 +6190,10 @@ func addOpCreateNetworkInterfacePermissionValidationMiddleware(stack *middleware
return stack.Initialize.Add(&validateOpCreateNetworkInterfacePermission{}, middleware.After)
}
+func addOpCreateReplaceRootVolumeTaskValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpCreateReplaceRootVolumeTask{}, middleware.After)
+}
+
func addOpCreateReservedInstancesListingValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpCreateReservedInstancesListing{}, middleware.After)
}
@@ -8663,6 +8687,21 @@ func validateOpCreateNetworkInterfacePermissionInput(v *CreateNetworkInterfacePe
}
}
+func validateOpCreateReplaceRootVolumeTaskInput(v *CreateReplaceRootVolumeTaskInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CreateReplaceRootVolumeTaskInput"}
+ if v.InstanceId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("InstanceId"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpCreateReservedInstancesListingInput(v *CreateReservedInstancesListingInput) error {
if v == nil {
return nil
diff --git a/service/ec2instanceconnect/api_op_SendSSHPublicKey.go b/service/ec2instanceconnect/api_op_SendSSHPublicKey.go
index f6e9f422a08..8eda64bd436 100644
--- a/service/ec2instanceconnect/api_op_SendSSHPublicKey.go
+++ b/service/ec2instanceconnect/api_op_SendSSHPublicKey.go
@@ -10,8 +10,11 @@ import (
smithyhttp "github.com/aws/smithy-go/transport/http"
)
-// Pushes an SSH public key to a particular OS user on a given EC2 instance for 60
-// seconds.
+// Pushes an SSH public key to the specified EC2 instance for use by the specified
+// user. The key remains for 60 seconds. For more information, see Connect to your
+// Linux instance using EC2 Instance Connect
+// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Connect-using-EC2-Instance-Connect.html)
+// in the Amazon EC2 User Guide.
func (c *Client) SendSSHPublicKey(ctx context.Context, params *SendSSHPublicKeyInput, optFns ...func(*Options)) (*SendSSHPublicKeyOutput, error) {
if params == nil {
params = &SendSSHPublicKeyInput{}
@@ -29,23 +32,23 @@ func (c *Client) SendSSHPublicKey(ctx context.Context, params *SendSSHPublicKeyI
type SendSSHPublicKeyInput struct {
- // The availability zone the EC2 instance was launched in.
+ // The Availability Zone in which the EC2 instance was launched.
//
// This member is required.
AvailabilityZone *string
- // The EC2 instance you wish to publish the SSH key to.
+ // The ID of the EC2 instance.
//
// This member is required.
InstanceId *string
- // The OS user on the EC2 instance whom the key may be used to authenticate as.
+ // The OS user on the EC2 instance for whom the key can be used to authenticate.
//
// This member is required.
InstanceOSUser *string
- // The public key to be published to the instance. To use it after publication you
- // must have the matching private key.
+ // The public key material. To use the public key, you must have the matching
+ // private key.
//
// This member is required.
SSHPublicKey *string
@@ -53,11 +56,11 @@ type SendSSHPublicKeyInput struct {
type SendSSHPublicKeyOutput struct {
- // The request ID as logged by EC2 Connect. Please provide this when contacting AWS
- // Support.
+ // The ID of the request. Please provide this ID when contacting AWS Support for
+ // assistance.
RequestId *string
- // Indicates request success.
+ // Is true if the request succeeds and an error otherwise.
Success bool
// Metadata pertaining to the operation's result.
diff --git a/service/ec2instanceconnect/api_op_SendSerialConsoleSSHPublicKey.go b/service/ec2instanceconnect/api_op_SendSerialConsoleSSHPublicKey.go
new file mode 100644
index 00000000000..fc8901d87e3
--- /dev/null
+++ b/service/ec2instanceconnect/api_op_SendSerialConsoleSSHPublicKey.go
@@ -0,0 +1,137 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package ec2instanceconnect
+
+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"
+)
+
+// Pushes an SSH public key to the specified EC2 instance. The key remains for 60
+// seconds, which gives you 60 seconds to establish a serial console connection to
+// the instance using SSH. For more information, see EC2 Serial Console
+// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-serial-console.html) in
+// the Amazon EC2 User Guide.
+func (c *Client) SendSerialConsoleSSHPublicKey(ctx context.Context, params *SendSerialConsoleSSHPublicKeyInput, optFns ...func(*Options)) (*SendSerialConsoleSSHPublicKeyOutput, error) {
+ if params == nil {
+ params = &SendSerialConsoleSSHPublicKeyInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "SendSerialConsoleSSHPublicKey", params, optFns, addOperationSendSerialConsoleSSHPublicKeyMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*SendSerialConsoleSSHPublicKeyOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type SendSerialConsoleSSHPublicKeyInput struct {
+
+ // The ID of the EC2 instance.
+ //
+ // This member is required.
+ InstanceId *string
+
+ // The public key material. To use the public key, you must have the matching
+ // private key. For information about the supported key formats and lengths, see
+ // Requirements for key pairs
+ // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html#how-to-generate-your-own-key-and-import-it-to-aws)
+ // in the Amazon EC2 User Guide.
+ //
+ // This member is required.
+ SSHPublicKey *string
+
+ // The serial port of the EC2 instance. Currently only port 0 is supported.
+ // Default: 0
+ SerialPort int32
+}
+
+type SendSerialConsoleSSHPublicKeyOutput struct {
+
+ // The ID of the request. Please provide this ID when contacting AWS Support for
+ // assistance.
+ RequestId *string
+
+ // Is true if the request succeeds and an error otherwise.
+ Success bool
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationSendSerialConsoleSSHPublicKeyMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpSendSerialConsoleSSHPublicKey{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpSendSerialConsoleSSHPublicKey{}, 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 = addOpSendSerialConsoleSSHPublicKeyValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opSendSerialConsoleSSHPublicKey(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_opSendSerialConsoleSSHPublicKey(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "ec2-instance-connect",
+ OperationName: "SendSerialConsoleSSHPublicKey",
+ }
+}
diff --git a/service/ec2instanceconnect/deserializers.go b/service/ec2instanceconnect/deserializers.go
index 9154af58fbe..f3cfc16ee8d 100644
--- a/service/ec2instanceconnect/deserializers.go
+++ b/service/ec2instanceconnect/deserializers.go
@@ -18,6 +18,141 @@ import (
"strings"
)
+type awsAwsjson11_deserializeOpSendSerialConsoleSSHPublicKey struct {
+}
+
+func (*awsAwsjson11_deserializeOpSendSerialConsoleSSHPublicKey) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_deserializeOpSendSerialConsoleSSHPublicKey) 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_deserializeOpErrorSendSerialConsoleSSHPublicKey(response, &metadata)
+ }
+ output := &SendSerialConsoleSSHPublicKeyOutput{}
+ 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_deserializeOpDocumentSendSerialConsoleSSHPublicKeyOutput(&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_deserializeOpErrorSendSerialConsoleSSHPublicKey(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("AuthException", errorCode):
+ return awsAwsjson11_deserializeErrorAuthException(response, errorBody)
+
+ case strings.EqualFold("EC2InstanceNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorEC2InstanceNotFoundException(response, errorBody)
+
+ case strings.EqualFold("EC2InstanceTypeInvalidException", errorCode):
+ return awsAwsjson11_deserializeErrorEC2InstanceTypeInvalidException(response, errorBody)
+
+ case strings.EqualFold("InvalidArgsException", errorCode):
+ return awsAwsjson11_deserializeErrorInvalidArgsException(response, errorBody)
+
+ case strings.EqualFold("SerialConsoleAccessDisabledException", errorCode):
+ return awsAwsjson11_deserializeErrorSerialConsoleAccessDisabledException(response, errorBody)
+
+ case strings.EqualFold("SerialConsoleSessionLimitExceededException", errorCode):
+ return awsAwsjson11_deserializeErrorSerialConsoleSessionLimitExceededException(response, errorBody)
+
+ case strings.EqualFold("SerialConsoleSessionUnavailableException", errorCode):
+ return awsAwsjson11_deserializeErrorSerialConsoleSessionUnavailableException(response, errorBody)
+
+ case strings.EqualFold("ServiceException", errorCode):
+ return awsAwsjson11_deserializeErrorServiceException(response, errorBody)
+
+ case strings.EqualFold("ThrottlingException", errorCode):
+ return awsAwsjson11_deserializeErrorThrottlingException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
type awsAwsjson11_deserializeOpSendSSHPublicKey struct {
}
@@ -211,6 +346,41 @@ func awsAwsjson11_deserializeErrorEC2InstanceNotFoundException(response *smithyh
return output
}
+func awsAwsjson11_deserializeErrorEC2InstanceTypeInvalidException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ output := &types.EC2InstanceTypeInvalidException{}
+ err := awsAwsjson11_deserializeDocumentEC2InstanceTypeInvalidException(&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_deserializeErrorInvalidArgsException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
@@ -246,6 +416,111 @@ func awsAwsjson11_deserializeErrorInvalidArgsException(response *smithyhttp.Resp
return output
}
+func awsAwsjson11_deserializeErrorSerialConsoleAccessDisabledException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ output := &types.SerialConsoleAccessDisabledException{}
+ err := awsAwsjson11_deserializeDocumentSerialConsoleAccessDisabledException(&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_deserializeErrorSerialConsoleSessionLimitExceededException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ output := &types.SerialConsoleSessionLimitExceededException{}
+ err := awsAwsjson11_deserializeDocumentSerialConsoleSessionLimitExceededException(&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_deserializeErrorSerialConsoleSessionUnavailableException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ output := &types.SerialConsoleSessionUnavailableException{}
+ err := awsAwsjson11_deserializeDocumentSerialConsoleSessionUnavailableException(&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_deserializeErrorServiceException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
@@ -396,6 +671,46 @@ func awsAwsjson11_deserializeDocumentEC2InstanceNotFoundException(v **types.EC2I
return nil
}
+func awsAwsjson11_deserializeDocumentEC2InstanceTypeInvalidException(v **types.EC2InstanceTypeInvalidException, 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.EC2InstanceTypeInvalidException
+ if *v == nil {
+ sv = &types.EC2InstanceTypeInvalidException{}
+ } 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 String to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeDocumentInvalidArgsException(v **types.InvalidArgsException, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -436,6 +751,126 @@ func awsAwsjson11_deserializeDocumentInvalidArgsException(v **types.InvalidArgsE
return nil
}
+func awsAwsjson11_deserializeDocumentSerialConsoleAccessDisabledException(v **types.SerialConsoleAccessDisabledException, 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.SerialConsoleAccessDisabledException
+ if *v == nil {
+ sv = &types.SerialConsoleAccessDisabledException{}
+ } 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 String to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentSerialConsoleSessionLimitExceededException(v **types.SerialConsoleSessionLimitExceededException, 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.SerialConsoleSessionLimitExceededException
+ if *v == nil {
+ sv = &types.SerialConsoleSessionLimitExceededException{}
+ } 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 String to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentSerialConsoleSessionUnavailableException(v **types.SerialConsoleSessionUnavailableException, 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.SerialConsoleSessionUnavailableException
+ if *v == nil {
+ sv = &types.SerialConsoleSessionUnavailableException{}
+ } 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 String to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeDocumentServiceException(v **types.ServiceException, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -516,6 +951,55 @@ func awsAwsjson11_deserializeDocumentThrottlingException(v **types.ThrottlingExc
return nil
}
+func awsAwsjson11_deserializeOpDocumentSendSerialConsoleSSHPublicKeyOutput(v **SendSerialConsoleSSHPublicKeyOutput, 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 *SendSerialConsoleSSHPublicKeyOutput
+ if *v == nil {
+ sv = &SendSerialConsoleSSHPublicKeyOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "RequestId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected RequestId to be of type string, got %T instead", value)
+ }
+ sv.RequestId = ptr.String(jtv)
+ }
+
+ case "Success":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected Success to be of type *bool, got %T instead", value)
+ }
+ sv.Success = jtv
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeOpDocumentSendSSHPublicKeyOutput(v **SendSSHPublicKeyOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
diff --git a/service/ec2instanceconnect/doc.go b/service/ec2instanceconnect/doc.go
index ed54db5acb2..5e7f2931265 100644
--- a/service/ec2instanceconnect/doc.go
+++ b/service/ec2instanceconnect/doc.go
@@ -3,8 +3,7 @@
// Package ec2instanceconnect provides the API client, operations, and parameter
// types for AWS EC2 Instance Connect.
//
-// AWS EC2 Connect Service is a service that enables system administrators to
-// publish temporary SSH keys to their EC2 instances in order to establish
-// connections to their instances without leaving a permanent authentication
-// option.
+// Amazon EC2 Instance Connect enables system administrators to publish one-time
+// use SSH public keys to EC2, providing users a simple and secure way to connect
+// to their instances.
package ec2instanceconnect
diff --git a/service/ec2instanceconnect/go.mod b/service/ec2instanceconnect/go.mod
index e99f8917a1b..082772a69e5 100644
--- a/service/ec2instanceconnect/go.mod
+++ b/service/ec2instanceconnect/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/ec2instanceconnect/go.sum b/service/ec2instanceconnect/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/ec2instanceconnect/go.sum
+++ b/service/ec2instanceconnect/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/ec2instanceconnect/serializers.go b/service/ec2instanceconnect/serializers.go
index 51dae9a4867..794a28927d2 100644
--- a/service/ec2instanceconnect/serializers.go
+++ b/service/ec2instanceconnect/serializers.go
@@ -13,6 +13,53 @@ import (
smithyhttp "github.com/aws/smithy-go/transport/http"
)
+type awsAwsjson11_serializeOpSendSerialConsoleSSHPublicKey struct {
+}
+
+func (*awsAwsjson11_serializeOpSendSerialConsoleSSHPublicKey) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_serializeOpSendSerialConsoleSSHPublicKey) 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.(*SendSerialConsoleSSHPublicKeyInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("AWSEC2InstanceConnectService.SendSerialConsoleSSHPublicKey")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentSendSerialConsoleSSHPublicKeyInput(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_serializeOpSendSSHPublicKey struct {
}
@@ -59,6 +106,28 @@ func (m *awsAwsjson11_serializeOpSendSSHPublicKey) HandleSerialize(ctx context.C
return next.HandleSerialize(ctx, in)
}
+func awsAwsjson11_serializeOpDocumentSendSerialConsoleSSHPublicKeyInput(v *SendSerialConsoleSSHPublicKeyInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.InstanceId != nil {
+ ok := object.Key("InstanceId")
+ ok.String(*v.InstanceId)
+ }
+
+ if v.SerialPort != 0 {
+ ok := object.Key("SerialPort")
+ ok.Integer(v.SerialPort)
+ }
+
+ if v.SSHPublicKey != nil {
+ ok := object.Key("SSHPublicKey")
+ ok.String(*v.SSHPublicKey)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeOpDocumentSendSSHPublicKeyInput(v *SendSSHPublicKeyInput, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
diff --git a/service/ec2instanceconnect/types/errors.go b/service/ec2instanceconnect/types/errors.go
index a801965d040..a642195bf36 100644
--- a/service/ec2instanceconnect/types/errors.go
+++ b/service/ec2instanceconnect/types/errors.go
@@ -7,8 +7,8 @@ import (
smithy "github.com/aws/smithy-go"
)
-// Indicates that either your AWS credentials are invalid or you do not have access
-// to the EC2 instance.
+// Either your AWS credentials are not valid or you do not have access to the EC2
+// instance.
type AuthException struct {
Message *string
}
@@ -25,8 +25,7 @@ func (e *AuthException) ErrorMessage() string {
func (e *AuthException) ErrorCode() string { return "AuthException" }
func (e *AuthException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
-// Indicates that the instance requested was not found in the given zone. Check
-// that you have provided a valid instance ID and the correct zone.
+// The specified instance was not found.
type EC2InstanceNotFoundException struct {
Message *string
}
@@ -43,8 +42,27 @@ func (e *EC2InstanceNotFoundException) ErrorMessage() string {
func (e *EC2InstanceNotFoundException) ErrorCode() string { return "EC2InstanceNotFoundException" }
func (e *EC2InstanceNotFoundException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
-// Indicates that you provided bad input. Ensure you have a valid instance ID, the
-// correct zone, and a valid SSH public key.
+// The instance type is not supported for connecting via the serial console. Only
+// Nitro instance types are currently supported.
+type EC2InstanceTypeInvalidException struct {
+ Message *string
+}
+
+func (e *EC2InstanceTypeInvalidException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *EC2InstanceTypeInvalidException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *EC2InstanceTypeInvalidException) ErrorCode() string {
+ return "EC2InstanceTypeInvalidException"
+}
+func (e *EC2InstanceTypeInvalidException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+
+// One of the parameters is not valid.
type InvalidArgsException struct {
Message *string
}
@@ -61,8 +79,76 @@ func (e *InvalidArgsException) ErrorMessage() string {
func (e *InvalidArgsException) ErrorCode() string { return "InvalidArgsException" }
func (e *InvalidArgsException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
-// Indicates that the service encountered an error. Follow the message's
-// instructions and try again.
+// Your account is not authorized to use the EC2 Serial Console. To authorize your
+// account, run the EnableSerialConsoleAccess API. For more information, see
+// EnableSerialConsoleAccess
+// (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_EnableSerialConsoleAccess.html)
+// in the Amazon EC2 API Reference.
+type SerialConsoleAccessDisabledException struct {
+ Message *string
+}
+
+func (e *SerialConsoleAccessDisabledException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *SerialConsoleAccessDisabledException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *SerialConsoleAccessDisabledException) ErrorCode() string {
+ return "SerialConsoleAccessDisabledException"
+}
+func (e *SerialConsoleAccessDisabledException) ErrorFault() smithy.ErrorFault {
+ return smithy.FaultClient
+}
+
+// The instance currently has 1 active serial console session. Only 1 session is
+// supported at a time.
+type SerialConsoleSessionLimitExceededException struct {
+ Message *string
+}
+
+func (e *SerialConsoleSessionLimitExceededException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *SerialConsoleSessionLimitExceededException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *SerialConsoleSessionLimitExceededException) ErrorCode() string {
+ return "SerialConsoleSessionLimitExceededException"
+}
+func (e *SerialConsoleSessionLimitExceededException) ErrorFault() smithy.ErrorFault {
+ return smithy.FaultClient
+}
+
+// Unable to start a serial console session. Please try again.
+type SerialConsoleSessionUnavailableException struct {
+ Message *string
+}
+
+func (e *SerialConsoleSessionUnavailableException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *SerialConsoleSessionUnavailableException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *SerialConsoleSessionUnavailableException) ErrorCode() string {
+ return "SerialConsoleSessionUnavailableException"
+}
+func (e *SerialConsoleSessionUnavailableException) ErrorFault() smithy.ErrorFault {
+ return smithy.FaultServer
+}
+
+// The service encountered an error. Follow the instructions in the error message
+// and try again.
type ServiceException struct {
Message *string
}
@@ -79,9 +165,8 @@ func (e *ServiceException) ErrorMessage() string {
func (e *ServiceException) ErrorCode() string { return "ServiceException" }
func (e *ServiceException) ErrorFault() smithy.ErrorFault { return smithy.FaultServer }
-// Indicates you have been making requests too frequently and have been throttled.
-// Wait for a while and try again. If higher call volume is warranted contact AWS
-// Support.
+// The requests were made too frequently and have been throttled. Wait a while and
+// try again. To increase the limit on your request frequency, contact AWS Support.
type ThrottlingException struct {
Message *string
}
diff --git a/service/ec2instanceconnect/validators.go b/service/ec2instanceconnect/validators.go
index dc0a2d65a58..72dbbfd6fa6 100644
--- a/service/ec2instanceconnect/validators.go
+++ b/service/ec2instanceconnect/validators.go
@@ -9,6 +9,26 @@ import (
"github.com/aws/smithy-go/middleware"
)
+type validateOpSendSerialConsoleSSHPublicKey struct {
+}
+
+func (*validateOpSendSerialConsoleSSHPublicKey) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpSendSerialConsoleSSHPublicKey) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*SendSerialConsoleSSHPublicKeyInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpSendSerialConsoleSSHPublicKeyInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpSendSSHPublicKey struct {
}
@@ -29,10 +49,32 @@ func (m *validateOpSendSSHPublicKey) HandleInitialize(ctx context.Context, in mi
return next.HandleInitialize(ctx, in)
}
+func addOpSendSerialConsoleSSHPublicKeyValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpSendSerialConsoleSSHPublicKey{}, middleware.After)
+}
+
func addOpSendSSHPublicKeyValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpSendSSHPublicKey{}, middleware.After)
}
+func validateOpSendSerialConsoleSSHPublicKeyInput(v *SendSerialConsoleSSHPublicKeyInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "SendSerialConsoleSSHPublicKeyInput"}
+ if v.InstanceId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("InstanceId"))
+ }
+ if v.SSHPublicKey == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("SSHPublicKey"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpSendSSHPublicKeyInput(v *SendSSHPublicKeyInput) error {
if v == nil {
return nil
diff --git a/service/ecr/go.mod b/service/ecr/go.mod
index 728331454c1..92f4e049e76 100644
--- a/service/ecr/go.mod
+++ b/service/ecr/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/ecr/go.sum b/service/ecr/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/ecr/go.sum
+++ b/service/ecr/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/ecrpublic/go.mod b/service/ecrpublic/go.mod
index 2cf583ef871..be599bfd21d 100644
--- a/service/ecrpublic/go.mod
+++ b/service/ecrpublic/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/ecrpublic/go.sum b/service/ecrpublic/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/ecrpublic/go.sum
+++ b/service/ecrpublic/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/ecs/go.mod b/service/ecs/go.mod
index 61a5d9efc4d..492989ac0e2 100644
--- a/service/ecs/go.mod
+++ b/service/ecs/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/ecs/go.sum b/service/ecs/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/ecs/go.sum
+++ b/service/ecs/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/efs/go.mod b/service/efs/go.mod
index a99ffc63571..072b721b951 100644
--- a/service/efs/go.mod
+++ b/service/efs/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/efs/go.sum b/service/efs/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/efs/go.sum
+++ b/service/efs/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/eks/go.mod b/service/eks/go.mod
index a022534bf7c..1c3ac6e7401 100644
--- a/service/eks/go.mod
+++ b/service/eks/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/eks/go.sum b/service/eks/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/eks/go.sum
+++ b/service/eks/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/elasticache/go.mod b/service/elasticache/go.mod
index cd915dee2db..d2f38dfb684 100644
--- a/service/elasticache/go.mod
+++ b/service/elasticache/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/elasticache/go.sum b/service/elasticache/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/elasticache/go.sum
+++ b/service/elasticache/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/elasticbeanstalk/go.mod b/service/elasticbeanstalk/go.mod
index 4958f3bcb2e..ee355c01a27 100644
--- a/service/elasticbeanstalk/go.mod
+++ b/service/elasticbeanstalk/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/elasticbeanstalk/go.sum b/service/elasticbeanstalk/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/elasticbeanstalk/go.sum
+++ b/service/elasticbeanstalk/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/elasticinference/go.mod b/service/elasticinference/go.mod
index 5e584cadf4d..14f5973fcba 100644
--- a/service/elasticinference/go.mod
+++ b/service/elasticinference/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/elasticinference/go.sum b/service/elasticinference/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/elasticinference/go.sum
+++ b/service/elasticinference/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/elasticloadbalancing/go.mod b/service/elasticloadbalancing/go.mod
index 3fc723a64c5..135d768dc94 100644
--- a/service/elasticloadbalancing/go.mod
+++ b/service/elasticloadbalancing/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/elasticloadbalancing/go.sum b/service/elasticloadbalancing/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/elasticloadbalancing/go.sum
+++ b/service/elasticloadbalancing/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/elasticloadbalancingv2/go.mod b/service/elasticloadbalancingv2/go.mod
index 7bc39a4ae7d..9e3500e2c4e 100644
--- a/service/elasticloadbalancingv2/go.mod
+++ b/service/elasticloadbalancingv2/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/elasticloadbalancingv2/go.sum b/service/elasticloadbalancingv2/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/elasticloadbalancingv2/go.sum
+++ b/service/elasticloadbalancingv2/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/elasticsearchservice/go.mod b/service/elasticsearchservice/go.mod
index a181dbe00a6..3101818f1fc 100644
--- a/service/elasticsearchservice/go.mod
+++ b/service/elasticsearchservice/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/elasticsearchservice/go.sum b/service/elasticsearchservice/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/elasticsearchservice/go.sum
+++ b/service/elasticsearchservice/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/elastictranscoder/go.mod b/service/elastictranscoder/go.mod
index a3a602bfa5b..31f56afe2ae 100644
--- a/service/elastictranscoder/go.mod
+++ b/service/elastictranscoder/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/elastictranscoder/go.sum b/service/elastictranscoder/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/elastictranscoder/go.sum
+++ b/service/elastictranscoder/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/emr/go.mod b/service/emr/go.mod
index 8dcbcfcfed0..9b1b332a600 100644
--- a/service/emr/go.mod
+++ b/service/emr/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/emr/go.sum b/service/emr/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/emr/go.sum
+++ b/service/emr/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/emrcontainers/go.mod b/service/emrcontainers/go.mod
index 187fd119d72..4d92f89d347 100644
--- a/service/emrcontainers/go.mod
+++ b/service/emrcontainers/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/emrcontainers/go.sum b/service/emrcontainers/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/emrcontainers/go.sum
+++ b/service/emrcontainers/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/eventbridge/api_op_PutTargets.go b/service/eventbridge/api_op_PutTargets.go
index a22e73b8281..550e264c876 100644
--- a/service/eventbridge/api_op_PutTargets.go
+++ b/service/eventbridge/api_op_PutTargets.go
@@ -60,20 +60,22 @@ import (
// * Custom/SaaS HTTPS APIs via EventBridge
// API Destinations
//
-// Creating rules with built-in targets is supported only in the
-// AWS Management Console. The built-in targets are EC2 CreateSnapshot API call,
-// EC2 RebootInstances API call, EC2 StopInstances API call, and EC2
-// TerminateInstances API call. For some target types, PutTargets provides
-// target-specific parameters. If the target is a Kinesis data stream, you can
-// optionally specify which shard the event goes to by using the KinesisParameters
-// argument. To invoke a command on multiple EC2 instances with one rule, you can
-// use the RunCommandParameters field. To be able to make API calls against the
-// resources that you own, Amazon EventBridge (CloudWatch Events) needs the
-// appropriate permissions. For AWS Lambda and Amazon SNS resources, EventBridge
-// relies on resource-based policies. For EC2 instances, Kinesis data streams, AWS
-// Step Functions state machines and API Gateway REST APIs, EventBridge relies on
-// IAM roles that you specify in the RoleARN argument in PutTargets. For more
-// information, see Authentication and Access Control
+// * Amazon SageMaker Model Building Pipelines
+//
+// Creating rules
+// with built-in targets is supported only in the AWS Management Console. The
+// built-in targets are EC2 CreateSnapshot API call, EC2 RebootInstances API call,
+// EC2 StopInstances API call, and EC2 TerminateInstances API call. For some target
+// types, PutTargets provides target-specific parameters. If the target is a
+// Kinesis data stream, you can optionally specify which shard the event goes to by
+// using the KinesisParameters argument. To invoke a command on multiple EC2
+// instances with one rule, you can use the RunCommandParameters field. To be able
+// to make API calls against the resources that you own, Amazon EventBridge
+// (CloudWatch Events) needs the appropriate permissions. For AWS Lambda and Amazon
+// SNS resources, EventBridge relies on resource-based policies. For EC2 instances,
+// Kinesis data streams, AWS Step Functions state machines and API Gateway REST
+// APIs, EventBridge relies on IAM roles that you specify in the RoleARN argument
+// in PutTargets. For more information, see Authentication and Access Control
// (https://docs.aws.amazon.com/eventbridge/latest/userguide/auth-and-access-control-eventbridge.html)
// in the Amazon EventBridge User Guide. If another AWS account is in the same
// region and has granted you permission (using PutPermission), you can send events
diff --git a/service/eventbridge/deserializers.go b/service/eventbridge/deserializers.go
index ce394ea4929..dd6e2b38052 100644
--- a/service/eventbridge/deserializers.go
+++ b/service/eventbridge/deserializers.go
@@ -9754,6 +9754,125 @@ func awsAwsjson11_deserializeDocumentRunCommandTargetValues(v *[]string, value i
return nil
}
+func awsAwsjson11_deserializeDocumentSageMakerPipelineParameter(v **types.SageMakerPipelineParameter, 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.SageMakerPipelineParameter
+ if *v == nil {
+ sv = &types.SageMakerPipelineParameter{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Name":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected SageMakerPipelineParameterName to be of type string, got %T instead", value)
+ }
+ sv.Name = ptr.String(jtv)
+ }
+
+ case "Value":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected SageMakerPipelineParameterValue to be of type string, got %T instead", value)
+ }
+ sv.Value = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentSageMakerPipelineParameterList(v *[]types.SageMakerPipelineParameter, 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.SageMakerPipelineParameter
+ if *v == nil {
+ cv = []types.SageMakerPipelineParameter{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.SageMakerPipelineParameter
+ destAddr := &col
+ if err := awsAwsjson11_deserializeDocumentSageMakerPipelineParameter(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentSageMakerPipelineParameters(v **types.SageMakerPipelineParameters, 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.SageMakerPipelineParameters
+ if *v == nil {
+ sv = &types.SageMakerPipelineParameters{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "PipelineParameterList":
+ if err := awsAwsjson11_deserializeDocumentSageMakerPipelineParameterList(&sv.PipelineParameterList, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeDocumentSqsParameters(v **types.SqsParameters, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -10025,6 +10144,11 @@ func awsAwsjson11_deserializeDocumentTarget(v **types.Target, value interface{})
return err
}
+ case "SageMakerPipelineParameters":
+ if err := awsAwsjson11_deserializeDocumentSageMakerPipelineParameters(&sv.SageMakerPipelineParameters, value); err != nil {
+ return err
+ }
+
case "SqsParameters":
if err := awsAwsjson11_deserializeDocumentSqsParameters(&sv.SqsParameters, value); err != nil {
return err
diff --git a/service/eventbridge/go.mod b/service/eventbridge/go.mod
index 4db2f3f5c0e..96caff1c391 100644
--- a/service/eventbridge/go.mod
+++ b/service/eventbridge/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/eventbridge/go.sum b/service/eventbridge/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/eventbridge/go.sum
+++ b/service/eventbridge/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/eventbridge/serializers.go b/service/eventbridge/serializers.go
index 6037c428c6a..81b730c5d7b 100644
--- a/service/eventbridge/serializers.go
+++ b/service/eventbridge/serializers.go
@@ -3177,6 +3177,50 @@ func awsAwsjson11_serializeDocumentRunCommandTargetValues(v []string, value smit
return nil
}
+func awsAwsjson11_serializeDocumentSageMakerPipelineParameter(v *types.SageMakerPipelineParameter, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Name != nil {
+ ok := object.Key("Name")
+ ok.String(*v.Name)
+ }
+
+ if v.Value != nil {
+ ok := object.Key("Value")
+ ok.String(*v.Value)
+ }
+
+ return nil
+}
+
+func awsAwsjson11_serializeDocumentSageMakerPipelineParameterList(v []types.SageMakerPipelineParameter, value smithyjson.Value) error {
+ array := value.Array()
+ defer array.Close()
+
+ for i := range v {
+ av := array.Value()
+ if err := awsAwsjson11_serializeDocumentSageMakerPipelineParameter(&v[i], av); err != nil {
+ return err
+ }
+ }
+ return nil
+}
+
+func awsAwsjson11_serializeDocumentSageMakerPipelineParameters(v *types.SageMakerPipelineParameters, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.PipelineParameterList != nil {
+ ok := object.Key("PipelineParameterList")
+ if err := awsAwsjson11_serializeDocumentSageMakerPipelineParameterList(v.PipelineParameterList, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeDocumentSqsParameters(v *types.SqsParameters, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -3333,6 +3377,13 @@ func awsAwsjson11_serializeDocumentTarget(v *types.Target, value smithyjson.Valu
}
}
+ if v.SageMakerPipelineParameters != nil {
+ ok := object.Key("SageMakerPipelineParameters")
+ if err := awsAwsjson11_serializeDocumentSageMakerPipelineParameters(v.SageMakerPipelineParameters, ok); err != nil {
+ return err
+ }
+ }
+
if v.SqsParameters != nil {
ok := object.Key("SqsParameters")
if err := awsAwsjson11_serializeDocumentSqsParameters(v.SqsParameters, ok); err != nil {
diff --git a/service/eventbridge/types/types.go b/service/eventbridge/types/types.go
index bbdcf60e4d4..b605b9040a6 100644
--- a/service/eventbridge/types/types.go
+++ b/service/eventbridge/types/types.go
@@ -893,6 +893,30 @@ type RunCommandTarget struct {
Values []string
}
+// Name/Value pair of a parameter to start execution of a SageMaker Model Building
+// Pipeline.
+type SageMakerPipelineParameter struct {
+
+ // Name of parameter to start execution of a SageMaker Model Building Pipeline.
+ //
+ // This member is required.
+ Name *string
+
+ // Value of parameter to start execution of a SageMaker Model Building Pipeline.
+ //
+ // This member is required.
+ Value *string
+}
+
+// These are custom parameters to use when the target is a SageMaker Model Building
+// Pipeline that starts based on EventBridge events.
+type SageMakerPipelineParameters struct {
+
+ // List of Parameter names and values for SageMaker Model Building Pipeline
+ // execution.
+ PipelineParameterList []SageMakerPipelineParameter
+}
+
// This structure includes the custom parameter to be used when the target is an
// SQS FIFO queue.
type SqsParameters struct {
@@ -1004,6 +1028,12 @@ type Target struct {
// Parameters used when you are using the rule to invoke Amazon EC2 Run Command.
RunCommandParameters *RunCommandParameters
+ // Contains the SageMaker Model Building Pipeline parameters to start execution of
+ // a SageMaker Model Building Pipeline. If you specify a SageMaker Model Building
+ // Pipeline as a target, you can use this to specify parameters to start a pipeline
+ // execution based on EventBridge events.
+ SageMakerPipelineParameters *SageMakerPipelineParameters
+
// Contains the message group ID to use when the target is a FIFO queue. If you
// specify an SQS FIFO queue as a target, the queue must have content-based
// deduplication enabled.
diff --git a/service/eventbridge/validators.go b/service/eventbridge/validators.go
index 7f547207224..25937aba3bf 100644
--- a/service/eventbridge/validators.go
+++ b/service/eventbridge/validators.go
@@ -1332,6 +1332,58 @@ func validateRunCommandTargets(v []types.RunCommandTarget) error {
}
}
+func validateSageMakerPipelineParameter(v *types.SageMakerPipelineParameter) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "SageMakerPipelineParameter"}
+ if v.Name == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Name"))
+ }
+ if v.Value == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Value"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateSageMakerPipelineParameterList(v []types.SageMakerPipelineParameter) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "SageMakerPipelineParameterList"}
+ for i := range v {
+ if err := validateSageMakerPipelineParameter(&v[i]); err != nil {
+ invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateSageMakerPipelineParameters(v *types.SageMakerPipelineParameters) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "SageMakerPipelineParameters"}
+ if v.PipelineParameterList != nil {
+ if err := validateSageMakerPipelineParameterList(v.PipelineParameterList); err != nil {
+ invalidParams.AddNested("PipelineParameterList", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateTag(v *types.Tag) error {
if v == nil {
return nil
@@ -1408,6 +1460,11 @@ func validateTarget(v *types.Target) error {
invalidParams.AddNested("RedshiftDataParameters", err.(smithy.InvalidParamsError))
}
}
+ if v.SageMakerPipelineParameters != nil {
+ if err := validateSageMakerPipelineParameters(v.SageMakerPipelineParameters); err != nil {
+ invalidParams.AddNested("SageMakerPipelineParameters", err.(smithy.InvalidParamsError))
+ }
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
diff --git a/service/firehose/go.mod b/service/firehose/go.mod
index 01aa4354312..66362d49a21 100644
--- a/service/firehose/go.mod
+++ b/service/firehose/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/firehose/go.sum b/service/firehose/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/firehose/go.sum
+++ b/service/firehose/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/fis/go.mod b/service/fis/go.mod
index 731ee77a159..22b49202022 100644
--- a/service/fis/go.mod
+++ b/service/fis/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/fis/go.sum b/service/fis/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/fis/go.sum
+++ b/service/fis/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/fms/go.mod b/service/fms/go.mod
index 9f9cef47fa6..625a33e453b 100644
--- a/service/fms/go.mod
+++ b/service/fms/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/fms/go.sum b/service/fms/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/fms/go.sum
+++ b/service/fms/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/forecast/go.mod b/service/forecast/go.mod
index 8392dc62016..fe19e3be9ee 100644
--- a/service/forecast/go.mod
+++ b/service/forecast/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/forecast/go.sum b/service/forecast/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/forecast/go.sum
+++ b/service/forecast/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/forecastquery/go.mod b/service/forecastquery/go.mod
index f4439f5fc74..2bafe14ee6a 100644
--- a/service/forecastquery/go.mod
+++ b/service/forecastquery/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/forecastquery/go.sum b/service/forecastquery/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/forecastquery/go.sum
+++ b/service/forecastquery/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/frauddetector/api_op_CancelBatchPredictionJob.go b/service/frauddetector/api_op_CancelBatchPredictionJob.go
new file mode 100644
index 00000000000..1044ffaff78
--- /dev/null
+++ b/service/frauddetector/api_op_CancelBatchPredictionJob.go
@@ -0,0 +1,112 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package frauddetector
+
+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"
+)
+
+// Cancels the specified batch prediction job.
+func (c *Client) CancelBatchPredictionJob(ctx context.Context, params *CancelBatchPredictionJobInput, optFns ...func(*Options)) (*CancelBatchPredictionJobOutput, error) {
+ if params == nil {
+ params = &CancelBatchPredictionJobInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "CancelBatchPredictionJob", params, optFns, addOperationCancelBatchPredictionJobMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*CancelBatchPredictionJobOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type CancelBatchPredictionJobInput struct {
+
+ // The ID of the batch prediction job to cancel.
+ //
+ // This member is required.
+ JobId *string
+}
+
+type CancelBatchPredictionJobOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationCancelBatchPredictionJobMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpCancelBatchPredictionJob{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpCancelBatchPredictionJob{}, 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 = addOpCancelBatchPredictionJobValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCancelBatchPredictionJob(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_opCancelBatchPredictionJob(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "frauddetector",
+ OperationName: "CancelBatchPredictionJob",
+ }
+}
diff --git a/service/frauddetector/api_op_CreateBatchPredictionJob.go b/service/frauddetector/api_op_CreateBatchPredictionJob.go
new file mode 100644
index 00000000000..a4b19e197cf
--- /dev/null
+++ b/service/frauddetector/api_op_CreateBatchPredictionJob.go
@@ -0,0 +1,144 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package frauddetector
+
+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/frauddetector/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Creates a batch prediction job.
+func (c *Client) CreateBatchPredictionJob(ctx context.Context, params *CreateBatchPredictionJobInput, optFns ...func(*Options)) (*CreateBatchPredictionJobOutput, error) {
+ if params == nil {
+ params = &CreateBatchPredictionJobInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "CreateBatchPredictionJob", params, optFns, addOperationCreateBatchPredictionJobMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*CreateBatchPredictionJobOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type CreateBatchPredictionJobInput struct {
+
+ // The name of the detector.
+ //
+ // This member is required.
+ DetectorName *string
+
+ // The name of the event type.
+ //
+ // This member is required.
+ EventTypeName *string
+
+ // The ARN of the IAM role to use for this job request.
+ //
+ // This member is required.
+ IamRoleArn *string
+
+ // The Amazon S3 location of your training file.
+ //
+ // This member is required.
+ InputPath *string
+
+ // The ID of the batch prediction job.
+ //
+ // This member is required.
+ JobId *string
+
+ // The Amazon S3 location of your output file.
+ //
+ // This member is required.
+ OutputPath *string
+
+ // The detector version.
+ DetectorVersion *string
+
+ // A collection of key and value pairs.
+ Tags []types.Tag
+}
+
+type CreateBatchPredictionJobOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationCreateBatchPredictionJobMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpCreateBatchPredictionJob{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpCreateBatchPredictionJob{}, 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 = addOpCreateBatchPredictionJobValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateBatchPredictionJob(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_opCreateBatchPredictionJob(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "frauddetector",
+ OperationName: "CreateBatchPredictionJob",
+ }
+}
diff --git a/service/frauddetector/api_op_DeleteBatchPredictionJob.go b/service/frauddetector/api_op_DeleteBatchPredictionJob.go
new file mode 100644
index 00000000000..1a7aacdf1ce
--- /dev/null
+++ b/service/frauddetector/api_op_DeleteBatchPredictionJob.go
@@ -0,0 +1,112 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package frauddetector
+
+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 batch prediction job.
+func (c *Client) DeleteBatchPredictionJob(ctx context.Context, params *DeleteBatchPredictionJobInput, optFns ...func(*Options)) (*DeleteBatchPredictionJobOutput, error) {
+ if params == nil {
+ params = &DeleteBatchPredictionJobInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DeleteBatchPredictionJob", params, optFns, addOperationDeleteBatchPredictionJobMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DeleteBatchPredictionJobOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DeleteBatchPredictionJobInput struct {
+
+ // The ID of the batch prediction job to delete.
+ //
+ // This member is required.
+ JobId *string
+}
+
+type DeleteBatchPredictionJobOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDeleteBatchPredictionJobMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpDeleteBatchPredictionJob{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpDeleteBatchPredictionJob{}, 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 = addOpDeleteBatchPredictionJobValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteBatchPredictionJob(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_opDeleteBatchPredictionJob(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "frauddetector",
+ OperationName: "DeleteBatchPredictionJob",
+ }
+}
diff --git a/service/frauddetector/api_op_GetBatchPredictionJobs.go b/service/frauddetector/api_op_GetBatchPredictionJobs.go
new file mode 100644
index 00000000000..bc825706d3f
--- /dev/null
+++ b/service/frauddetector/api_op_GetBatchPredictionJobs.go
@@ -0,0 +1,214 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package frauddetector
+
+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/frauddetector/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Gets all batch prediction jobs or a specific job if you specify a job ID. This
+// is a paginated API. If you provide a null maxResults, this action retrieves a
+// maximum of 50 records per page. If you provide a maxResults, the value must be
+// between 1 and 50. To get the next page results, provide the pagination token
+// from the GetBatchPredictionJobsResponse as part of your request. A null
+// pagination token fetches the records from the beginning.
+func (c *Client) GetBatchPredictionJobs(ctx context.Context, params *GetBatchPredictionJobsInput, optFns ...func(*Options)) (*GetBatchPredictionJobsOutput, error) {
+ if params == nil {
+ params = &GetBatchPredictionJobsInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetBatchPredictionJobs", params, optFns, addOperationGetBatchPredictionJobsMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetBatchPredictionJobsOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetBatchPredictionJobsInput struct {
+
+ // The batch prediction job for which to get the details.
+ JobId *string
+
+ // The maximum number of objects to return for the request.
+ MaxResults *int32
+
+ // The next token from the previous request.
+ NextToken *string
+}
+
+type GetBatchPredictionJobsOutput struct {
+
+ // An array containing the details of each batch prediction job.
+ BatchPredictions []types.BatchPrediction
+
+ // The next token for the subsequent request.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetBatchPredictionJobsMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpGetBatchPredictionJobs{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpGetBatchPredictionJobs{}, 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_opGetBatchPredictionJobs(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
+}
+
+// GetBatchPredictionJobsAPIClient is a client that implements the
+// GetBatchPredictionJobs operation.
+type GetBatchPredictionJobsAPIClient interface {
+ GetBatchPredictionJobs(context.Context, *GetBatchPredictionJobsInput, ...func(*Options)) (*GetBatchPredictionJobsOutput, error)
+}
+
+var _ GetBatchPredictionJobsAPIClient = (*Client)(nil)
+
+// GetBatchPredictionJobsPaginatorOptions is the paginator options for
+// GetBatchPredictionJobs
+type GetBatchPredictionJobsPaginatorOptions struct {
+ // The maximum number of objects to return for the request.
+ 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
+}
+
+// GetBatchPredictionJobsPaginator is a paginator for GetBatchPredictionJobs
+type GetBatchPredictionJobsPaginator struct {
+ options GetBatchPredictionJobsPaginatorOptions
+ client GetBatchPredictionJobsAPIClient
+ params *GetBatchPredictionJobsInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewGetBatchPredictionJobsPaginator returns a new GetBatchPredictionJobsPaginator
+func NewGetBatchPredictionJobsPaginator(client GetBatchPredictionJobsAPIClient, params *GetBatchPredictionJobsInput, optFns ...func(*GetBatchPredictionJobsPaginatorOptions)) *GetBatchPredictionJobsPaginator {
+ if params == nil {
+ params = &GetBatchPredictionJobsInput{}
+ }
+
+ options := GetBatchPredictionJobsPaginatorOptions{}
+ if params.MaxResults != nil {
+ options.Limit = *params.MaxResults
+ }
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &GetBatchPredictionJobsPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *GetBatchPredictionJobsPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next GetBatchPredictionJobs page.
+func (p *GetBatchPredictionJobsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*GetBatchPredictionJobsOutput, 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.GetBatchPredictionJobs(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_opGetBatchPredictionJobs(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "frauddetector",
+ OperationName: "GetBatchPredictionJobs",
+ }
+}
diff --git a/service/frauddetector/deserializers.go b/service/frauddetector/deserializers.go
index 1045ed818cb..9cfa1870740 100644
--- a/service/frauddetector/deserializers.go
+++ b/service/frauddetector/deserializers.go
@@ -258,6 +258,243 @@ func awsAwsjson11_deserializeOpErrorBatchGetVariable(response *smithyhttp.Respon
}
}
+type awsAwsjson11_deserializeOpCancelBatchPredictionJob struct {
+}
+
+func (*awsAwsjson11_deserializeOpCancelBatchPredictionJob) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_deserializeOpCancelBatchPredictionJob) 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_deserializeOpErrorCancelBatchPredictionJob(response, &metadata)
+ }
+ output := &CancelBatchPredictionJobOutput{}
+ 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_deserializeOpDocumentCancelBatchPredictionJobOutput(&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_deserializeOpErrorCancelBatchPredictionJob(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("InternalServerException", errorCode):
+ return awsAwsjson11_deserializeErrorInternalServerException(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorResourceNotFoundException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsAwsjson11_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsAwsjson11_deserializeOpCreateBatchPredictionJob struct {
+}
+
+func (*awsAwsjson11_deserializeOpCreateBatchPredictionJob) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_deserializeOpCreateBatchPredictionJob) 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_deserializeOpErrorCreateBatchPredictionJob(response, &metadata)
+ }
+ output := &CreateBatchPredictionJobOutput{}
+ 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_deserializeOpDocumentCreateBatchPredictionJobOutput(&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_deserializeOpErrorCreateBatchPredictionJob(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("InternalServerException", errorCode):
+ return awsAwsjson11_deserializeErrorInternalServerException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsAwsjson11_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
type awsAwsjson11_deserializeOpCreateDetectorVersion struct {
}
@@ -404,7 +641,124 @@ func (m *awsAwsjson11_deserializeOpCreateModel) HandleDeserialize(ctx context.Co
if response.StatusCode < 200 || response.StatusCode >= 300 {
return out, metadata, awsAwsjson11_deserializeOpErrorCreateModel(response, &metadata)
}
- output := &CreateModelOutput{}
+ output := &CreateModelOutput{}
+ 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_deserializeOpDocumentCreateModelOutput(&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_deserializeOpErrorCreateModel(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("InternalServerException", errorCode):
+ return awsAwsjson11_deserializeErrorInternalServerException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsAwsjson11_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsAwsjson11_deserializeOpCreateModelVersion struct {
+}
+
+func (*awsAwsjson11_deserializeOpCreateModelVersion) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_deserializeOpCreateModelVersion) 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_deserializeOpErrorCreateModelVersion(response, &metadata)
+ }
+ output := &CreateModelVersionOutput{}
out.Result = output
var buff [1024]byte
@@ -424,7 +778,7 @@ func (m *awsAwsjson11_deserializeOpCreateModel) HandleDeserialize(ctx context.Co
return out, metadata, err
}
- err = awsAwsjson11_deserializeOpDocumentCreateModelOutput(&output, shape)
+ err = awsAwsjson11_deserializeOpDocumentCreateModelVersionOutput(&output, shape)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -438,7 +792,7 @@ func (m *awsAwsjson11_deserializeOpCreateModel) HandleDeserialize(ctx context.Co
return out, metadata, err
}
-func awsAwsjson11_deserializeOpErrorCreateModel(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsjson11_deserializeOpErrorCreateModelVersion(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)}
@@ -485,6 +839,9 @@ func awsAwsjson11_deserializeOpErrorCreateModel(response *smithyhttp.Response, m
case strings.EqualFold("InternalServerException", errorCode):
return awsAwsjson11_deserializeErrorInternalServerException(response, errorBody)
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorResourceNotFoundException(response, errorBody)
+
case strings.EqualFold("ValidationException", errorCode):
return awsAwsjson11_deserializeErrorValidationException(response, errorBody)
@@ -498,14 +855,14 @@ func awsAwsjson11_deserializeOpErrorCreateModel(response *smithyhttp.Response, m
}
}
-type awsAwsjson11_deserializeOpCreateModelVersion struct {
+type awsAwsjson11_deserializeOpCreateRule struct {
}
-func (*awsAwsjson11_deserializeOpCreateModelVersion) ID() string {
+func (*awsAwsjson11_deserializeOpCreateRule) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsjson11_deserializeOpCreateModelVersion) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsjson11_deserializeOpCreateRule) 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)
@@ -519,9 +876,9 @@ func (m *awsAwsjson11_deserializeOpCreateModelVersion) HandleDeserialize(ctx con
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsjson11_deserializeOpErrorCreateModelVersion(response, &metadata)
+ return out, metadata, awsAwsjson11_deserializeOpErrorCreateRule(response, &metadata)
}
- output := &CreateModelVersionOutput{}
+ output := &CreateRuleOutput{}
out.Result = output
var buff [1024]byte
@@ -541,7 +898,7 @@ func (m *awsAwsjson11_deserializeOpCreateModelVersion) HandleDeserialize(ctx con
return out, metadata, err
}
- err = awsAwsjson11_deserializeOpDocumentCreateModelVersionOutput(&output, shape)
+ err = awsAwsjson11_deserializeOpDocumentCreateRuleOutput(&output, shape)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -555,7 +912,7 @@ func (m *awsAwsjson11_deserializeOpCreateModelVersion) HandleDeserialize(ctx con
return out, metadata, err
}
-func awsAwsjson11_deserializeOpErrorCreateModelVersion(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsjson11_deserializeOpErrorCreateRule(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)}
@@ -602,8 +959,8 @@ func awsAwsjson11_deserializeOpErrorCreateModelVersion(response *smithyhttp.Resp
case strings.EqualFold("InternalServerException", errorCode):
return awsAwsjson11_deserializeErrorInternalServerException(response, errorBody)
- case strings.EqualFold("ResourceNotFoundException", errorCode):
- return awsAwsjson11_deserializeErrorResourceNotFoundException(response, errorBody)
+ case strings.EqualFold("ThrottlingException", errorCode):
+ return awsAwsjson11_deserializeErrorThrottlingException(response, errorBody)
case strings.EqualFold("ValidationException", errorCode):
return awsAwsjson11_deserializeErrorValidationException(response, errorBody)
@@ -618,14 +975,14 @@ func awsAwsjson11_deserializeOpErrorCreateModelVersion(response *smithyhttp.Resp
}
}
-type awsAwsjson11_deserializeOpCreateRule struct {
+type awsAwsjson11_deserializeOpCreateVariable struct {
}
-func (*awsAwsjson11_deserializeOpCreateRule) ID() string {
+func (*awsAwsjson11_deserializeOpCreateVariable) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsjson11_deserializeOpCreateRule) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsjson11_deserializeOpCreateVariable) 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)
@@ -639,9 +996,9 @@ func (m *awsAwsjson11_deserializeOpCreateRule) HandleDeserialize(ctx context.Con
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsjson11_deserializeOpErrorCreateRule(response, &metadata)
+ return out, metadata, awsAwsjson11_deserializeOpErrorCreateVariable(response, &metadata)
}
- output := &CreateRuleOutput{}
+ output := &CreateVariableOutput{}
out.Result = output
var buff [1024]byte
@@ -661,7 +1018,7 @@ func (m *awsAwsjson11_deserializeOpCreateRule) HandleDeserialize(ctx context.Con
return out, metadata, err
}
- err = awsAwsjson11_deserializeOpDocumentCreateRuleOutput(&output, shape)
+ err = awsAwsjson11_deserializeOpDocumentCreateVariableOutput(&output, shape)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -675,7 +1032,7 @@ func (m *awsAwsjson11_deserializeOpCreateRule) HandleDeserialize(ctx context.Con
return out, metadata, err
}
-func awsAwsjson11_deserializeOpErrorCreateRule(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsjson11_deserializeOpErrorCreateVariable(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)}
@@ -738,14 +1095,14 @@ func awsAwsjson11_deserializeOpErrorCreateRule(response *smithyhttp.Response, me
}
}
-type awsAwsjson11_deserializeOpCreateVariable struct {
+type awsAwsjson11_deserializeOpDeleteBatchPredictionJob struct {
}
-func (*awsAwsjson11_deserializeOpCreateVariable) ID() string {
+func (*awsAwsjson11_deserializeOpDeleteBatchPredictionJob) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsjson11_deserializeOpCreateVariable) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsjson11_deserializeOpDeleteBatchPredictionJob) 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)
@@ -759,9 +1116,9 @@ func (m *awsAwsjson11_deserializeOpCreateVariable) HandleDeserialize(ctx context
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsjson11_deserializeOpErrorCreateVariable(response, &metadata)
+ return out, metadata, awsAwsjson11_deserializeOpErrorDeleteBatchPredictionJob(response, &metadata)
}
- output := &CreateVariableOutput{}
+ output := &DeleteBatchPredictionJobOutput{}
out.Result = output
var buff [1024]byte
@@ -781,7 +1138,7 @@ func (m *awsAwsjson11_deserializeOpCreateVariable) HandleDeserialize(ctx context
return out, metadata, err
}
- err = awsAwsjson11_deserializeOpDocumentCreateVariableOutput(&output, shape)
+ err = awsAwsjson11_deserializeOpDocumentDeleteBatchPredictionJobOutput(&output, shape)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -795,7 +1152,7 @@ func (m *awsAwsjson11_deserializeOpCreateVariable) HandleDeserialize(ctx context
return out, metadata, err
}
-func awsAwsjson11_deserializeOpErrorCreateVariable(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsjson11_deserializeOpErrorDeleteBatchPredictionJob(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)}
@@ -842,8 +1199,8 @@ func awsAwsjson11_deserializeOpErrorCreateVariable(response *smithyhttp.Response
case strings.EqualFold("InternalServerException", errorCode):
return awsAwsjson11_deserializeErrorInternalServerException(response, errorBody)
- case strings.EqualFold("ThrottlingException", errorCode):
- return awsAwsjson11_deserializeErrorThrottlingException(response, errorBody)
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorResourceNotFoundException(response, errorBody)
case strings.EqualFold("ValidationException", errorCode):
return awsAwsjson11_deserializeErrorValidationException(response, errorBody)
@@ -2559,6 +2916,126 @@ func awsAwsjson11_deserializeOpErrorDescribeModelVersions(response *smithyhttp.R
}
}
+type awsAwsjson11_deserializeOpGetBatchPredictionJobs struct {
+}
+
+func (*awsAwsjson11_deserializeOpGetBatchPredictionJobs) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_deserializeOpGetBatchPredictionJobs) 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_deserializeOpErrorGetBatchPredictionJobs(response, &metadata)
+ }
+ output := &GetBatchPredictionJobsOutput{}
+ 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_deserializeOpDocumentGetBatchPredictionJobsOutput(&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_deserializeOpErrorGetBatchPredictionJobs(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("InternalServerException", errorCode):
+ return awsAwsjson11_deserializeErrorInternalServerException(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorResourceNotFoundException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsAwsjson11_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
type awsAwsjson11_deserializeOpGetDetectors struct {
}
@@ -6663,11 +7140,107 @@ func awsAwsjson11_deserializeDocumentAccessDeniedException(v **types.AccessDenie
}
}
- *v = sv
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentBatchCreateVariableError(v **types.BatchCreateVariableError, 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.BatchCreateVariableError
+ if *v == nil {
+ sv = &types.BatchCreateVariableError{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "code":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Integer2 to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.Code = int32(i64)
+ }
+
+ case "message":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected string to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ case "name":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected string to be of type string, got %T instead", value)
+ }
+ sv.Name = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentBatchCreateVariableErrorList(v *[]types.BatchCreateVariableError, 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.BatchCreateVariableError
+ if *v == nil {
+ cv = []types.BatchCreateVariableError{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.BatchCreateVariableError
+ destAddr := &col
+ if err := awsAwsjson11_deserializeDocumentBatchCreateVariableError(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
return nil
}
-func awsAwsjson11_deserializeDocumentBatchCreateVariableError(v **types.BatchCreateVariableError, value interface{}) error {
+func awsAwsjson11_deserializeDocumentBatchGetVariableError(v **types.BatchGetVariableError, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
@@ -6680,9 +7253,9 @@ func awsAwsjson11_deserializeDocumentBatchCreateVariableError(v **types.BatchCre
return fmt.Errorf("unexpected JSON type %v", value)
}
- var sv *types.BatchCreateVariableError
+ var sv *types.BatchGetVariableError
if *v == nil {
- sv = &types.BatchCreateVariableError{}
+ sv = &types.BatchGetVariableError{}
} else {
sv = *v
}
@@ -6693,7 +7266,7 @@ func awsAwsjson11_deserializeDocumentBatchCreateVariableError(v **types.BatchCre
if value != nil {
jtv, ok := value.(json.Number)
if !ok {
- return fmt.Errorf("expected integer to be json.Number, got %T instead", value)
+ return fmt.Errorf("expected Integer2 to be json.Number, got %T instead", value)
}
i64, err := jtv.Int64()
if err != nil {
@@ -6729,7 +7302,7 @@ func awsAwsjson11_deserializeDocumentBatchCreateVariableError(v **types.BatchCre
return nil
}
-func awsAwsjson11_deserializeDocumentBatchCreateVariableErrorList(v *[]types.BatchCreateVariableError, value interface{}) error {
+func awsAwsjson11_deserializeDocumentBatchGetVariableErrorList(v *[]types.BatchGetVariableError, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
@@ -6742,17 +7315,17 @@ func awsAwsjson11_deserializeDocumentBatchCreateVariableErrorList(v *[]types.Bat
return fmt.Errorf("unexpected JSON type %v", value)
}
- var cv []types.BatchCreateVariableError
+ var cv []types.BatchGetVariableError
if *v == nil {
- cv = []types.BatchCreateVariableError{}
+ cv = []types.BatchGetVariableError{}
} else {
cv = *v
}
for _, value := range shape {
- var col types.BatchCreateVariableError
+ var col types.BatchGetVariableError
destAddr := &col
- if err := awsAwsjson11_deserializeDocumentBatchCreateVariableError(&destAddr, value); err != nil {
+ if err := awsAwsjson11_deserializeDocumentBatchGetVariableError(&destAddr, value); err != nil {
return err
}
col = *destAddr
@@ -6763,7 +7336,7 @@ func awsAwsjson11_deserializeDocumentBatchCreateVariableErrorList(v *[]types.Bat
return nil
}
-func awsAwsjson11_deserializeDocumentBatchGetVariableError(v **types.BatchGetVariableError, value interface{}) error {
+func awsAwsjson11_deserializeDocumentBatchPrediction(v **types.BatchPrediction, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
@@ -6776,44 +7349,156 @@ func awsAwsjson11_deserializeDocumentBatchGetVariableError(v **types.BatchGetVar
return fmt.Errorf("unexpected JSON type %v", value)
}
- var sv *types.BatchGetVariableError
+ var sv *types.BatchPrediction
if *v == nil {
- sv = &types.BatchGetVariableError{}
+ sv = &types.BatchPrediction{}
} else {
sv = *v
}
for key, value := range shape {
switch key {
- case "code":
+ case "arn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected fraudDetectorArn to be of type string, got %T instead", value)
+ }
+ sv.Arn = ptr.String(jtv)
+ }
+
+ case "completionTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected time to be of type string, got %T instead", value)
+ }
+ sv.CompletionTime = ptr.String(jtv)
+ }
+
+ case "detectorName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected identifier to be of type string, got %T instead", value)
+ }
+ sv.DetectorName = ptr.String(jtv)
+ }
+
+ case "detectorVersion":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected floatVersionString to be of type string, got %T instead", value)
+ }
+ sv.DetectorVersion = ptr.String(jtv)
+ }
+
+ case "eventTypeName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected identifier to be of type string, got %T instead", value)
+ }
+ sv.EventTypeName = ptr.String(jtv)
+ }
+
+ case "failureReason":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected string to be of type string, got %T instead", value)
+ }
+ sv.FailureReason = ptr.String(jtv)
+ }
+
+ case "iamRoleArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected iamRoleArn to be of type string, got %T instead", value)
+ }
+ sv.IamRoleArn = ptr.String(jtv)
+ }
+
+ case "inputPath":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected s3BucketLocation to be of type string, got %T instead", value)
+ }
+ sv.InputPath = ptr.String(jtv)
+ }
+
+ case "jobId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected identifier to be of type string, got %T instead", value)
+ }
+ sv.JobId = ptr.String(jtv)
+ }
+
+ case "lastHeartbeatTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected time to be of type string, got %T instead", value)
+ }
+ sv.LastHeartbeatTime = ptr.String(jtv)
+ }
+
+ case "outputPath":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected s3BucketLocation to be of type string, got %T instead", value)
+ }
+ sv.OutputPath = ptr.String(jtv)
+ }
+
+ case "processedRecordsCount":
if value != nil {
jtv, ok := value.(json.Number)
if !ok {
- return fmt.Errorf("expected integer to be json.Number, got %T instead", value)
+ return fmt.Errorf("expected Integer to be json.Number, got %T instead", value)
}
i64, err := jtv.Int64()
if err != nil {
return err
}
- sv.Code = int32(i64)
+ sv.ProcessedRecordsCount = ptr.Int32(int32(i64))
}
- case "message":
+ case "startTime":
if value != nil {
jtv, ok := value.(string)
if !ok {
- return fmt.Errorf("expected string to be of type string, got %T instead", value)
+ return fmt.Errorf("expected time to be of type string, got %T instead", value)
}
- sv.Message = ptr.String(jtv)
+ sv.StartTime = ptr.String(jtv)
}
- case "name":
+ case "status":
if value != nil {
jtv, ok := value.(string)
if !ok {
- return fmt.Errorf("expected string to be of type string, got %T instead", value)
+ return fmt.Errorf("expected AsyncJobStatus to be of type string, got %T instead", value)
}
- sv.Name = ptr.String(jtv)
+ sv.Status = types.AsyncJobStatus(jtv)
+ }
+
+ case "totalRecordsCount":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Integer to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.TotalRecordsCount = ptr.Int32(int32(i64))
}
default:
@@ -6825,7 +7510,7 @@ func awsAwsjson11_deserializeDocumentBatchGetVariableError(v **types.BatchGetVar
return nil
}
-func awsAwsjson11_deserializeDocumentBatchGetVariableErrorList(v *[]types.BatchGetVariableError, value interface{}) error {
+func awsAwsjson11_deserializeDocumentBatchPredictionList(v *[]types.BatchPrediction, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
@@ -6838,17 +7523,17 @@ func awsAwsjson11_deserializeDocumentBatchGetVariableErrorList(v *[]types.BatchG
return fmt.Errorf("unexpected JSON type %v", value)
}
- var cv []types.BatchGetVariableError
+ var cv []types.BatchPrediction
if *v == nil {
- cv = []types.BatchGetVariableError{}
+ cv = []types.BatchPrediction{}
} else {
cv = *v
}
for _, value := range shape {
- var col types.BatchGetVariableError
+ var col types.BatchPrediction
destAddr := &col
- if err := awsAwsjson11_deserializeDocumentBatchGetVariableError(&destAddr, value); err != nil {
+ if err := awsAwsjson11_deserializeDocumentBatchPrediction(&destAddr, value); err != nil {
return err
}
col = *destAddr
@@ -9916,6 +10601,68 @@ func awsAwsjson11_deserializeOpDocumentBatchGetVariableOutput(v **BatchGetVariab
return nil
}
+func awsAwsjson11_deserializeOpDocumentCancelBatchPredictionJobOutput(v **CancelBatchPredictionJobOutput, 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 *CancelBatchPredictionJobOutput
+ if *v == nil {
+ sv = &CancelBatchPredictionJobOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeOpDocumentCreateBatchPredictionJobOutput(v **CreateBatchPredictionJobOutput, 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 *CreateBatchPredictionJobOutput
+ if *v == nil {
+ sv = &CreateBatchPredictionJobOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeOpDocumentCreateDetectorVersionOutput(v **CreateDetectorVersionOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -10139,6 +10886,37 @@ func awsAwsjson11_deserializeOpDocumentCreateVariableOutput(v **CreateVariableOu
return nil
}
+func awsAwsjson11_deserializeOpDocumentDeleteBatchPredictionJobOutput(v **DeleteBatchPredictionJobOutput, 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 *DeleteBatchPredictionJobOutput
+ if *v == nil {
+ sv = &DeleteBatchPredictionJobOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeOpDocumentDeleteDetectorOutput(v **DeleteDetectorOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -10619,6 +11397,51 @@ func awsAwsjson11_deserializeOpDocumentDescribeModelVersionsOutput(v **DescribeM
return nil
}
+func awsAwsjson11_deserializeOpDocumentGetBatchPredictionJobsOutput(v **GetBatchPredictionJobsOutput, 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 *GetBatchPredictionJobsOutput
+ if *v == nil {
+ sv = &GetBatchPredictionJobsOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "batchPredictions":
+ if err := awsAwsjson11_deserializeDocumentBatchPredictionList(&sv.BatchPredictions, value); err != nil {
+ return err
+ }
+
+ case "nextToken":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected string to be of type string, got %T instead", value)
+ }
+ sv.NextToken = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeOpDocumentGetDetectorsOutput(v **GetDetectorsOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
diff --git a/service/frauddetector/go.mod b/service/frauddetector/go.mod
index 785b74d7ff9..d70a6798487 100644
--- a/service/frauddetector/go.mod
+++ b/service/frauddetector/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/frauddetector/go.sum b/service/frauddetector/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/frauddetector/go.sum
+++ b/service/frauddetector/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/frauddetector/serializers.go b/service/frauddetector/serializers.go
index 2e61f5512bd..82bbc06024a 100644
--- a/service/frauddetector/serializers.go
+++ b/service/frauddetector/serializers.go
@@ -109,6 +109,100 @@ func (m *awsAwsjson11_serializeOpBatchGetVariable) HandleSerialize(ctx context.C
return next.HandleSerialize(ctx, in)
}
+type awsAwsjson11_serializeOpCancelBatchPredictionJob struct {
+}
+
+func (*awsAwsjson11_serializeOpCancelBatchPredictionJob) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_serializeOpCancelBatchPredictionJob) 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.(*CancelBatchPredictionJobInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("AWSHawksNestServiceFacade.CancelBatchPredictionJob")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentCancelBatchPredictionJobInput(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_serializeOpCreateBatchPredictionJob struct {
+}
+
+func (*awsAwsjson11_serializeOpCreateBatchPredictionJob) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_serializeOpCreateBatchPredictionJob) 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.(*CreateBatchPredictionJobInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("AWSHawksNestServiceFacade.CreateBatchPredictionJob")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentCreateBatchPredictionJobInput(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_serializeOpCreateDetectorVersion struct {
}
@@ -344,6 +438,53 @@ func (m *awsAwsjson11_serializeOpCreateVariable) HandleSerialize(ctx context.Con
return next.HandleSerialize(ctx, in)
}
+type awsAwsjson11_serializeOpDeleteBatchPredictionJob struct {
+}
+
+func (*awsAwsjson11_serializeOpDeleteBatchPredictionJob) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_serializeOpDeleteBatchPredictionJob) 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.(*DeleteBatchPredictionJobInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("AWSHawksNestServiceFacade.DeleteBatchPredictionJob")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentDeleteBatchPredictionJobInput(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_serializeOpDeleteDetector struct {
}
@@ -1002,6 +1143,53 @@ func (m *awsAwsjson11_serializeOpDescribeModelVersions) HandleSerialize(ctx cont
return next.HandleSerialize(ctx, in)
}
+type awsAwsjson11_serializeOpGetBatchPredictionJobs struct {
+}
+
+func (*awsAwsjson11_serializeOpGetBatchPredictionJobs) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_serializeOpGetBatchPredictionJobs) 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.(*GetBatchPredictionJobsInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("AWSHawksNestServiceFacade.GetBatchPredictionJobs")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentGetBatchPredictionJobsInput(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_serializeOpGetDetectors struct {
}
@@ -2954,6 +3142,67 @@ func awsAwsjson11_serializeOpDocumentBatchGetVariableInput(v *BatchGetVariableIn
return nil
}
+func awsAwsjson11_serializeOpDocumentCancelBatchPredictionJobInput(v *CancelBatchPredictionJobInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.JobId != nil {
+ ok := object.Key("jobId")
+ ok.String(*v.JobId)
+ }
+
+ return nil
+}
+
+func awsAwsjson11_serializeOpDocumentCreateBatchPredictionJobInput(v *CreateBatchPredictionJobInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.DetectorName != nil {
+ ok := object.Key("detectorName")
+ ok.String(*v.DetectorName)
+ }
+
+ if v.DetectorVersion != nil {
+ ok := object.Key("detectorVersion")
+ ok.String(*v.DetectorVersion)
+ }
+
+ if v.EventTypeName != nil {
+ ok := object.Key("eventTypeName")
+ ok.String(*v.EventTypeName)
+ }
+
+ if v.IamRoleArn != nil {
+ ok := object.Key("iamRoleArn")
+ ok.String(*v.IamRoleArn)
+ }
+
+ if v.InputPath != nil {
+ ok := object.Key("inputPath")
+ ok.String(*v.InputPath)
+ }
+
+ if v.JobId != nil {
+ ok := object.Key("jobId")
+ ok.String(*v.JobId)
+ }
+
+ if v.OutputPath != nil {
+ ok := object.Key("outputPath")
+ ok.String(*v.OutputPath)
+ }
+
+ if v.Tags != nil {
+ ok := object.Key("tags")
+ if err := awsAwsjson11_serializeDocumentTagList(v.Tags, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeOpDocumentCreateDetectorVersionInput(v *CreateDetectorVersionInput, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -3171,6 +3420,18 @@ func awsAwsjson11_serializeOpDocumentCreateVariableInput(v *CreateVariableInput,
return nil
}
+func awsAwsjson11_serializeOpDocumentDeleteBatchPredictionJobInput(v *DeleteBatchPredictionJobInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.JobId != nil {
+ ok := object.Key("jobId")
+ ok.String(*v.JobId)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeOpDocumentDeleteDetectorInput(v *DeleteDetectorInput, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -3396,6 +3657,28 @@ func awsAwsjson11_serializeOpDocumentDescribeModelVersionsInput(v *DescribeModel
return nil
}
+func awsAwsjson11_serializeOpDocumentGetBatchPredictionJobsInput(v *GetBatchPredictionJobsInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.JobId != nil {
+ ok := object.Key("jobId")
+ ok.String(*v.JobId)
+ }
+
+ if v.MaxResults != nil {
+ ok := object.Key("maxResults")
+ ok.Integer(*v.MaxResults)
+ }
+
+ if v.NextToken != nil {
+ ok := object.Key("nextToken")
+ ok.String(*v.NextToken)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeOpDocumentGetDetectorsInput(v *GetDetectorsInput, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
diff --git a/service/frauddetector/types/enums.go b/service/frauddetector/types/enums.go
index db2221c2ba8..695bb077222 100644
--- a/service/frauddetector/types/enums.go
+++ b/service/frauddetector/types/enums.go
@@ -2,6 +2,32 @@
package types
+type AsyncJobStatus string
+
+// Enum values for AsyncJobStatus
+const (
+ AsyncJobStatusInProgressInitializing AsyncJobStatus = "IN_PROGRESS_INITIALIZING"
+ AsyncJobStatusInProgress AsyncJobStatus = "IN_PROGRESS"
+ AsyncJobStatusCancelInProgress AsyncJobStatus = "CANCEL_IN_PROGRESS"
+ AsyncJobStatusCanceled AsyncJobStatus = "CANCELED"
+ AsyncJobStatusComplete AsyncJobStatus = "COMPLETE"
+ AsyncJobStatusFailed AsyncJobStatus = "FAILED"
+)
+
+// Values returns all known values for AsyncJobStatus. 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 (AsyncJobStatus) Values() []AsyncJobStatus {
+ return []AsyncJobStatus{
+ "IN_PROGRESS_INITIALIZING",
+ "IN_PROGRESS",
+ "CANCEL_IN_PROGRESS",
+ "CANCELED",
+ "COMPLETE",
+ "FAILED",
+ }
+}
+
type DataSource string
// Enum values for DataSource
diff --git a/service/frauddetector/types/types.go b/service/frauddetector/types/types.go
index e8877cf3591..cdd58f738aa 100644
--- a/service/frauddetector/types/types.go
+++ b/service/frauddetector/types/types.go
@@ -28,6 +28,56 @@ type BatchGetVariableError struct {
Name *string
}
+// The batch prediction details.
+type BatchPrediction struct {
+
+ // The ARN of batch prediction job.
+ Arn *string
+
+ // Timestamp of when the batch prediction job comleted.
+ CompletionTime *string
+
+ // The name of the detector.
+ DetectorName *string
+
+ // The detector version.
+ DetectorVersion *string
+
+ // The name of the event type.
+ EventTypeName *string
+
+ // The reason a batch prediction job failed.
+ FailureReason *string
+
+ // The ARN of the IAM role to use for this job request.
+ IamRoleArn *string
+
+ // The Amazon S3 location of your training file.
+ InputPath *string
+
+ // The job ID for the batch prediction.
+ JobId *string
+
+ // Timestamp of most recent heartbeat indicating the batch prediction job was
+ // making progress.
+ LastHeartbeatTime *string
+
+ // The Amazon S3 location of your output file.
+ OutputPath *string
+
+ // The number of records processed by the batch prediction job.
+ ProcessedRecordsCount *int32
+
+ // Timestamp of when the batch prediction job started.
+ StartTime *string
+
+ // The batch prediction status.
+ Status AsyncJobStatus
+
+ // The total number of records in the batch prediction job.
+ TotalRecordsCount *int32
+}
+
// The model training validation messages.
type DataValidationMetrics struct {
diff --git a/service/frauddetector/validators.go b/service/frauddetector/validators.go
index fa7ca78da74..5d00a300d9f 100644
--- a/service/frauddetector/validators.go
+++ b/service/frauddetector/validators.go
@@ -50,6 +50,46 @@ func (m *validateOpBatchGetVariable) HandleInitialize(ctx context.Context, in mi
return next.HandleInitialize(ctx, in)
}
+type validateOpCancelBatchPredictionJob struct {
+}
+
+func (*validateOpCancelBatchPredictionJob) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpCancelBatchPredictionJob) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*CancelBatchPredictionJobInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpCancelBatchPredictionJobInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpCreateBatchPredictionJob struct {
+}
+
+func (*validateOpCreateBatchPredictionJob) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpCreateBatchPredictionJob) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*CreateBatchPredictionJobInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpCreateBatchPredictionJobInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpCreateDetectorVersion struct {
}
@@ -150,6 +190,26 @@ func (m *validateOpCreateVariable) HandleInitialize(ctx context.Context, in midd
return next.HandleInitialize(ctx, in)
}
+type validateOpDeleteBatchPredictionJob struct {
+}
+
+func (*validateOpDeleteBatchPredictionJob) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDeleteBatchPredictionJob) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DeleteBatchPredictionJobInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDeleteBatchPredictionJobInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpDeleteDetector struct {
}
@@ -878,6 +938,14 @@ func addOpBatchGetVariableValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpBatchGetVariable{}, middleware.After)
}
+func addOpCancelBatchPredictionJobValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpCancelBatchPredictionJob{}, middleware.After)
+}
+
+func addOpCreateBatchPredictionJobValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpCreateBatchPredictionJob{}, middleware.After)
+}
+
func addOpCreateDetectorVersionValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpCreateDetectorVersion{}, middleware.After)
}
@@ -898,6 +966,10 @@ func addOpCreateVariableValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpCreateVariable{}, middleware.After)
}
+func addOpDeleteBatchPredictionJobValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDeleteBatchPredictionJob{}, middleware.After)
+}
+
func addOpDeleteDetectorValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpDeleteDetector{}, middleware.After)
}
@@ -1308,6 +1380,56 @@ func validateOpBatchGetVariableInput(v *BatchGetVariableInput) error {
}
}
+func validateOpCancelBatchPredictionJobInput(v *CancelBatchPredictionJobInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CancelBatchPredictionJobInput"}
+ if v.JobId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("JobId"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpCreateBatchPredictionJobInput(v *CreateBatchPredictionJobInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CreateBatchPredictionJobInput"}
+ if v.JobId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("JobId"))
+ }
+ if v.InputPath == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("InputPath"))
+ }
+ if v.OutputPath == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("OutputPath"))
+ }
+ if v.EventTypeName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("EventTypeName"))
+ }
+ if v.DetectorName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("DetectorName"))
+ }
+ if v.IamRoleArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("IamRoleArn"))
+ }
+ if v.Tags != nil {
+ if err := validateTagList(v.Tags); err != nil {
+ invalidParams.AddNested("Tags", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpCreateDetectorVersionInput(v *CreateDetectorVersionInput) error {
if v == nil {
return nil
@@ -1465,6 +1587,21 @@ func validateOpCreateVariableInput(v *CreateVariableInput) error {
}
}
+func validateOpDeleteBatchPredictionJobInput(v *DeleteBatchPredictionJobInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DeleteBatchPredictionJobInput"}
+ if v.JobId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("JobId"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpDeleteDetectorInput(v *DeleteDetectorInput) error {
if v == nil {
return nil
diff --git a/service/fsx/go.mod b/service/fsx/go.mod
index 27c52670f0e..e1b475f21ad 100644
--- a/service/fsx/go.mod
+++ b/service/fsx/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/fsx/go.sum b/service/fsx/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/fsx/go.sum
+++ b/service/fsx/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/gamelift/api_op_CreateFleet.go b/service/gamelift/api_op_CreateFleet.go
index 1d253007897..f3ceb610d6e 100644
--- a/service/gamelift/api_op_CreateFleet.go
+++ b/service/gamelift/api_op_CreateFleet.go
@@ -19,16 +19,18 @@ import (
// optional set of remote locations. Fleets that are created in the following AWS
// Regions support multiple locations: us-east-1 (N. Virginia), us-west-2 (Oregon),
// eu-central-1 (Frankfurt), eu-west-1 (Ireland), ap-southeast-2 (Sydney),
-// ap-northeast-1 (Tokyo), and ap-northeast-2 (Seoul). Fleets that created in other
-// GameLift Regions can have instances in the fleet Region only. All instances
-// deployed to fleet locations use the same configuration. To create a fleet,
-// choose the hardware for your instances, specify a game server build or Realtime
-// script to deploy, and provide a runtime configuration to direct GameLift how to
-// start and run game servers on each instance in the fleet. Set permissions for
-// inbound traffic to your game servers, and enable optional features as needed.
-// When creating a multi-location fleet, provide a list of additional remote
-// locations. If successful, this operation creates a new Fleet resource and places
-// it in NEW status, which prompts GameLift to initiate the fleet creation workflow
+// ap-northeast-1 (Tokyo), and ap-northeast-2 (Seoul). Fleets that are created in
+// other GameLift Regions can deploy instances in the fleet's home Region only. All
+// fleet instances use the same configuration regardless of location; however, you
+// can adjust capacity settings and turn auto-scaling on/off for each location. To
+// create a fleet, choose the hardware for your instances, specify a game server
+// build or Realtime script to deploy, and provide a runtime configuration to
+// direct GameLift how to start and run game servers on each instance in the fleet.
+// Set permissions for inbound traffic to your game servers, and enable optional
+// features as needed. When creating a multi-location fleet, provide a list of
+// additional remote locations. If successful, this operation creates a new Fleet
+// resource and places it in NEW status, which prompts GameLift to initiate the
+// fleet creation workflow
// (https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creation-workflow.html).
// You can track fleet creation by checking fleet status using
// DescribeFleetAttributes and DescribeFleetLocationAttributes/, or by monitoring
diff --git a/service/gamelift/api_op_CreateGameSessionQueue.go b/service/gamelift/api_op_CreateGameSessionQueue.go
index 42b7bd24525..182a6f6355b 100644
--- a/service/gamelift/api_op_CreateGameSessionQueue.go
+++ b/service/gamelift/api_op_CreateGameSessionQueue.go
@@ -27,10 +27,13 @@ import (
// FleetIQ default prioritization or provide an alternate set of priorities. To
// create a new queue, provide a name, timeout value, and a list of destinations.
// Optionally, specify a sort configuration and/or a filter, and define a set of
-// latency cap policies. If successful, a new GameSessionQueue object is returned
-// with an assigned queue ARN. New game session requests, which are submitted to
-// queue with StartGameSessionPlacement or StartMatchmaking, reference a queue's
-// name or ARN. Learn more Design a game session queue
+// latency cap policies. You can also include the ARN for an Amazon Simple
+// Notification Service (SNS) topic to receive notifications of game session
+// placement activity. Notifications using SNS or CloudWatch events is the
+// preferred way to track placement activity. If successful, a new GameSessionQueue
+// object is returned with an assigned queue ARN. New game session requests, which
+// are submitted to the queue with StartGameSessionPlacement or StartMatchmaking,
+// reference a queue's name or ARN. Learn more Design a game session queue
// (https://docs.aws.amazon.com/gamelift/latest/developerguide/queues-design.html)
// Create a game session queue
// (https://docs.aws.amazon.com/gamelift/latest/developerguide/queues-creating.html)
@@ -61,6 +64,10 @@ type CreateGameSessionQueueInput struct {
// This member is required.
Name *string
+ // Information to be added to all events that are related to this game session
+ // queue.
+ CustomEventData *string
+
// A list of fleets and/or fleet aliases that can be used to fulfill game session
// placement requests in the queue. Destinations are identified by either a fleet
// ARN or a fleet alias ARN, and are listed in order of placement preference.
@@ -71,6 +78,11 @@ type CreateGameSessionQueueInput struct {
// this parameter is not set, game sessions can be placed in any queue location.
FilterConfiguration *types.FilterConfiguration
+ // An SNS topic ARN that is set up to receive game session placement notifications.
+ // See Setting up notifications for game session placement
+ // (https://docs.aws.amazon.com/gamelift/latest/developerguide/queue-notification.html).
+ NotificationTarget *string
+
// A set of policies that act as a sliding cap on player latency. FleetIQ works to
// deliver low latency for most players in a game session. These policies ensure
// that no individual player can be placed into a game with unreasonably high
diff --git a/service/gamelift/api_op_CreateMatchmakingConfiguration.go b/service/gamelift/api_op_CreateMatchmakingConfiguration.go
index 9faeaf653b3..70545b9759e 100644
--- a/service/gamelift/api_op_CreateMatchmakingConfiguration.go
+++ b/service/gamelift/api_op_CreateMatchmakingConfiguration.go
@@ -25,8 +25,8 @@ import (
// required; and the maximum time allowed for a matchmaking attempt. When using
// FlexMatch with GameLift hosting, you also need to identify the game session
// queue to use when starting a game session for the match. In addition, you must
-// set up an Amazon Simple Notification Service (SNS) to receive matchmaking
-// notifications, and provide the topic ARN in the matchmaking configuration. An
+// set up an Amazon Simple Notification Service (SNS) topic to receive matchmaking
+// notifications. Provide the topic ARN in the matchmaking configuration. An
// alternative method, continuously polling ticket status with DescribeMatchmaking,
// is only suitable for games in development with low matchmaking usage. Learn more
// Design a FlexMatch matchmaker
@@ -153,7 +153,10 @@ type CreateMatchmakingConfigurationInput struct {
// STANDALONE, do not set this parameter.
GameSessionQueueArns []string
- // An SNS topic ARN that is set up to receive matchmaking notifications.
+ // An SNS topic ARN that is set up to receive matchmaking notifications. See
+ // Setting up notifications for matchmaking
+ // (https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-notification.html)
+ // for more information.
NotificationTarget *string
// A list of labels to assign to the new matchmaking configuration resource. Tags
diff --git a/service/gamelift/api_op_UpdateGameSessionQueue.go b/service/gamelift/api_op_UpdateGameSessionQueue.go
index 3eb8bc8b18e..b54e75bf73a 100644
--- a/service/gamelift/api_op_UpdateGameSessionQueue.go
+++ b/service/gamelift/api_op_UpdateGameSessionQueue.go
@@ -43,6 +43,10 @@ type UpdateGameSessionQueueInput struct {
// This member is required.
Name *string
+ // Information to be added to all events that are related to this game session
+ // queue.
+ CustomEventData *string
+
// A list of fleets and/or fleet aliases that can be used to fulfill game session
// placement requests in the queue. Destinations are identified by either a fleet
// ARN or a fleet alias ARN, and are listed in order of placement preference. When
@@ -55,6 +59,11 @@ type UpdateGameSessionQueueInput struct {
// remove an existing filter configuration, pass in an empty set.
FilterConfiguration *types.FilterConfiguration
+ // An SNS topic ARN that is set up to receive game session placement notifications.
+ // See Setting up notifications for game session placement
+ // (https://docs.aws.amazon.com/gamelift/latest/developerguide/queue-notification.html).
+ NotificationTarget *string
+
// A set of policies that act as a sliding cap on player latency. FleetIQ works to
// deliver low latency for most players in a game session. These policies ensure
// that no individual player can be placed into a game with unreasonably high
diff --git a/service/gamelift/deserializers.go b/service/gamelift/deserializers.go
index 54e6e659770..ebce6f95884 100644
--- a/service/gamelift/deserializers.go
+++ b/service/gamelift/deserializers.go
@@ -1135,6 +1135,9 @@ func awsAwsjson11_deserializeOpErrorCreateGameSessionQueue(response *smithyhttp.
case strings.EqualFold("LimitExceededException", errorCode):
return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
+ case strings.EqualFold("NotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
+
case strings.EqualFold("TaggingFailedException", errorCode):
return awsAwsjson11_deserializeErrorTaggingFailedException(response, errorBody)
@@ -14661,6 +14664,15 @@ func awsAwsjson11_deserializeDocumentGameSessionQueue(v **types.GameSessionQueue
for key, value := range shape {
switch key {
+ case "CustomEventData":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected QueueCustomEventData to be of type string, got %T instead", value)
+ }
+ sv.CustomEventData = ptr.String(jtv)
+ }
+
case "Destinations":
if err := awsAwsjson11_deserializeDocumentGameSessionQueueDestinationList(&sv.Destinations, value); err != nil {
return err
@@ -14689,6 +14701,15 @@ func awsAwsjson11_deserializeDocumentGameSessionQueue(v **types.GameSessionQueue
sv.Name = ptr.String(jtv)
}
+ case "NotificationTarget":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected QueueSnsArnStringModel to be of type string, got %T instead", value)
+ }
+ sv.NotificationTarget = ptr.String(jtv)
+ }
+
case "PlayerLatencyPolicies":
if err := awsAwsjson11_deserializeDocumentPlayerLatencyPolicyList(&sv.PlayerLatencyPolicies, value); err != nil {
return err
diff --git a/service/gamelift/go.mod b/service/gamelift/go.mod
index ede135129e4..04ef99c29bc 100644
--- a/service/gamelift/go.mod
+++ b/service/gamelift/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/gamelift/go.sum b/service/gamelift/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/gamelift/go.sum
+++ b/service/gamelift/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/gamelift/serializers.go b/service/gamelift/serializers.go
index cb71962c349..90721be19b1 100644
--- a/service/gamelift/serializers.go
+++ b/service/gamelift/serializers.go
@@ -5679,6 +5679,11 @@ func awsAwsjson11_serializeOpDocumentCreateGameSessionQueueInput(v *CreateGameSe
object := value.Object()
defer object.Close()
+ if v.CustomEventData != nil {
+ ok := object.Key("CustomEventData")
+ ok.String(*v.CustomEventData)
+ }
+
if v.Destinations != nil {
ok := object.Key("Destinations")
if err := awsAwsjson11_serializeDocumentGameSessionQueueDestinationList(v.Destinations, ok); err != nil {
@@ -5698,6 +5703,11 @@ func awsAwsjson11_serializeOpDocumentCreateGameSessionQueueInput(v *CreateGameSe
ok.String(*v.Name)
}
+ if v.NotificationTarget != nil {
+ ok := object.Key("NotificationTarget")
+ ok.String(*v.NotificationTarget)
+ }
+
if v.PlayerLatencyPolicies != nil {
ok := object.Key("PlayerLatencyPolicies")
if err := awsAwsjson11_serializeDocumentPlayerLatencyPolicyList(v.PlayerLatencyPolicies, ok); err != nil {
@@ -7605,6 +7615,11 @@ func awsAwsjson11_serializeOpDocumentUpdateGameSessionQueueInput(v *UpdateGameSe
object := value.Object()
defer object.Close()
+ if v.CustomEventData != nil {
+ ok := object.Key("CustomEventData")
+ ok.String(*v.CustomEventData)
+ }
+
if v.Destinations != nil {
ok := object.Key("Destinations")
if err := awsAwsjson11_serializeDocumentGameSessionQueueDestinationList(v.Destinations, ok); err != nil {
@@ -7624,6 +7639,11 @@ func awsAwsjson11_serializeOpDocumentUpdateGameSessionQueueInput(v *UpdateGameSe
ok.String(*v.Name)
}
+ if v.NotificationTarget != nil {
+ ok := object.Key("NotificationTarget")
+ ok.String(*v.NotificationTarget)
+ }
+
if v.PlayerLatencyPolicies != nil {
ok := object.Key("PlayerLatencyPolicies")
if err := awsAwsjson11_serializeDocumentPlayerLatencyPolicyList(v.PlayerLatencyPolicies, ok); err != nil {
diff --git a/service/gamelift/types/types.go b/service/gamelift/types/types.go
index dd61e7b3be1..59c85962e12 100644
--- a/service/gamelift/types/types.go
+++ b/service/gamelift/types/types.go
@@ -1143,6 +1143,10 @@ type GameSessionPlacement struct {
// UpdateGameSessionQueue
type GameSessionQueue struct {
+ // Information that is added to all events that are related to this game session
+ // queue.
+ CustomEventData *string
+
// A list of fleets and/or fleet aliases that can be used to fulfill game session
// placement requests in the queue. Destinations are identified by either a fleet
// ARN or a fleet alias ARN, and are listed in order of placement preference.
@@ -1165,6 +1169,11 @@ type GameSessionQueue struct {
// be unique within each Region.
Name *string
+ // An SNS topic ARN that is set up to receive game session placement notifications.
+ // See Setting up notifications for game session placement
+ // (https://docs.aws.amazon.com/gamelift/latest/developerguide/queue-notification.html).
+ NotificationTarget *string
+
// A set of policies that act as a sliding cap on player latency. FleetIQ works to
// deliver low latency for most players in a game session. These policies ensure
// that no individual player can be placed into a game with unreasonably high
diff --git a/service/glacier/go.mod b/service/glacier/go.mod
index 7f6b3155d9b..9ef55e53c10 100644
--- a/service/glacier/go.mod
+++ b/service/glacier/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/glacier/go.sum b/service/glacier/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/glacier/go.sum
+++ b/service/glacier/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/globalaccelerator/go.mod b/service/globalaccelerator/go.mod
index e69a49f4fdd..bf2e3aa073d 100644
--- a/service/globalaccelerator/go.mod
+++ b/service/globalaccelerator/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/globalaccelerator/go.sum b/service/globalaccelerator/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/globalaccelerator/go.sum
+++ b/service/globalaccelerator/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/glue/api_op_GetResourcePolicies.go b/service/glue/api_op_GetResourcePolicies.go
index 0e0313bf72a..6a0729e3665 100644
--- a/service/glue/api_op_GetResourcePolicies.go
+++ b/service/glue/api_op_GetResourcePolicies.go
@@ -12,11 +12,11 @@ import (
smithyhttp "github.com/aws/smithy-go/transport/http"
)
-// Retrieves the security configurations for the resource policies set on
-// individual resources, and also the account-level policy. This operation also
-// returns the Data Catalog resource policy. However, if you enabled metadata
-// encryption in Data Catalog settings, and you do not have permission on the AWS
-// KMS key, the operation can't return the Data Catalog resource policy.
+// Retrieves the resource policies set on individual resources by AWS Resource
+// Access Manager during cross-account permission grants. Also retrieves the Data
+// Catalog resource policy. If you enabled metadata encryption in Data Catalog
+// settings, and you do not have permission on the AWS KMS key, the operation can't
+// return the Data Catalog resource policy.
func (c *Client) GetResourcePolicies(ctx context.Context, params *GetResourcePoliciesInput, optFns ...func(*Options)) (*GetResourcePoliciesOutput, error) {
if params == nil {
params = &GetResourcePoliciesInput{}
diff --git a/service/glue/api_op_GetResourcePolicy.go b/service/glue/api_op_GetResourcePolicy.go
index 01dc94661d0..afdfbf93ab7 100644
--- a/service/glue/api_op_GetResourcePolicy.go
+++ b/service/glue/api_op_GetResourcePolicy.go
@@ -29,10 +29,11 @@ func (c *Client) GetResourcePolicy(ctx context.Context, params *GetResourcePolic
type GetResourcePolicyInput struct {
- // The ARN of the AWS Glue resource for the resource policy to be retrieved. For
- // more information about AWS Glue resource ARNs, see the AWS Glue ARN string
- // pattern
- // (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-common.html#aws-glue-api-regex-aws-glue-arn-id)
+ // The ARN of the AWS Glue resource for which to retrieve the resource policy. If
+ // not supplied, the Data Catalog resource policy is returned. Use
+ // GetResourcePolicies to view all existing resource policies. For more information
+ // see Specifying AWS Glue Resource ARNs
+ // (https://docs.aws.amazon.com/glue/latest/dg/glue-specifying-resource-arns.html).
ResourceArn *string
}
diff --git a/service/glue/api_op_PutResourcePolicy.go b/service/glue/api_op_PutResourcePolicy.go
index f656905f6f9..d8146aea404 100644
--- a/service/glue/api_op_PutResourcePolicy.go
+++ b/service/glue/api_op_PutResourcePolicy.go
@@ -34,17 +34,23 @@ type PutResourcePolicyInput struct {
// This member is required.
PolicyInJson *string
- // Allows you to specify if you want to use both resource-level and
- // account/catalog-level resource policies. A resource-level policy is a policy
- // attached to an individual resource such as a database or a table. The default
- // value of NO indicates that resource-level policies cannot co-exist with an
- // account-level policy. A value of YES means the use of both resource-level and
- // account/catalog-level resource policies is allowed.
+ // If 'TRUE', indicates that you are using both methods to grant cross-account
+ // access to Data Catalog resources:
+ //
+ // * By directly updating the resource policy
+ // with PutResourePolicy
+ //
+ // * By using the Grant permissions command on the AWS
+ // Management Console.
+ //
+ // Must be set to 'TRUE' if you have already used the
+ // Management Console to grant cross-account access, otherwise the call fails.
+ // Default is 'FALSE'.
EnableHybrid types.EnableHybridValues
// A value of MUST_EXIST is used to update a policy. A value of NOT_EXIST is used
// to create a new policy. If a value of NONE or a null value is used, the call
- // will not depend on the existence of a policy.
+ // does not depend on the existence of a policy.
PolicyExistsCondition types.ExistCondition
// The hash value returned when the previous policy was set using
@@ -52,9 +58,7 @@ type PutResourcePolicyInput struct {
// policy. Do not use this parameter if no previous policy has been set.
PolicyHashCondition *string
- // The ARN of the AWS Glue resource for the resource policy to be set. For more
- // information about AWS Glue resource ARNs, see the AWS Glue ARN string pattern
- // (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-common.html#aws-glue-api-regex-aws-glue-arn-id)
+ // Do not use. For internal use only.
ResourceArn *string
}
diff --git a/service/glue/deserializers.go b/service/glue/deserializers.go
index 1a05bc1ec06..c89d87c45b4 100644
--- a/service/glue/deserializers.go
+++ b/service/glue/deserializers.go
@@ -27295,6 +27295,11 @@ func awsAwsjson11_deserializeDocumentMetadataInfo(v **types.MetadataInfo, value
sv.MetadataValue = ptr.String(jtv)
}
+ case "OtherMetadataValueList":
+ if err := awsAwsjson11_deserializeDocumentOtherMetadataValueList(&sv.OtherMetadataValueList, value); err != nil {
+ return err
+ }
+
default:
_, _ = key, value
@@ -28156,6 +28161,89 @@ func awsAwsjson11_deserializeDocumentOrderList(v *[]types.Order, value interface
return nil
}
+func awsAwsjson11_deserializeDocumentOtherMetadataValueList(v *[]types.OtherMetadataValueListItem, 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.OtherMetadataValueListItem
+ if *v == nil {
+ cv = []types.OtherMetadataValueListItem{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.OtherMetadataValueListItem
+ destAddr := &col
+ if err := awsAwsjson11_deserializeDocumentOtherMetadataValueListItem(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentOtherMetadataValueListItem(v **types.OtherMetadataValueListItem, 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.OtherMetadataValueListItem
+ if *v == nil {
+ sv = &types.OtherMetadataValueListItem{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CreatedTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected CreatedTimestamp to be of type string, got %T instead", value)
+ }
+ sv.CreatedTime = ptr.String(jtv)
+ }
+
+ case "MetadataValue":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected MetadataValueString to be of type string, got %T instead", value)
+ }
+ sv.MetadataValue = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeDocumentParametersMap(v *map[string]string, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
diff --git a/service/glue/go.mod b/service/glue/go.mod
index 577a01bbaed..69cef1aa1cd 100644
--- a/service/glue/go.mod
+++ b/service/glue/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/glue/go.sum b/service/glue/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/glue/go.sum
+++ b/service/glue/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/glue/types/types.go b/service/glue/types/types.go
index 9195cffe75f..63c8a0bc290 100644
--- a/service/glue/types/types.go
+++ b/service/glue/types/types.go
@@ -2120,6 +2120,9 @@ type MetadataInfo struct {
// The metadata key’s corresponding value.
MetadataValue *string
+
+ // Other metadata belonging to the same metadata key.
+ OtherMetadataValueList []OtherMetadataValueListItem
}
// A structure containing a key value pair for metadata.
@@ -2357,6 +2360,18 @@ type Order struct {
SortOrder int32
}
+// A structure containing other metadata for a schema version belonging to the same
+// metadata key.
+type OtherMetadataValueListItem struct {
+
+ // The time at which the entry was created.
+ CreatedTime *string
+
+ // The metadata key’s corresponding value for the other metadata belonging to the
+ // same metadata key.
+ MetadataValue *string
+}
+
// Represents a slice of table data.
type Partition struct {
diff --git a/service/greengrass/api_op_CreateGroup.go b/service/greengrass/api_op_CreateGroup.go
index df986f43d5a..19553530875 100644
--- a/service/greengrass/api_op_CreateGroup.go
+++ b/service/greengrass/api_op_CreateGroup.go
@@ -32,15 +32,17 @@ func (c *Client) CreateGroup(ctx context.Context, params *CreateGroupInput, optF
type CreateGroupInput struct {
+ // The name of the group.
+ //
+ // This member is required.
+ Name *string
+
// A client token used to correlate requests and responses.
AmznClientToken *string
// Information about the initial version of the group.
InitialVersion *types.GroupVersion
- // The name of the group.
- Name *string
-
// Tag(s) to add to the new resource.
Tags map[string]string
}
@@ -117,6 +119,9 @@ func addOperationCreateGroupMiddlewares(stack *middleware.Stack, options Options
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
return err
}
+ if err = addOpCreateGroupValidationMiddleware(stack); err != nil {
+ return err
+ }
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateGroup(options.Region), middleware.Before); err != nil {
return err
}
diff --git a/service/greengrass/go.mod b/service/greengrass/go.mod
index bafe39c33b6..4b33ded6b20 100644
--- a/service/greengrass/go.mod
+++ b/service/greengrass/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/greengrass/go.sum b/service/greengrass/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/greengrass/go.sum
+++ b/service/greengrass/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/greengrass/validators.go b/service/greengrass/validators.go
index eb1b0a27849..288852be5f0 100644
--- a/service/greengrass/validators.go
+++ b/service/greengrass/validators.go
@@ -250,6 +250,26 @@ func (m *validateOpCreateGroupCertificateAuthority) HandleInitialize(ctx context
return next.HandleInitialize(ctx, in)
}
+type validateOpCreateGroup struct {
+}
+
+func (*validateOpCreateGroup) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpCreateGroup) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*CreateGroupInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpCreateGroupInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpCreateGroupVersion struct {
}
@@ -1658,6 +1678,10 @@ func addOpCreateGroupCertificateAuthorityValidationMiddleware(stack *middleware.
return stack.Initialize.Add(&validateOpCreateGroupCertificateAuthority{}, middleware.After)
}
+func addOpCreateGroupValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpCreateGroup{}, middleware.After)
+}
+
func addOpCreateGroupVersionValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpCreateGroupVersion{}, middleware.After)
}
@@ -2690,6 +2714,21 @@ func validateOpCreateGroupCertificateAuthorityInput(v *CreateGroupCertificateAut
}
}
+func validateOpCreateGroupInput(v *CreateGroupInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CreateGroupInput"}
+ if v.Name == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Name"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpCreateGroupVersionInput(v *CreateGroupVersionInput) error {
if v == nil {
return nil
diff --git a/service/greengrassv2/go.mod b/service/greengrassv2/go.mod
index 0ab0e222ebc..ebcaf57bd55 100644
--- a/service/greengrassv2/go.mod
+++ b/service/greengrassv2/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/greengrassv2/go.sum b/service/greengrassv2/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/greengrassv2/go.sum
+++ b/service/greengrassv2/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/groundstation/go.mod b/service/groundstation/go.mod
index 4bfc12f6584..c5799747f79 100644
--- a/service/groundstation/go.mod
+++ b/service/groundstation/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/groundstation/go.sum b/service/groundstation/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/groundstation/go.sum
+++ b/service/groundstation/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/groundstation/internal/endpoints/endpoints.go b/service/groundstation/internal/endpoints/endpoints.go
index 635a93d56d3..c932a500060 100644
--- a/service/groundstation/internal/endpoints/endpoints.go
+++ b/service/groundstation/internal/endpoints/endpoints.go
@@ -65,8 +65,15 @@ var defaultPartitions = endpoints.Partitions{
Endpoints: endpoints.Endpoints{
"af-south-1": endpoints.Endpoint{},
"ap-southeast-2": endpoints.Endpoint{},
+ "eu-central-1": endpoints.Endpoint{},
"eu-north-1": endpoints.Endpoint{},
"eu-west-1": endpoints.Endpoint{},
+ "fips-us-east-1": endpoints.Endpoint{
+ Hostname: "groundstation-fips.us-east-1.amazonaws.com",
+ CredentialScope: endpoints.CredentialScope{
+ Region: "us-east-1",
+ },
+ },
"fips-us-east-2": endpoints.Endpoint{
Hostname: "groundstation-fips.us-east-2.amazonaws.com",
CredentialScope: endpoints.CredentialScope{
@@ -80,6 +87,7 @@ var defaultPartitions = endpoints.Partitions{
},
},
"me-south-1": endpoints.Endpoint{},
+ "us-east-1": endpoints.Endpoint{},
"us-east-2": endpoints.Endpoint{},
"us-west-2": endpoints.Endpoint{},
},
diff --git a/service/guardduty/go.mod b/service/guardduty/go.mod
index a762cba4a68..79ef1f90bd7 100644
--- a/service/guardduty/go.mod
+++ b/service/guardduty/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/guardduty/go.sum b/service/guardduty/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/guardduty/go.sum
+++ b/service/guardduty/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/health/go.mod b/service/health/go.mod
index c4226cb788d..0f4fcb054f5 100644
--- a/service/health/go.mod
+++ b/service/health/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/health/go.sum b/service/health/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/health/go.sum
+++ b/service/health/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/healthlake/go.mod b/service/healthlake/go.mod
index c64200134b7..59869d2a41d 100644
--- a/service/healthlake/go.mod
+++ b/service/healthlake/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/healthlake/go.sum b/service/healthlake/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/healthlake/go.sum
+++ b/service/healthlake/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/honeycode/go.mod b/service/honeycode/go.mod
index 3acc9bc858b..b0cd1e78df1 100644
--- a/service/honeycode/go.mod
+++ b/service/honeycode/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/honeycode/go.sum b/service/honeycode/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/honeycode/go.sum
+++ b/service/honeycode/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/iam/api_op_CreateInstanceProfile.go b/service/iam/api_op_CreateInstanceProfile.go
index d2823aeffec..bf05fe5cb66 100644
--- a/service/iam/api_op_CreateInstanceProfile.go
+++ b/service/iam/api_op_CreateInstanceProfile.go
@@ -12,10 +12,12 @@ import (
)
// Creates a new instance profile. For information about instance profiles, see
-// About instance profiles
-// (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entities).
-// For information about the number of instance profiles you can create, see IAM
-// object quotas
+// Using roles for applications on Amazon EC2
+// (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html)
+// in the IAM User Guide, and Instance profiles
+// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html#ec2-instance-profile)
+// in the Amazon EC2 User Guide. For information about the number of instance
+// profiles you can create, see IAM object quotas
// (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in
// the IAM User Guide.
func (c *Client) CreateInstanceProfile(ctx context.Context, params *CreateInstanceProfileInput, optFns ...func(*Options)) (*CreateInstanceProfileOutput, error) {
diff --git a/service/iam/deserializers.go b/service/iam/deserializers.go
index 76fe6f2e46f..a8abece08c2 100644
--- a/service/iam/deserializers.go
+++ b/service/iam/deserializers.go
@@ -4975,6 +4975,9 @@ func awsAwsquery_deserializeOpErrorGetAccessKeyLastUsed(response *smithyhttp.Res
}
errorBody.Seek(0, io.SeekStart)
switch {
+ case strings.EqualFold("NoSuchEntityException", errorCode):
+ return awsAwsquery_deserializeErrorNoSuchEntityException(response, errorBody)
+
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
diff --git a/service/iam/go.mod b/service/iam/go.mod
index a17fdb97ded..340d1d75b66 100644
--- a/service/iam/go.mod
+++ b/service/iam/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/iam/go.sum b/service/iam/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/iam/go.sum
+++ b/service/iam/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/identitystore/go.mod b/service/identitystore/go.mod
index 3a828bf665b..d3e3f8fda0a 100644
--- a/service/identitystore/go.mod
+++ b/service/identitystore/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/identitystore/go.sum b/service/identitystore/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/identitystore/go.sum
+++ b/service/identitystore/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/imagebuilder/go.mod b/service/imagebuilder/go.mod
index 676c126584e..9420df39121 100644
--- a/service/imagebuilder/go.mod
+++ b/service/imagebuilder/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/imagebuilder/go.sum b/service/imagebuilder/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/imagebuilder/go.sum
+++ b/service/imagebuilder/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/inspector/go.mod b/service/inspector/go.mod
index caef254936e..2bbb0206da4 100644
--- a/service/inspector/go.mod
+++ b/service/inspector/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/inspector/go.sum b/service/inspector/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/inspector/go.sum
+++ b/service/inspector/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/internal/accept-encoding/go.mod b/service/internal/accept-encoding/go.mod
index fb67aab7016..f73d30ebcf4 100644
--- a/service/internal/accept-encoding/go.mod
+++ b/service/internal/accept-encoding/go.mod
@@ -2,4 +2,4 @@ module github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding
go 1.15
-require github.com/aws/smithy-go v1.2.0
+require github.com/aws/smithy-go v1.3.0
diff --git a/service/internal/accept-encoding/go.sum b/service/internal/accept-encoding/go.sum
index 74b9706439a..fc00f86caf2 100644
--- a/service/internal/accept-encoding/go.sum
+++ b/service/internal/accept-encoding/go.sum
@@ -1,5 +1,5 @@
-github.com/aws/smithy-go v1.2.0 h1:0PoGBWXkXDIyVdPaZW9gMhaGzj3UOAgTdiVoHuuZAFA=
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
diff --git a/service/internal/benchmark/go.mod b/service/internal/benchmark/go.mod
index fdc0b011353..ac2f58ac65b 100644
--- a/service/internal/benchmark/go.mod
+++ b/service/internal/benchmark/go.mod
@@ -7,7 +7,7 @@ require (
github.com/aws/aws-sdk-go-v2 v1.3.0
github.com/aws/aws-sdk-go-v2/service/dynamodb v1.2.0
github.com/aws/aws-sdk-go-v2/service/lexruntimeservice v1.2.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../../
diff --git a/service/internal/benchmark/go.sum b/service/internal/benchmark/go.sum
index 4420862c63c..935ad56cd6e 100644
--- a/service/internal/benchmark/go.sum
+++ b/service/internal/benchmark/go.sum
@@ -1,8 +1,7 @@
github.com/aws/aws-sdk-go v1.34.33 h1:ymkFm0rNPEOlgjyX3ojEd4zqzW6kGICBkqWs7LqgHtU=
github.com/aws/aws-sdk-go v1.34.33/go.mod h1:H7NKnBqNVzoTJpGfLrQkkD+ytBA93eiDYi/+8rV9s48=
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
diff --git a/service/internal/integrationtest/go.mod b/service/internal/integrationtest/go.mod
index 54e1768be60..ff9980a7d76 100644
--- a/service/internal/integrationtest/go.mod
+++ b/service/internal/integrationtest/go.mod
@@ -84,7 +84,7 @@ require (
github.com/aws/aws-sdk-go-v2/service/wafregional v1.2.0
github.com/aws/aws-sdk-go-v2/service/wafv2 v1.2.0
github.com/aws/aws-sdk-go-v2/service/workspaces v1.2.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/google/go-cmp v0.5.4
)
diff --git a/service/internal/integrationtest/go.sum b/service/internal/integrationtest/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/internal/integrationtest/go.sum
+++ b/service/internal/integrationtest/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/internal/presigned-url/go.mod b/service/internal/presigned-url/go.mod
index 223fca3d550..ea9a02ea93a 100644
--- a/service/internal/presigned-url/go.mod
+++ b/service/internal/presigned-url/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.0
+ github.com/aws/smithy-go v1.3.0
github.com/google/go-cmp v0.5.4
)
diff --git a/service/internal/presigned-url/go.sum b/service/internal/presigned-url/go.sum
index c3783ae6011..3aa8f05f35e 100644
--- a/service/internal/presigned-url/go.sum
+++ b/service/internal/presigned-url/go.sum
@@ -1,5 +1,5 @@
-github.com/aws/smithy-go v1.2.0 h1:0PoGBWXkXDIyVdPaZW9gMhaGzj3UOAgTdiVoHuuZAFA=
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/internal/s3shared/go.mod b/service/internal/s3shared/go.mod
index 71070bcf730..913737c1513 100644
--- a/service/internal/s3shared/go.mod
+++ b/service/internal/s3shared/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.0
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../../
diff --git a/service/internal/s3shared/go.sum b/service/internal/s3shared/go.sum
index c3783ae6011..3aa8f05f35e 100644
--- a/service/internal/s3shared/go.sum
+++ b/service/internal/s3shared/go.sum
@@ -1,5 +1,5 @@
-github.com/aws/smithy-go v1.2.0 h1:0PoGBWXkXDIyVdPaZW9gMhaGzj3UOAgTdiVoHuuZAFA=
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/iot/api_op_ListThings.go b/service/iot/api_op_ListThings.go
index c53e01138bb..1391c3e7908 100644
--- a/service/iot/api_op_ListThings.go
+++ b/service/iot/api_op_ListThings.go
@@ -52,6 +52,12 @@ type ListThingsInput struct {
// The name of the thing type used to search for things.
ThingTypeName *string
+
+ // When true, the action returns the thing resources with attribute values that
+ // start with the attributeValue provided. When false, or not present, the action
+ // returns only the thing resources with attribute values that match the entire
+ // attributeValue provided.
+ UsePrefixAttributeValue bool
}
// The output from the ListThings operation.
diff --git a/service/iot/go.mod b/service/iot/go.mod
index a5b4befa22e..aca56fc6b30 100644
--- a/service/iot/go.mod
+++ b/service/iot/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/iot/go.sum b/service/iot/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/iot/go.sum
+++ b/service/iot/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/iot/serializers.go b/service/iot/serializers.go
index ef8effd9297..a9e5dc26e50 100644
--- a/service/iot/serializers.go
+++ b/service/iot/serializers.go
@@ -11509,6 +11509,10 @@ func awsRestjson1_serializeOpHttpBindingsListThingsInput(v *ListThingsInput, enc
encoder.SetQuery("thingTypeName").String(*v.ThingTypeName)
}
+ if v.UsePrefixAttributeValue {
+ encoder.SetQuery("usePrefixAttributeValue").Boolean(v.UsePrefixAttributeValue)
+ }
+
return nil
}
diff --git a/service/iot1clickdevicesservice/go.mod b/service/iot1clickdevicesservice/go.mod
index f5e0d0cefb0..03cdc8a7a92 100644
--- a/service/iot1clickdevicesservice/go.mod
+++ b/service/iot1clickdevicesservice/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/iot1clickdevicesservice/go.sum b/service/iot1clickdevicesservice/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/iot1clickdevicesservice/go.sum
+++ b/service/iot1clickdevicesservice/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/iot1clickprojects/go.mod b/service/iot1clickprojects/go.mod
index 73ec615ac9e..120736c0fb2 100644
--- a/service/iot1clickprojects/go.mod
+++ b/service/iot1clickprojects/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/iot1clickprojects/go.sum b/service/iot1clickprojects/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/iot1clickprojects/go.sum
+++ b/service/iot1clickprojects/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/iotanalytics/go.mod b/service/iotanalytics/go.mod
index bc8570bbc69..ccc614203a1 100644
--- a/service/iotanalytics/go.mod
+++ b/service/iotanalytics/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/iotanalytics/go.sum b/service/iotanalytics/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/iotanalytics/go.sum
+++ b/service/iotanalytics/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/iotdataplane/go.mod b/service/iotdataplane/go.mod
index c7cdf1f1e03..1ce2be51fbb 100644
--- a/service/iotdataplane/go.mod
+++ b/service/iotdataplane/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/iotdataplane/go.sum b/service/iotdataplane/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/iotdataplane/go.sum
+++ b/service/iotdataplane/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/iotdeviceadvisor/go.mod b/service/iotdeviceadvisor/go.mod
index 3d12fd84890..16644749938 100644
--- a/service/iotdeviceadvisor/go.mod
+++ b/service/iotdeviceadvisor/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/iotdeviceadvisor/go.sum b/service/iotdeviceadvisor/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/iotdeviceadvisor/go.sum
+++ b/service/iotdeviceadvisor/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/iotevents/go.mod b/service/iotevents/go.mod
index 4bf075f27f6..0a4f757407c 100644
--- a/service/iotevents/go.mod
+++ b/service/iotevents/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/iotevents/go.sum b/service/iotevents/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/iotevents/go.sum
+++ b/service/iotevents/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/ioteventsdata/go.mod b/service/ioteventsdata/go.mod
index d418aa47914..cf95ed9bc3d 100644
--- a/service/ioteventsdata/go.mod
+++ b/service/ioteventsdata/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/ioteventsdata/go.sum b/service/ioteventsdata/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/ioteventsdata/go.sum
+++ b/service/ioteventsdata/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/iotfleethub/go.mod b/service/iotfleethub/go.mod
index 4687e3d95b0..a2a9191d72f 100644
--- a/service/iotfleethub/go.mod
+++ b/service/iotfleethub/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/iotfleethub/go.sum b/service/iotfleethub/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/iotfleethub/go.sum
+++ b/service/iotfleethub/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/iotjobsdataplane/go.mod b/service/iotjobsdataplane/go.mod
index d3e7e92e308..32e11abf1ab 100644
--- a/service/iotjobsdataplane/go.mod
+++ b/service/iotjobsdataplane/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/iotjobsdataplane/go.sum b/service/iotjobsdataplane/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/iotjobsdataplane/go.sum
+++ b/service/iotjobsdataplane/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/iotsecuretunneling/go.mod b/service/iotsecuretunneling/go.mod
index b35904b399a..44e8fdd3705 100644
--- a/service/iotsecuretunneling/go.mod
+++ b/service/iotsecuretunneling/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/iotsecuretunneling/go.sum b/service/iotsecuretunneling/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/iotsecuretunneling/go.sum
+++ b/service/iotsecuretunneling/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/iotsitewise/go.mod b/service/iotsitewise/go.mod
index e7c9bbfd4f9..21fd0e8eb51 100644
--- a/service/iotsitewise/go.mod
+++ b/service/iotsitewise/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/iotsitewise/go.sum b/service/iotsitewise/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/iotsitewise/go.sum
+++ b/service/iotsitewise/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/iotthingsgraph/go.mod b/service/iotthingsgraph/go.mod
index 67f63b1800e..fc8c8868870 100644
--- a/service/iotthingsgraph/go.mod
+++ b/service/iotthingsgraph/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/iotthingsgraph/go.sum b/service/iotthingsgraph/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/iotthingsgraph/go.sum
+++ b/service/iotthingsgraph/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/iotwireless/api_op_AssociateAwsAccountWithPartnerAccount.go b/service/iotwireless/api_op_AssociateAwsAccountWithPartnerAccount.go
index 4647a55bce1..a1771877319 100644
--- a/service/iotwireless/api_op_AssociateAwsAccountWithPartnerAccount.go
+++ b/service/iotwireless/api_op_AssociateAwsAccountWithPartnerAccount.go
@@ -41,8 +41,8 @@ type AssociateAwsAccountWithPartnerAccountInput struct {
// client request.
ClientRequestToken *string
- // The tags attached to the specified resource. Tags are metadata that can be used
- // to manage a resource
+ // The tags to attach to the specified resource. Tags are metadata that you can use
+ // to manage a resource.
Tags []types.Tag
}
diff --git a/service/iotwireless/api_op_CreateDestination.go b/service/iotwireless/api_op_CreateDestination.go
index 4e7f95587c6..16001b38e50 100644
--- a/service/iotwireless/api_op_CreateDestination.go
+++ b/service/iotwireless/api_op_CreateDestination.go
@@ -59,7 +59,7 @@ type CreateDestinationInput struct {
// The description of the new resource.
Description *string
- // The tags to attach to the new destination. Tags are metadata that can be used to
+ // The tags to attach to the new destination. Tags are metadata that you can use to
// manage a resource.
Tags []types.Tag
}
diff --git a/service/iotwireless/api_op_CreateDeviceProfile.go b/service/iotwireless/api_op_CreateDeviceProfile.go
index c998d970ca9..42b1ff0eb45 100644
--- a/service/iotwireless/api_op_CreateDeviceProfile.go
+++ b/service/iotwireless/api_op_CreateDeviceProfile.go
@@ -42,7 +42,7 @@ type CreateDeviceProfileInput struct {
// The name of the new resource.
Name *string
- // The tags to attach to the new device profile Tags are metadata that can be used
+ // The tags to attach to the new device profile. Tags are metadata that you can use
// to manage a resource.
Tags []types.Tag
}
diff --git a/service/iotwireless/api_op_CreateServiceProfile.go b/service/iotwireless/api_op_CreateServiceProfile.go
index 5a16dfeba18..7599b259aa1 100644
--- a/service/iotwireless/api_op_CreateServiceProfile.go
+++ b/service/iotwireless/api_op_CreateServiceProfile.go
@@ -42,8 +42,8 @@ type CreateServiceProfileInput struct {
// The name of the new resource.
Name *string
- // The tags to attach to the new service profile. Tags are metadata that can be
- // used to manage a resource.
+ // The tags to attach to the new service profile. Tags are metadata that you can
+ // use to manage a resource.
Tags []types.Tag
}
diff --git a/service/iotwireless/api_op_CreateWirelessDevice.go b/service/iotwireless/api_op_CreateWirelessDevice.go
index 4cc30b9a67a..5e7745fbbd7 100644
--- a/service/iotwireless/api_op_CreateWirelessDevice.go
+++ b/service/iotwireless/api_op_CreateWirelessDevice.go
@@ -54,6 +54,10 @@ type CreateWirelessDeviceInput struct {
// The name of the new resource.
Name *string
+
+ // The tags to attach to the new wireless device. Tags are metadata that you can
+ // use to manage a resource.
+ Tags []types.Tag
}
type CreateWirelessDeviceOutput struct {
diff --git a/service/iotwireless/api_op_CreateWirelessGateway.go b/service/iotwireless/api_op_CreateWirelessGateway.go
index 4670ac7dff4..17adb29eadd 100644
--- a/service/iotwireless/api_op_CreateWirelessGateway.go
+++ b/service/iotwireless/api_op_CreateWirelessGateway.go
@@ -47,8 +47,8 @@ type CreateWirelessGatewayInput struct {
// The name of the new resource.
Name *string
- // The tags to attach to the new wireless gateway. Tags are metadata that can be
- // used to manage a resource.
+ // The tags to attach to the new wireless gateway. Tags are metadata that you can
+ // use to manage a resource.
Tags []types.Tag
}
diff --git a/service/iotwireless/api_op_CreateWirelessGatewayTaskDefinition.go b/service/iotwireless/api_op_CreateWirelessGatewayTaskDefinition.go
index 55c476c5d70..01647312334 100644
--- a/service/iotwireless/api_op_CreateWirelessGatewayTaskDefinition.go
+++ b/service/iotwireless/api_op_CreateWirelessGatewayTaskDefinition.go
@@ -46,8 +46,8 @@ type CreateWirelessGatewayTaskDefinitionInput struct {
// The name of the new resource.
Name *string
- // The tags attached to the specified resource. Tags are metadata that can be used
- // to manage a resource
+ // The tags to attach to the specified resource. Tags are metadata that you can use
+ // to manage a resource.
Tags []types.Tag
// Information about the gateways to update.
diff --git a/service/iotwireless/api_op_GetWirelessDevice.go b/service/iotwireless/api_op_GetWirelessDevice.go
index 798c8cc7078..5f3e383b763 100644
--- a/service/iotwireless/api_op_GetWirelessDevice.go
+++ b/service/iotwireless/api_op_GetWirelessDevice.go
@@ -60,6 +60,9 @@ type GetWirelessDeviceOutput struct {
// The name of the resource.
Name *string
+ // Sidewalk device object.
+ Sidewalk *types.SidewalkDevice
+
// The ARN of the thing associated with the wireless device.
ThingArn *string
diff --git a/service/iotwireless/api_op_GetWirelessDeviceStatistics.go b/service/iotwireless/api_op_GetWirelessDeviceStatistics.go
index dc36490786a..b70e1aab45c 100644
--- a/service/iotwireless/api_op_GetWirelessDeviceStatistics.go
+++ b/service/iotwireless/api_op_GetWirelessDeviceStatistics.go
@@ -43,6 +43,9 @@ type GetWirelessDeviceStatisticsOutput struct {
// Information about the wireless device's operations.
LoRaWAN *types.LoRaWANDeviceMetadata
+ // MetaData for Sidewalk device.
+ Sidewalk *types.SidewalkDeviceMetadata
+
// The ID of the wireless device.
WirelessDeviceId *string
diff --git a/service/iotwireless/api_op_GetWirelessGatewayStatistics.go b/service/iotwireless/api_op_GetWirelessGatewayStatistics.go
index 8ec11cf1dd9..6dfa0d9ceff 100644
--- a/service/iotwireless/api_op_GetWirelessGatewayStatistics.go
+++ b/service/iotwireless/api_op_GetWirelessGatewayStatistics.go
@@ -6,6 +6,7 @@ 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"
)
@@ -36,6 +37,9 @@ type GetWirelessGatewayStatisticsInput struct {
type GetWirelessGatewayStatisticsOutput struct {
+ // The connection status of the wireless gateway.
+ ConnectionStatus types.ConnectionStatus
+
// The date and time when the most recent uplink was received.
LastUplinkReceivedAt *string
diff --git a/service/iotwireless/api_op_ListTagsForResource.go b/service/iotwireless/api_op_ListTagsForResource.go
index 882e51ac3dc..7ba660a8c7e 100644
--- a/service/iotwireless/api_op_ListTagsForResource.go
+++ b/service/iotwireless/api_op_ListTagsForResource.go
@@ -29,7 +29,7 @@ func (c *Client) ListTagsForResource(ctx context.Context, params *ListTagsForRes
type ListTagsForResourceInput struct {
- // The ARN of the resource for which to list tags.
+ // The ARN of the resource for which you want to list tags.
//
// This member is required.
ResourceArn *string
@@ -37,8 +37,8 @@ type ListTagsForResourceInput struct {
type ListTagsForResourceOutput struct {
- // The tags attached to the specified resource. Tags are metadata that can be used
- // to manage a resource
+ // The tags to attach to the specified resource. Tags are metadata that you can use
+ // to manage a resource.
Tags []types.Tag
// Metadata pertaining to the operation's result.
diff --git a/service/iotwireless/api_op_TagResource.go b/service/iotwireless/api_op_TagResource.go
index 90e293705cb..e1986289844 100644
--- a/service/iotwireless/api_op_TagResource.go
+++ b/service/iotwireless/api_op_TagResource.go
@@ -34,8 +34,8 @@ type TagResourceInput struct {
// This member is required.
ResourceArn *string
- // Adds to or modifies the tags of the given resource. Tags are metadata that can
- // be used to manage a resource.
+ // Adds to or modifies the tags of the given resource. Tags are metadata that you
+ // can use to manage a resource.
//
// This member is required.
Tags []types.Tag
diff --git a/service/iotwireless/deserializers.go b/service/iotwireless/deserializers.go
index dcb64811b49..9dab30f2857 100644
--- a/service/iotwireless/deserializers.go
+++ b/service/iotwireless/deserializers.go
@@ -3942,6 +3942,11 @@ func awsRestjson1_deserializeOpDocumentGetWirelessDeviceOutput(v **GetWirelessDe
sv.Name = ptr.String(jtv)
}
+ case "Sidewalk":
+ if err := awsRestjson1_deserializeDocumentSidewalkDevice(&sv.Sidewalk, value); err != nil {
+ return err
+ }
+
case "ThingArn":
if value != nil {
jtv, ok := value.(string)
@@ -4137,6 +4142,11 @@ func awsRestjson1_deserializeOpDocumentGetWirelessDeviceStatisticsOutput(v **Get
return err
}
+ case "Sidewalk":
+ if err := awsRestjson1_deserializeDocumentSidewalkDeviceMetadata(&sv.Sidewalk, value); err != nil {
+ return err
+ }
+
case "WirelessDeviceId":
if value != nil {
jtv, ok := value.(string)
@@ -4844,6 +4854,15 @@ func awsRestjson1_deserializeOpDocumentGetWirelessGatewayStatisticsOutput(v **Ge
for key, value := range shape {
switch key {
+ case "ConnectionStatus":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ConnectionStatus to be of type string, got %T instead", value)
+ }
+ sv.ConnectionStatus = types.ConnectionStatus(jtv)
+ }
+
case "LastUplinkReceivedAt":
if value != nil {
jtv, ok := value.(string)
@@ -7842,6 +7861,55 @@ func awsRestjson1_deserializeDocumentAccessDeniedException(v **types.AccessDenie
return nil
}
+func awsRestjson1_deserializeDocumentCertificateList(v **types.CertificateList, 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.CertificateList
+ if *v == nil {
+ sv = &types.CertificateList{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "SigningAlg":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected SigningAlg to be of type string, got %T instead", value)
+ }
+ sv.SigningAlg = types.SigningAlg(jtv)
+ }
+
+ case "Value":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected CertificateValue to be of type string, got %T instead", value)
+ }
+ sv.Value = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsRestjson1_deserializeDocumentConflictException(v **types.ConflictException, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -8019,6 +8087,40 @@ func awsRestjson1_deserializeDocumentDestinations(v **types.Destinations, value
return nil
}
+func awsRestjson1_deserializeDocumentDeviceCertificateList(v *[]types.CertificateList, 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.CertificateList
+ if *v == nil {
+ cv = []types.CertificateList{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.CertificateList
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentCertificateList(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
func awsRestjson1_deserializeDocumentDeviceProfile(v **types.DeviceProfile, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -9743,6 +9845,131 @@ func awsRestjson1_deserializeDocumentSidewalkAccountList(v *[]types.SidewalkAcco
return nil
}
+func awsRestjson1_deserializeDocumentSidewalkDevice(v **types.SidewalkDevice, 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.SidewalkDevice
+ if *v == nil {
+ sv = &types.SidewalkDevice{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DeviceCertificates":
+ if err := awsRestjson1_deserializeDocumentDeviceCertificateList(&sv.DeviceCertificates, value); err != nil {
+ return err
+ }
+
+ case "SidewalkId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected SidewalkId to be of type string, got %T instead", value)
+ }
+ sv.SidewalkId = ptr.String(jtv)
+ }
+
+ case "SidewalkManufacturingSn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected SidewalkManufacturingSn to be of type string, got %T instead", value)
+ }
+ sv.SidewalkManufacturingSn = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentSidewalkDeviceMetadata(v **types.SidewalkDeviceMetadata, 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.SidewalkDeviceMetadata
+ if *v == nil {
+ sv = &types.SidewalkDeviceMetadata{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "BatteryLevel":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected BatteryLevel to be of type string, got %T instead", value)
+ }
+ sv.BatteryLevel = types.BatteryLevel(jtv)
+ }
+
+ case "DeviceState":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected DeviceState to be of type string, got %T instead", value)
+ }
+ sv.DeviceState = types.DeviceState(jtv)
+ }
+
+ case "Event":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Event to be of type string, got %T instead", value)
+ }
+ sv.Event = types.Event(jtv)
+ }
+
+ case "Rssi":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Integer to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.Rssi = ptr.Int32(int32(i64))
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsRestjson1_deserializeDocumentSidewalkListDevice(v **types.SidewalkListDevice, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -9774,6 +10001,29 @@ func awsRestjson1_deserializeDocumentSidewalkListDevice(v **types.SidewalkListDe
sv.AmazonId = ptr.String(jtv)
}
+ case "DeviceCertificates":
+ if err := awsRestjson1_deserializeDocumentDeviceCertificateList(&sv.DeviceCertificates, value); err != nil {
+ return err
+ }
+
+ case "SidewalkId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected SidewalkId to be of type string, got %T instead", value)
+ }
+ sv.SidewalkId = ptr.String(jtv)
+ }
+
+ case "SidewalkManufacturingSn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected SidewalkManufacturingSn to be of type string, got %T instead", value)
+ }
+ sv.SidewalkManufacturingSn = ptr.String(jtv)
+ }
+
default:
_, _ = key, value
diff --git a/service/iotwireless/go.mod b/service/iotwireless/go.mod
index a618ead779e..cf825b1814a 100644
--- a/service/iotwireless/go.mod
+++ b/service/iotwireless/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/iotwireless/go.sum b/service/iotwireless/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/iotwireless/go.sum
+++ b/service/iotwireless/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/iotwireless/serializers.go b/service/iotwireless/serializers.go
index 809188fe102..4e518cd1e2b 100644
--- a/service/iotwireless/serializers.go
+++ b/service/iotwireless/serializers.go
@@ -700,6 +700,13 @@ func awsRestjson1_serializeOpDocumentCreateWirelessDeviceInput(v *CreateWireless
ok.String(*v.Name)
}
+ if v.Tags != nil {
+ ok := object.Key("Tags")
+ if err := awsRestjson1_serializeDocumentTagList(v.Tags, ok); err != nil {
+ return err
+ }
+ }
+
if len(v.Type) > 0 {
ok := object.Key("Type")
ok.String(string(v.Type))
diff --git a/service/iotwireless/types/enums.go b/service/iotwireless/types/enums.go
index f2cd3b49fdc..ee8484be13b 100644
--- a/service/iotwireless/types/enums.go
+++ b/service/iotwireless/types/enums.go
@@ -2,6 +2,90 @@
package types
+type BatteryLevel string
+
+// Enum values for BatteryLevel
+const (
+ BatteryLevelNormal BatteryLevel = "normal"
+ BatteryLevelLow BatteryLevel = "low"
+ BatteryLevelCritical BatteryLevel = "critical"
+)
+
+// Values returns all known values for BatteryLevel. 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 (BatteryLevel) Values() []BatteryLevel {
+ return []BatteryLevel{
+ "normal",
+ "low",
+ "critical",
+ }
+}
+
+type ConnectionStatus string
+
+// Enum values for ConnectionStatus
+const (
+ ConnectionStatusConnected ConnectionStatus = "Connected"
+ ConnectionStatusDisconnected ConnectionStatus = "Disconnected"
+)
+
+// Values returns all known values for ConnectionStatus. 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 (ConnectionStatus) Values() []ConnectionStatus {
+ return []ConnectionStatus{
+ "Connected",
+ "Disconnected",
+ }
+}
+
+type DeviceState string
+
+// Enum values for DeviceState
+const (
+ DeviceStateProvisioned DeviceState = "Provisioned"
+ DeviceStateRegisterednotseen DeviceState = "RegisteredNotSeen"
+ DeviceStateRegisteredreachable DeviceState = "RegisteredReachable"
+ DeviceStateRegisteredunreachable DeviceState = "RegisteredUnreachable"
+)
+
+// Values returns all known values for DeviceState. 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 (DeviceState) Values() []DeviceState {
+ return []DeviceState{
+ "Provisioned",
+ "RegisteredNotSeen",
+ "RegisteredReachable",
+ "RegisteredUnreachable",
+ }
+}
+
+type Event string
+
+// Enum values for Event
+const (
+ EventDiscovered Event = "discovered"
+ EventLost Event = "lost"
+ EventAck Event = "ack"
+ EventNack Event = "nack"
+ EventPassthrough Event = "passthrough"
+)
+
+// Values returns all known values for Event. 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 (Event) Values() []Event {
+ return []Event{
+ "discovered",
+ "lost",
+ "ack",
+ "nack",
+ "passthrough",
+ }
+}
+
type ExpressionType string
// Enum values for ExpressionType
@@ -36,6 +120,24 @@ func (PartnerType) Values() []PartnerType {
}
}
+type SigningAlg string
+
+// Enum values for SigningAlg
+const (
+ SigningAlgEd25519 SigningAlg = "Ed25519"
+ SigningAlgP256r1 SigningAlg = "P256r1"
+)
+
+// Values returns all known values for SigningAlg. 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 (SigningAlg) Values() []SigningAlg {
+ return []SigningAlg{
+ "Ed25519",
+ "P256r1",
+ }
+}
+
type WirelessDeviceIdType string
// Enum values for WirelessDeviceIdType
diff --git a/service/iotwireless/types/types.go b/service/iotwireless/types/types.go
index 42f03d486d0..5c12d9fb878 100644
--- a/service/iotwireless/types/types.go
+++ b/service/iotwireless/types/types.go
@@ -22,6 +22,20 @@ type AbpV1_1 struct {
SessionKeys *SessionKeysAbpV1_1
}
+// List of sidewalk certificates.
+type CertificateList struct {
+
+ // The certificate chain algorithm provided by sidewalk.
+ //
+ // This member is required.
+ SigningAlg SigningAlg
+
+ // The value of the chosen sidewalk certificate.
+ //
+ // This member is required.
+ Value *string
+}
+
// Describes a destination.
type Destinations struct {
@@ -412,11 +426,49 @@ type SidewalkAccountInfoWithFingerprint struct {
Fingerprint *string
}
+// Sidewalk device object.
+type SidewalkDevice struct {
+
+ // The sidewalk device certificates for Ed25519 and P256r1.
+ DeviceCertificates []CertificateList
+
+ // The sidewalk device identification.
+ SidewalkId *string
+
+ // The Sidewalk manufacturing series number.
+ SidewalkManufacturingSn *string
+}
+
+// MetaData for Sidewalk device.
+type SidewalkDeviceMetadata struct {
+
+ // Sidewalk device battery level.
+ BatteryLevel BatteryLevel
+
+ // Device state defines the device status of sidewalk device.
+ DeviceState DeviceState
+
+ // Sidewalk device status notification.
+ Event Event
+
+ // The RSSI value.
+ Rssi *int32
+}
+
// Sidewalk object used by list functions.
type SidewalkListDevice struct {
// The Sidewalk Amazon ID.
AmazonId *string
+
+ // The sidewalk device certificates for Ed25519 and P256r1.
+ DeviceCertificates []CertificateList
+
+ // The sidewalk device identification.
+ SidewalkId *string
+
+ // The Sidewalk manufacturing series number.
+ SidewalkManufacturingSn *string
}
// Information about a Sidewalk router.
diff --git a/service/iotwireless/validators.go b/service/iotwireless/validators.go
index 4f088cda986..d69782c0b49 100644
--- a/service/iotwireless/validators.go
+++ b/service/iotwireless/validators.go
@@ -1225,6 +1225,11 @@ func validateOpCreateWirelessDeviceInput(v *CreateWirelessDeviceInput) error {
if v.DestinationName == nil {
invalidParams.Add(smithy.NewErrParamRequired("DestinationName"))
}
+ if v.Tags != nil {
+ if err := validateTagList(v.Tags); err != nil {
+ invalidParams.AddNested("Tags", err.(smithy.InvalidParamsError))
+ }
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
diff --git a/service/ivs/go.mod b/service/ivs/go.mod
index 65d16139b93..04ec958f850 100644
--- a/service/ivs/go.mod
+++ b/service/ivs/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/ivs/go.sum b/service/ivs/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/ivs/go.sum
+++ b/service/ivs/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/kafka/go.mod b/service/kafka/go.mod
index e25ae2d1cf7..bf365dda8c8 100644
--- a/service/kafka/go.mod
+++ b/service/kafka/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/kafka/go.sum b/service/kafka/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/kafka/go.sum
+++ b/service/kafka/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/kendra/go.mod b/service/kendra/go.mod
index 98478f22ebd..dc1dc4f00d5 100644
--- a/service/kendra/go.mod
+++ b/service/kendra/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/kendra/go.sum b/service/kendra/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/kendra/go.sum
+++ b/service/kendra/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/kinesis/go.mod b/service/kinesis/go.mod
index 5f5985cb577..f72465c4794 100644
--- a/service/kinesis/go.mod
+++ b/service/kinesis/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/kinesis/go.sum b/service/kinesis/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/kinesis/go.sum
+++ b/service/kinesis/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/kinesisanalytics/go.mod b/service/kinesisanalytics/go.mod
index 8e7d1d57e79..7490709fed7 100644
--- a/service/kinesisanalytics/go.mod
+++ b/service/kinesisanalytics/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/kinesisanalytics/go.sum b/service/kinesisanalytics/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/kinesisanalytics/go.sum
+++ b/service/kinesisanalytics/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/kinesisanalyticsv2/go.mod b/service/kinesisanalyticsv2/go.mod
index a600636d2ac..51d6ce82a7f 100644
--- a/service/kinesisanalyticsv2/go.mod
+++ b/service/kinesisanalyticsv2/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/kinesisanalyticsv2/go.sum b/service/kinesisanalyticsv2/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/kinesisanalyticsv2/go.sum
+++ b/service/kinesisanalyticsv2/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/kinesisvideo/go.mod b/service/kinesisvideo/go.mod
index 682ab472e6d..b90dc0cbcf3 100644
--- a/service/kinesisvideo/go.mod
+++ b/service/kinesisvideo/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/kinesisvideo/go.sum b/service/kinesisvideo/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/kinesisvideo/go.sum
+++ b/service/kinesisvideo/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/kinesisvideoarchivedmedia/go.mod b/service/kinesisvideoarchivedmedia/go.mod
index 41c0e969db5..845c44af0fd 100644
--- a/service/kinesisvideoarchivedmedia/go.mod
+++ b/service/kinesisvideoarchivedmedia/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/kinesisvideoarchivedmedia/go.sum b/service/kinesisvideoarchivedmedia/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/kinesisvideoarchivedmedia/go.sum
+++ b/service/kinesisvideoarchivedmedia/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/kinesisvideomedia/go.mod b/service/kinesisvideomedia/go.mod
index 43bf37111c5..3f9c1cf36d5 100644
--- a/service/kinesisvideomedia/go.mod
+++ b/service/kinesisvideomedia/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/kinesisvideomedia/go.sum b/service/kinesisvideomedia/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/kinesisvideomedia/go.sum
+++ b/service/kinesisvideomedia/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/kinesisvideosignaling/go.mod b/service/kinesisvideosignaling/go.mod
index b30de774c3f..571d1e2f3dd 100644
--- a/service/kinesisvideosignaling/go.mod
+++ b/service/kinesisvideosignaling/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/kinesisvideosignaling/go.sum b/service/kinesisvideosignaling/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/kinesisvideosignaling/go.sum
+++ b/service/kinesisvideosignaling/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/kms/go.mod b/service/kms/go.mod
index a98213ab869..c0a5a632dd1 100644
--- a/service/kms/go.mod
+++ b/service/kms/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/kms/go.sum b/service/kms/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/kms/go.sum
+++ b/service/kms/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/lakeformation/go.mod b/service/lakeformation/go.mod
index 55a75dd60c3..d25208233a0 100644
--- a/service/lakeformation/go.mod
+++ b/service/lakeformation/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/lakeformation/go.sum b/service/lakeformation/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/lakeformation/go.sum
+++ b/service/lakeformation/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/lambda/go.mod b/service/lambda/go.mod
index a64971c3ba4..61310f5f724 100644
--- a/service/lambda/go.mod
+++ b/service/lambda/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/lambda/go.sum b/service/lambda/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/lambda/go.sum
+++ b/service/lambda/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/lexmodelbuildingservice/go.mod b/service/lexmodelbuildingservice/go.mod
index 79405d8f0f2..bdbde8cb499 100644
--- a/service/lexmodelbuildingservice/go.mod
+++ b/service/lexmodelbuildingservice/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/lexmodelbuildingservice/go.sum b/service/lexmodelbuildingservice/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/lexmodelbuildingservice/go.sum
+++ b/service/lexmodelbuildingservice/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/lexmodelsv2/go.mod b/service/lexmodelsv2/go.mod
index 518581e8b01..4295b3d0a5a 100644
--- a/service/lexmodelsv2/go.mod
+++ b/service/lexmodelsv2/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/lexmodelsv2/go.sum b/service/lexmodelsv2/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/lexmodelsv2/go.sum
+++ b/service/lexmodelsv2/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/lexruntimeservice/go.mod b/service/lexruntimeservice/go.mod
index 67bc5b99a34..5289cdb8212 100644
--- a/service/lexruntimeservice/go.mod
+++ b/service/lexruntimeservice/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/lexruntimeservice/go.sum b/service/lexruntimeservice/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/lexruntimeservice/go.sum
+++ b/service/lexruntimeservice/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/lexruntimev2/go.mod b/service/lexruntimev2/go.mod
index a6d15ffd8fe..2abcaa7bdd8 100644
--- a/service/lexruntimev2/go.mod
+++ b/service/lexruntimev2/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/lexruntimev2/go.sum b/service/lexruntimev2/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/lexruntimev2/go.sum
+++ b/service/lexruntimev2/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/licensemanager/go.mod b/service/licensemanager/go.mod
index dbf97148193..1b855e7f01a 100644
--- a/service/licensemanager/go.mod
+++ b/service/licensemanager/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/licensemanager/go.sum b/service/licensemanager/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/licensemanager/go.sum
+++ b/service/licensemanager/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/lightsail/go.mod b/service/lightsail/go.mod
index d67ffc19f71..978d56b9fe9 100644
--- a/service/lightsail/go.mod
+++ b/service/lightsail/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/lightsail/go.sum b/service/lightsail/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/lightsail/go.sum
+++ b/service/lightsail/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/location/LICENSE.txt b/service/location/LICENSE.txt
new file mode 100644
index 00000000000..d6456956733
--- /dev/null
+++ b/service/location/LICENSE.txt
@@ -0,0 +1,202 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/service/location/api_client.go b/service/location/api_client.go
new file mode 100644
index 00000000000..de83f02ee2b
--- /dev/null
+++ b/service/location/api_client.go
@@ -0,0 +1,259 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+import (
+ "context"
+ "github.com/aws/aws-sdk-go-v2/aws"
+ awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
+ "github.com/aws/aws-sdk-go-v2/aws/retry"
+ "github.com/aws/aws-sdk-go-v2/aws/signer/v4"
+ awshttp "github.com/aws/aws-sdk-go-v2/aws/transport/http"
+ smithy "github.com/aws/smithy-go"
+ "github.com/aws/smithy-go/logging"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "net/http"
+ "time"
+)
+
+const ServiceID = "Location"
+const ServiceAPIVersion = "2020-11-19"
+
+// Client provides the API client to make operations call for Amazon Location
+// Service.
+type Client struct {
+ options Options
+}
+
+// New returns an initialized Client based on the functional options. Provide
+// additional functional options to further configure the behavior of the client,
+// such as changing the client's endpoint or adding custom middleware behavior.
+func New(options Options, optFns ...func(*Options)) *Client {
+ options = options.Copy()
+
+ resolveDefaultLogger(&options)
+
+ resolveRetryer(&options)
+
+ resolveHTTPClient(&options)
+
+ resolveHTTPSignerV4(&options)
+
+ resolveDefaultEndpointConfiguration(&options)
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ client := &Client{
+ options: options,
+ }
+
+ return client
+}
+
+type Options struct {
+ // Set of options to modify how an operation is invoked. These apply to all
+ // operations invoked for this client. Use functional options on operation call to
+ // modify this list for per operation behavior.
+ APIOptions []func(*middleware.Stack) error
+
+ // Configures the events that will be sent to the configured logger.
+ ClientLogMode aws.ClientLogMode
+
+ // The credentials object to use when signing requests.
+ Credentials aws.CredentialsProvider
+
+ // The endpoint options to be used when attempting to resolve an endpoint.
+ EndpointOptions EndpointResolverOptions
+
+ // The service endpoint resolver.
+ EndpointResolver EndpointResolver
+
+ // Signature Version 4 (SigV4) Signer
+ HTTPSignerV4 HTTPSignerV4
+
+ // The logger writer interface to write logging messages to.
+ Logger logging.Logger
+
+ // The region to send requests to. (Required)
+ Region string
+
+ // Retryer guides how HTTP requests should be retried in case of recoverable
+ // failures. When nil the API client will use a default retryer.
+ Retryer aws.Retryer
+
+ // The HTTP client to invoke API calls with. Defaults to client's default HTTP
+ // implementation if nil.
+ HTTPClient HTTPClient
+}
+
+// WithAPIOptions returns a functional option for setting the Client's APIOptions
+// option.
+func WithAPIOptions(optFns ...func(*middleware.Stack) error) func(*Options) {
+ return func(o *Options) {
+ o.APIOptions = append(o.APIOptions, optFns...)
+ }
+}
+
+// WithEndpointResolver returns a functional option for setting the Client's
+// EndpointResolver option.
+func WithEndpointResolver(v EndpointResolver) func(*Options) {
+ return func(o *Options) {
+ o.EndpointResolver = v
+ }
+}
+
+type HTTPClient interface {
+ Do(*http.Request) (*http.Response, error)
+}
+
+// Copy creates a clone where the APIOptions list is deep copied.
+func (o Options) Copy() Options {
+ to := o
+ to.APIOptions = make([]func(*middleware.Stack) error, len(o.APIOptions))
+ copy(to.APIOptions, o.APIOptions)
+ return to
+}
+func (c *Client) invokeOperation(ctx context.Context, opID string, params interface{}, optFns []func(*Options), stackFns ...func(*middleware.Stack, Options) error) (result interface{}, metadata middleware.Metadata, err error) {
+ ctx = middleware.ClearStackValues(ctx)
+ stack := middleware.NewStack(opID, smithyhttp.NewStackRequest)
+ options := c.options.Copy()
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ for _, fn := range stackFns {
+ if err := fn(stack, options); err != nil {
+ return nil, metadata, err
+ }
+ }
+
+ for _, fn := range options.APIOptions {
+ if err := fn(stack); err != nil {
+ return nil, metadata, err
+ }
+ }
+
+ handler := middleware.DecorateHandler(smithyhttp.NewClientHandler(options.HTTPClient), stack)
+ result, metadata, err = handler.Handle(ctx, params)
+ if err != nil {
+ err = &smithy.OperationError{
+ ServiceID: ServiceID,
+ OperationName: opID,
+ Err: err,
+ }
+ }
+ return result, metadata, err
+}
+
+func resolveDefaultLogger(o *Options) {
+ if o.Logger != nil {
+ return
+ }
+ o.Logger = logging.Nop{}
+}
+
+func addSetLoggerMiddleware(stack *middleware.Stack, o Options) error {
+ return middleware.AddSetLoggerMiddleware(stack, o.Logger)
+}
+
+// NewFromConfig returns a new client from the provided config.
+func NewFromConfig(cfg aws.Config, optFns ...func(*Options)) *Client {
+ opts := Options{
+ Region: cfg.Region,
+ HTTPClient: cfg.HTTPClient,
+ Credentials: cfg.Credentials,
+ APIOptions: cfg.APIOptions,
+ Logger: cfg.Logger,
+ ClientLogMode: cfg.ClientLogMode,
+ }
+ resolveAWSRetryerProvider(cfg, &opts)
+ resolveAWSEndpointResolver(cfg, &opts)
+ return New(opts, optFns...)
+}
+
+func resolveHTTPClient(o *Options) {
+ if o.HTTPClient != nil {
+ return
+ }
+ o.HTTPClient = awshttp.NewBuildableClient()
+}
+
+func resolveRetryer(o *Options) {
+ if o.Retryer != nil {
+ return
+ }
+ o.Retryer = retry.NewStandard()
+}
+
+func resolveAWSRetryerProvider(cfg aws.Config, o *Options) {
+ if cfg.Retryer == nil {
+ return
+ }
+ o.Retryer = cfg.Retryer()
+}
+
+func resolveAWSEndpointResolver(cfg aws.Config, o *Options) {
+ if cfg.EndpointResolver == nil {
+ return
+ }
+ o.EndpointResolver = withEndpointResolver(cfg.EndpointResolver, NewDefaultEndpointResolver())
+}
+
+func addClientUserAgent(stack *middleware.Stack) error {
+ return awsmiddleware.AddRequestUserAgentMiddleware(stack)
+}
+
+func addHTTPSignerV4Middleware(stack *middleware.Stack, o Options) error {
+ mw := v4.NewSignHTTPRequestMiddleware(v4.SignHTTPRequestMiddlewareOptions{
+ CredentialsProvider: o.Credentials,
+ Signer: o.HTTPSignerV4,
+ LogSigning: o.ClientLogMode.IsSigning(),
+ })
+ return stack.Finalize.Add(mw, middleware.After)
+}
+
+type HTTPSignerV4 interface {
+ SignHTTP(ctx context.Context, credentials aws.Credentials, r *http.Request, payloadHash string, service string, region string, signingTime time.Time, optFns ...func(*v4.SignerOptions)) error
+}
+
+func resolveHTTPSignerV4(o *Options) {
+ if o.HTTPSignerV4 != nil {
+ return
+ }
+ o.HTTPSignerV4 = newDefaultV4Signer(*o)
+}
+
+func newDefaultV4Signer(o Options) *v4.Signer {
+ return v4.NewSigner(func(so *v4.SignerOptions) {
+ so.Logger = o.Logger
+ so.LogSigning = o.ClientLogMode.IsSigning()
+ })
+}
+
+func addRetryMiddlewares(stack *middleware.Stack, o Options) error {
+ mo := retry.AddRetryMiddlewaresOptions{
+ Retryer: o.Retryer,
+ LogRetryAttempts: o.ClientLogMode.IsRetries(),
+ }
+ return retry.AddRetryMiddlewares(stack, mo)
+}
+
+func addRequestIDRetrieverMiddleware(stack *middleware.Stack) error {
+ return awsmiddleware.AddRequestIDRetrieverMiddleware(stack)
+}
+
+func addResponseErrorMiddleware(stack *middleware.Stack) error {
+ return awshttp.AddResponseErrorMiddleware(stack)
+}
+
+func addRequestResponseLogging(stack *middleware.Stack, o Options) error {
+ return stack.Deserialize.Add(&smithyhttp.RequestResponseLogger{
+ LogRequest: o.ClientLogMode.IsRequest(),
+ LogRequestWithBody: o.ClientLogMode.IsRequestWithBody(),
+ LogResponse: o.ClientLogMode.IsResponse(),
+ LogResponseWithBody: o.ClientLogMode.IsResponseWithBody(),
+ }, middleware.After)
+}
diff --git a/service/location/api_op_AssociateTrackerConsumer.go b/service/location/api_op_AssociateTrackerConsumer.go
new file mode 100644
index 00000000000..6006ebc079f
--- /dev/null
+++ b/service/location/api_op_AssociateTrackerConsumer.go
@@ -0,0 +1,114 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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 an association between a geofence collection and a tracker resource.
+// This allows the tracker resource to communicate location data to the linked
+// geofence collection. Currently not supported — Cross-account configurations,
+// such as creating associations between a tracker resource in one account and a
+// geofence collection in another account.
+func (c *Client) AssociateTrackerConsumer(ctx context.Context, params *AssociateTrackerConsumerInput, optFns ...func(*Options)) (*AssociateTrackerConsumerOutput, error) {
+ if params == nil {
+ params = &AssociateTrackerConsumerInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "AssociateTrackerConsumer", params, optFns, addOperationAssociateTrackerConsumerMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*AssociateTrackerConsumerOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type AssociateTrackerConsumerInput struct {
+
+ // The Amazon Resource Name (ARN) for the geofence collection to be associated to
+ // tracker resource. Used when you need to specify a resource across all AWS.
+ //
+ // *
+ // Format example:
+ // arn:partition:service:region:account-id:resource-type:resource-id
+ //
+ // This member is required.
+ ConsumerArn *string
+
+ // The name of the tracker resource to be associated with a geofence collection.
+ //
+ // This member is required.
+ TrackerName *string
+}
+
+type AssociateTrackerConsumerOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationAssociateTrackerConsumerMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpAssociateTrackerConsumer{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpAssociateTrackerConsumer{}, 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 = addOpAssociateTrackerConsumerValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_BatchDeleteGeofence.go b/service/location/api_op_BatchDeleteGeofence.go
new file mode 100644
index 00000000000..d1820ec5e51
--- /dev/null
+++ b/service/location/api_op_BatchDeleteGeofence.go
@@ -0,0 +1,113 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Deletes a batch of geofences from a geofence collection. This action deletes the
+// resource permanently. You can't undo this action.
+func (c *Client) BatchDeleteGeofence(ctx context.Context, params *BatchDeleteGeofenceInput, optFns ...func(*Options)) (*BatchDeleteGeofenceOutput, error) {
+ if params == nil {
+ params = &BatchDeleteGeofenceInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "BatchDeleteGeofence", params, optFns, addOperationBatchDeleteGeofenceMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*BatchDeleteGeofenceOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type BatchDeleteGeofenceInput struct {
+
+ // The geofence collection storing the geofences to be deleted.
+ //
+ // This member is required.
+ CollectionName *string
+
+ // The batch of geofences to be deleted.
+ //
+ // This member is required.
+ GeofenceIds []string
+}
+
+type BatchDeleteGeofenceOutput struct {
+
+ // Contains error details for each geofence that failed to delete.
+ //
+ // This member is required.
+ Errors []types.BatchDeleteGeofenceError
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationBatchDeleteGeofenceMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpBatchDeleteGeofence{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpBatchDeleteGeofence{}, 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 = addOpBatchDeleteGeofenceValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_BatchEvaluateGeofences.go b/service/location/api_op_BatchEvaluateGeofences.go
new file mode 100644
index 00000000000..e5cbc856593
--- /dev/null
+++ b/service/location/api_op_BatchEvaluateGeofences.go
@@ -0,0 +1,112 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+import (
+ "context"
+ awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
+ "github.com/aws/aws-sdk-go-v2/service/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Evaluates device positions against the geofence geometries from a given geofence
+// collection. The evaluation determines if the device has entered or exited a
+// geofenced area, which publishes ENTER or EXIT geofence events to Amazon
+// EventBridge. The last geofence that a device was observed within, if any, is
+// tracked for 30 days after the most recent device position update
+func (c *Client) BatchEvaluateGeofences(ctx context.Context, params *BatchEvaluateGeofencesInput, optFns ...func(*Options)) (*BatchEvaluateGeofencesOutput, error) {
+ if params == nil {
+ params = &BatchEvaluateGeofencesInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "BatchEvaluateGeofences", params, optFns, addOperationBatchEvaluateGeofencesMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*BatchEvaluateGeofencesOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type BatchEvaluateGeofencesInput struct {
+
+ // The geofence collection used in evaluating the position of devices against its
+ // geofences.
+ //
+ // This member is required.
+ CollectionName *string
+
+ // Contains device details for each device to be evaluated against the given
+ // geofence collection.
+ //
+ // This member is required.
+ DevicePositionUpdates []types.DevicePositionUpdate
+}
+
+type BatchEvaluateGeofencesOutput struct {
+
+ // Contains error details for each device that failed to evaluate its position
+ // against the given geofence collection.
+ //
+ // This member is required.
+ Errors []types.BatchEvaluateGeofencesError
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationBatchEvaluateGeofencesMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpBatchEvaluateGeofences{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpBatchEvaluateGeofences{}, 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 = addRetryMiddlewares(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 = addOpBatchEvaluateGeofencesValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_BatchGetDevicePosition.go b/service/location/api_op_BatchGetDevicePosition.go
new file mode 100644
index 00000000000..64925702729
--- /dev/null
+++ b/service/location/api_op_BatchGetDevicePosition.go
@@ -0,0 +1,122 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// A batch request to retrieve all device positions.
+func (c *Client) BatchGetDevicePosition(ctx context.Context, params *BatchGetDevicePositionInput, optFns ...func(*Options)) (*BatchGetDevicePositionOutput, error) {
+ if params == nil {
+ params = &BatchGetDevicePositionInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "BatchGetDevicePosition", params, optFns, addOperationBatchGetDevicePositionMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*BatchGetDevicePositionOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type BatchGetDevicePositionInput struct {
+
+ // Devices whose position you want to retrieve.
+ //
+ // * For example, for two devices:
+ // device-ids=DeviceId1&device-ids=DeviceId2
+ //
+ // This member is required.
+ DeviceIds []string
+
+ // The tracker resource retrieving the device position.
+ //
+ // This member is required.
+ TrackerName *string
+}
+
+type BatchGetDevicePositionOutput struct {
+
+ // Contains device position details such as the device ID, position, and timestamps
+ // for when the position was received and sampled.
+ //
+ // This member is required.
+ DevicePositions []types.DevicePosition
+
+ // Contains error details for each device that failed to send its position to the
+ // tracker resource.
+ //
+ // This member is required.
+ Errors []types.BatchGetDevicePositionError
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationBatchGetDevicePositionMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpBatchGetDevicePosition{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpBatchGetDevicePosition{}, 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 = addOpBatchGetDevicePositionValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_BatchPutGeofence.go b/service/location/api_op_BatchPutGeofence.go
new file mode 100644
index 00000000000..5e559819cec
--- /dev/null
+++ b/service/location/api_op_BatchPutGeofence.go
@@ -0,0 +1,119 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// A batch request for storing geofence geometries into a given geofence
+// collection.
+func (c *Client) BatchPutGeofence(ctx context.Context, params *BatchPutGeofenceInput, optFns ...func(*Options)) (*BatchPutGeofenceOutput, error) {
+ if params == nil {
+ params = &BatchPutGeofenceInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "BatchPutGeofence", params, optFns, addOperationBatchPutGeofenceMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*BatchPutGeofenceOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type BatchPutGeofenceInput struct {
+
+ // The geofence collection storing the geofences.
+ //
+ // This member is required.
+ CollectionName *string
+
+ // The batch of geofences to be stored in a geofence collection.
+ //
+ // This member is required.
+ Entries []types.BatchPutGeofenceRequestEntry
+}
+
+type BatchPutGeofenceOutput struct {
+
+ // Contains additional error details for each geofence that failed to be stored in
+ // a geofence collection.
+ //
+ // This member is required.
+ Errors []types.BatchPutGeofenceError
+
+ // Contains each geofence that was successfully stored in a geofence collection.
+ //
+ // This member is required.
+ Successes []types.BatchPutGeofenceSuccess
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationBatchPutGeofenceMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpBatchPutGeofence{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpBatchPutGeofence{}, 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 = addOpBatchPutGeofenceValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_BatchUpdateDevicePosition.go b/service/location/api_op_BatchUpdateDevicePosition.go
new file mode 100644
index 00000000000..a387db0c14f
--- /dev/null
+++ b/service/location/api_op_BatchUpdateDevicePosition.go
@@ -0,0 +1,116 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Uploads position update data for one or more devices to a tracker resource.
+// Amazon Location uses the data when reporting the last known device position and
+// position history. Only one position update is stored per sample time. Location
+// data is sampled at a fixed rate of one position per 30-second interval, and
+// retained for one year before it is deleted.
+func (c *Client) BatchUpdateDevicePosition(ctx context.Context, params *BatchUpdateDevicePositionInput, optFns ...func(*Options)) (*BatchUpdateDevicePositionOutput, error) {
+ if params == nil {
+ params = &BatchUpdateDevicePositionInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "BatchUpdateDevicePosition", params, optFns, addOperationBatchUpdateDevicePositionMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*BatchUpdateDevicePositionOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type BatchUpdateDevicePositionInput struct {
+
+ // The name of the tracker resource to update.
+ //
+ // This member is required.
+ TrackerName *string
+
+ // Contains the position update details for each device.
+ //
+ // This member is required.
+ Updates []types.DevicePositionUpdate
+}
+
+type BatchUpdateDevicePositionOutput struct {
+
+ // Contains error details for each device that failed to update its position.
+ //
+ // This member is required.
+ Errors []types.BatchUpdateDevicePositionError
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationBatchUpdateDevicePositionMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpBatchUpdateDevicePosition{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpBatchUpdateDevicePosition{}, 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 = addOpBatchUpdateDevicePositionValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_CreateGeofenceCollection.go b/service/location/api_op_CreateGeofenceCollection.go
new file mode 100644
index 00000000000..a950f5089e5
--- /dev/null
+++ b/service/location/api_op_CreateGeofenceCollection.go
@@ -0,0 +1,148 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Creates a geofence collection, which manages and stores geofences.
+func (c *Client) CreateGeofenceCollection(ctx context.Context, params *CreateGeofenceCollectionInput, optFns ...func(*Options)) (*CreateGeofenceCollectionOutput, error) {
+ if params == nil {
+ params = &CreateGeofenceCollectionInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "CreateGeofenceCollection", params, optFns, addOperationCreateGeofenceCollectionMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*CreateGeofenceCollectionOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type CreateGeofenceCollectionInput struct {
+
+ // A custom name for the geofence collection. Requirements:
+ //
+ // * Contain only
+ // alphanumeric characters (A–Z, a–z, 0-9), hyphens (-), periods (.), and
+ // underscores (_).
+ //
+ // * Must be a unique geofence collection name.
+ //
+ // * No spaces
+ // allowed. For example, ExampleGeofenceCollection.
+ //
+ // This member is required.
+ CollectionName *string
+
+ // Specifies the pricing plan for your geofence collection. For additional details
+ // and restrictions on each pricing plan option, see the Amazon Location Service
+ // pricing page (https://aws.amazon.com/location/pricing/).
+ //
+ // This member is required.
+ PricingPlan types.PricingPlan
+
+ // An optional description for the geofence collection.
+ Description *string
+
+ // Specifies the plan data source. Required if the Mobile Asset Tracking (MAT) or
+ // the Mobile Asset Management (MAM) pricing plan is selected. Billing is
+ // determined by the resource usage, the associated pricing plan, and the data
+ // source that was specified. For more information about each pricing plan option
+ // and restrictions, see the Amazon Location Service pricing page
+ // (https://aws.amazon.com/location/pricing/). Valid Values: Esri | Here
+ PricingPlanDataSource *string
+}
+
+type CreateGeofenceCollectionOutput struct {
+
+ // The Amazon Resource Name (ARN) for the geofence collection resource. Used when
+ // you need to specify a resource across all AWS.
+ //
+ // This member is required.
+ CollectionArn *string
+
+ // The name for the geofence collection.
+ //
+ // This member is required.
+ CollectionName *string
+
+ // The timestamp for when the geofence collection was created in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationCreateGeofenceCollectionMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpCreateGeofenceCollection{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpCreateGeofenceCollection{}, 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 = addOpCreateGeofenceCollectionValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_CreateMap.go b/service/location/api_op_CreateMap.go
new file mode 100644
index 00000000000..0977e0e757b
--- /dev/null
+++ b/service/location/api_op_CreateMap.go
@@ -0,0 +1,153 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Creates a map resource in your AWS account, which provides map tiles of
+// different styles sourced from global location data providers. By using Maps, you
+// agree that AWS may transmit your API queries to your selected third party
+// provider for processing, which may be outside the AWS region you are currently
+// using. For more information, see the AWS Service Terms
+// (https://aws.amazon.com/service-terms/) for Amazon Location Service.
+func (c *Client) CreateMap(ctx context.Context, params *CreateMapInput, optFns ...func(*Options)) (*CreateMapOutput, error) {
+ if params == nil {
+ params = &CreateMapInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "CreateMap", params, optFns, addOperationCreateMapMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*CreateMapOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type CreateMapInput struct {
+
+ // Specifies the map style selected from an available data provider.
+ //
+ // This member is required.
+ Configuration *types.MapConfiguration
+
+ // The name for the map resource. Requirements:
+ //
+ // * Must contain only alphanumeric
+ // characters (A–Z, a–z, 0–9), hyphens (-), periods (.), and underscores (_).
+ //
+ // *
+ // Must be a unique map resource name.
+ //
+ // * No spaces allowed. For example,
+ // ExampleMap.
+ //
+ // This member is required.
+ MapName *string
+
+ // Specifies the pricing plan for your map resource. For additional details and
+ // restrictions on each pricing plan option, see the Amazon Location Service
+ // pricing page (https://aws.amazon.com/location/pricing/).
+ //
+ // This member is required.
+ PricingPlan types.PricingPlan
+
+ // An optional description for the map resource.
+ Description *string
+}
+
+type CreateMapOutput struct {
+
+ // The timestamp for when the map resource was created in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // The Amazon Resource Name (ARN) for the map resource. Used when you need to
+ // specify a resource across all AWS.
+ //
+ // * Format example:
+ // arn:partition:service:region:account-id:resource-type:resource-id
+ //
+ // This member is required.
+ MapArn *string
+
+ // The name of the map resource.
+ //
+ // This member is required.
+ MapName *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationCreateMapMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpCreateMap{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpCreateMap{}, 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 = addOpCreateMapValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_CreatePlaceIndex.go b/service/location/api_op_CreatePlaceIndex.go
new file mode 100644
index 00000000000..bfaf90ef743
--- /dev/null
+++ b/service/location/api_op_CreatePlaceIndex.go
@@ -0,0 +1,164 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Creates a Place index resource in your AWS account, which supports Places
+// functions with geospatial data sourced from your chosen data provider. By using
+// Places, you agree that AWS may transmit your API queries to your selected third
+// party provider for processing, which may be outside the AWS region you are
+// currently using. Because of licensing limitations, you may not use HERE to store
+// results for locations in Japan. For more information, see the AWS Service Terms
+// (https://aws.amazon.com/service-terms/) for Amazon Location Service.
+func (c *Client) CreatePlaceIndex(ctx context.Context, params *CreatePlaceIndexInput, optFns ...func(*Options)) (*CreatePlaceIndexOutput, error) {
+ if params == nil {
+ params = &CreatePlaceIndexInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "CreatePlaceIndex", params, optFns, addOperationCreatePlaceIndexMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*CreatePlaceIndexOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type CreatePlaceIndexInput struct {
+
+ // Specifies the data provider of geospatial data. This field is case-sensitive.
+ // Enter the valid values as shown. For example, entering HERE will return an
+ // error. Valid values include:
+ //
+ // * Esri
+ //
+ // * Here
+ //
+ // For additional details on data
+ // providers, see the Amazon Location Service data providers page
+ // (https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html).
+ //
+ // This member is required.
+ DataSource *string
+
+ // The name of the Place index resource. Requirements:
+ //
+ // * Contain only alphanumeric
+ // characters (A-Z, a-z, 0-9) , hyphens (-), periods (.), and underscores (_).
+ //
+ // *
+ // Must be a unique Place index resource name.
+ //
+ // * No spaces allowed. For example,
+ // ExamplePlaceIndex.
+ //
+ // This member is required.
+ IndexName *string
+
+ // Specifies the pricing plan for your Place index resource. For additional details
+ // and restrictions on each pricing plan option, see the Amazon Location Service
+ // pricing page (https://aws.amazon.com/location/pricing/).
+ //
+ // This member is required.
+ PricingPlan types.PricingPlan
+
+ // Specifies the data storage option for requesting Places.
+ DataSourceConfiguration *types.DataSourceConfiguration
+
+ // The optional description for the Place index resource.
+ Description *string
+}
+
+type CreatePlaceIndexOutput struct {
+
+ // The timestamp for when the Place index resource was created in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // The Amazon Resource Name (ARN) for the Place index resource. Used when you need
+ // to specify a resource across all AWS.
+ //
+ // This member is required.
+ IndexArn *string
+
+ // The name for the Place index resource.
+ //
+ // This member is required.
+ IndexName *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationCreatePlaceIndexMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpCreatePlaceIndex{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpCreatePlaceIndex{}, 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 = addOpCreatePlaceIndexValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_CreateTracker.go b/service/location/api_op_CreateTracker.go
new file mode 100644
index 00000000000..dbfa138d3a5
--- /dev/null
+++ b/service/location/api_op_CreateTracker.go
@@ -0,0 +1,149 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Creates a tracker resource in your AWS account, which lets you retrieve current
+// and historical location of devices.
+func (c *Client) CreateTracker(ctx context.Context, params *CreateTrackerInput, optFns ...func(*Options)) (*CreateTrackerOutput, error) {
+ if params == nil {
+ params = &CreateTrackerInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "CreateTracker", params, optFns, addOperationCreateTrackerMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*CreateTrackerOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type CreateTrackerInput struct {
+
+ // Specifies the pricing plan for your tracker resource. For additional details and
+ // restrictions on each pricing plan option, see the Amazon Location Service
+ // pricing page (https://aws.amazon.com/location/pricing/).
+ //
+ // This member is required.
+ PricingPlan types.PricingPlan
+
+ // The name for the tracker resource. Requirements:
+ //
+ // * Contain only alphanumeric
+ // characters (A-Z, a-z, 0-9) , hyphens (-), periods (.), and underscores (_).
+ //
+ // *
+ // Must be a unique tracker resource name.
+ //
+ // * No spaces allowed. For example,
+ // ExampleTracker.
+ //
+ // This member is required.
+ TrackerName *string
+
+ // An optional description for the tracker resource.
+ Description *string
+
+ // Specifies the plan data source. Required if the Mobile Asset Tracking (MAT) or
+ // the Mobile Asset Management (MAM) pricing plan is selected. Billing is
+ // determined by the resource usage, the associated pricing plan, and data source
+ // that was specified. For more information about each pricing plan option and
+ // restrictions, see the Amazon Location Service pricing page
+ // (https://aws.amazon.com/location/pricing/). Valid Values: Esri | Here
+ PricingPlanDataSource *string
+}
+
+type CreateTrackerOutput struct {
+
+ // The timestamp for when the tracker resource was created in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // The Amazon Resource Name (ARN) for the tracker resource. Used when you need to
+ // specify a resource across all AWS.
+ //
+ // This member is required.
+ TrackerArn *string
+
+ // The name of the tracker resource.
+ //
+ // This member is required.
+ TrackerName *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationCreateTrackerMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpCreateTracker{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpCreateTracker{}, 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 = addOpCreateTrackerValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_DeleteGeofenceCollection.go b/service/location/api_op_DeleteGeofenceCollection.go
new file mode 100644
index 00000000000..acf1a6efffc
--- /dev/null
+++ b/service/location/api_op_DeleteGeofenceCollection.go
@@ -0,0 +1,102 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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 geofence collection from your AWS account. This action deletes the
+// resource permanently. You can't undo this action. If the geofence collection is
+// the target of a tracker resource, the devices will no longer be monitored.
+func (c *Client) DeleteGeofenceCollection(ctx context.Context, params *DeleteGeofenceCollectionInput, optFns ...func(*Options)) (*DeleteGeofenceCollectionOutput, error) {
+ if params == nil {
+ params = &DeleteGeofenceCollectionInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DeleteGeofenceCollection", params, optFns, addOperationDeleteGeofenceCollectionMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DeleteGeofenceCollectionOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DeleteGeofenceCollectionInput struct {
+
+ // The name of the geofence collection to be deleted.
+ //
+ // This member is required.
+ CollectionName *string
+}
+
+type DeleteGeofenceCollectionOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDeleteGeofenceCollectionMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpDeleteGeofenceCollection{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDeleteGeofenceCollection{}, 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 = addOpDeleteGeofenceCollectionValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_DeleteMap.go b/service/location/api_op_DeleteMap.go
new file mode 100644
index 00000000000..89bdcb4bddc
--- /dev/null
+++ b/service/location/api_op_DeleteMap.go
@@ -0,0 +1,102 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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 map resource from your AWS account. This action deletes the resource
+// permanently. You cannot undo this action. If the map is being used in an
+// application, the map may not render.
+func (c *Client) DeleteMap(ctx context.Context, params *DeleteMapInput, optFns ...func(*Options)) (*DeleteMapOutput, error) {
+ if params == nil {
+ params = &DeleteMapInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DeleteMap", params, optFns, addOperationDeleteMapMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DeleteMapOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DeleteMapInput struct {
+
+ // The name of the map resource to be deleted.
+ //
+ // This member is required.
+ MapName *string
+}
+
+type DeleteMapOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDeleteMapMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpDeleteMap{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDeleteMap{}, 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 = addOpDeleteMapValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_DeletePlaceIndex.go b/service/location/api_op_DeletePlaceIndex.go
new file mode 100644
index 00000000000..66285fb3c76
--- /dev/null
+++ b/service/location/api_op_DeletePlaceIndex.go
@@ -0,0 +1,101 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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 Place index resource from your AWS account. This action deletes the
+// resource permanently. You cannot undo this action.
+func (c *Client) DeletePlaceIndex(ctx context.Context, params *DeletePlaceIndexInput, optFns ...func(*Options)) (*DeletePlaceIndexOutput, error) {
+ if params == nil {
+ params = &DeletePlaceIndexInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DeletePlaceIndex", params, optFns, addOperationDeletePlaceIndexMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DeletePlaceIndexOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DeletePlaceIndexInput struct {
+
+ // The name of the Place index resource to be deleted.
+ //
+ // This member is required.
+ IndexName *string
+}
+
+type DeletePlaceIndexOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDeletePlaceIndexMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpDeletePlaceIndex{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDeletePlaceIndex{}, 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 = addOpDeletePlaceIndexValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_DeleteTracker.go b/service/location/api_op_DeleteTracker.go
new file mode 100644
index 00000000000..af5ac8cccb0
--- /dev/null
+++ b/service/location/api_op_DeleteTracker.go
@@ -0,0 +1,103 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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 tracker resource from your AWS account. This action deletes the
+// resource permanently. You can't undo this action. If the tracker resource is in
+// use, you may encounter an error. Make sure that the target resource is not a
+// dependency for your applications.
+func (c *Client) DeleteTracker(ctx context.Context, params *DeleteTrackerInput, optFns ...func(*Options)) (*DeleteTrackerOutput, error) {
+ if params == nil {
+ params = &DeleteTrackerInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DeleteTracker", params, optFns, addOperationDeleteTrackerMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DeleteTrackerOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DeleteTrackerInput struct {
+
+ // The name of the tracker resource to be deleted.
+ //
+ // This member is required.
+ TrackerName *string
+}
+
+type DeleteTrackerOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDeleteTrackerMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpDeleteTracker{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDeleteTracker{}, 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 = addOpDeleteTrackerValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_DescribeGeofenceCollection.go b/service/location/api_op_DescribeGeofenceCollection.go
new file mode 100644
index 00000000000..45ec60f051c
--- /dev/null
+++ b/service/location/api_op_DescribeGeofenceCollection.go
@@ -0,0 +1,144 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Retrieves the geofence collection details.
+func (c *Client) DescribeGeofenceCollection(ctx context.Context, params *DescribeGeofenceCollectionInput, optFns ...func(*Options)) (*DescribeGeofenceCollectionOutput, error) {
+ if params == nil {
+ params = &DescribeGeofenceCollectionInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DescribeGeofenceCollection", params, optFns, addOperationDescribeGeofenceCollectionMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DescribeGeofenceCollectionOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DescribeGeofenceCollectionInput struct {
+
+ // The name of the geofence collection.
+ //
+ // This member is required.
+ CollectionName *string
+}
+
+type DescribeGeofenceCollectionOutput struct {
+
+ // The Amazon Resource Name (ARN) for the geofence collection resource. Used when
+ // you need to specify a resource across all AWS.
+ //
+ // This member is required.
+ CollectionArn *string
+
+ // The name of the geofence collection.
+ //
+ // This member is required.
+ CollectionName *string
+
+ // The timestamp for when the geofence resource was created in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // The optional description for the geofence collection.
+ //
+ // This member is required.
+ Description *string
+
+ // The pricing plan selected for the specified geofence collection. For additional
+ // details and restrictions on each pricing plan option, see the Amazon Location
+ // Service pricing page (https://aws.amazon.com/location/pricing/).
+ //
+ // This member is required.
+ PricingPlan types.PricingPlan
+
+ // The timestamp for when the geofence collection was last updated in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ
+ //
+ // This member is required.
+ UpdateTime *time.Time
+
+ // The data source selected for the geofence collection and associated pricing
+ // plan.
+ PricingPlanDataSource *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDescribeGeofenceCollectionMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpDescribeGeofenceCollection{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDescribeGeofenceCollection{}, 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 = addOpDescribeGeofenceCollectionValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_DescribeMap.go b/service/location/api_op_DescribeMap.go
new file mode 100644
index 00000000000..8e42cdefe22
--- /dev/null
+++ b/service/location/api_op_DescribeMap.go
@@ -0,0 +1,150 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Retrieves the map resource details.
+func (c *Client) DescribeMap(ctx context.Context, params *DescribeMapInput, optFns ...func(*Options)) (*DescribeMapOutput, error) {
+ if params == nil {
+ params = &DescribeMapInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DescribeMap", params, optFns, addOperationDescribeMapMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DescribeMapOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DescribeMapInput struct {
+
+ // The name of the map resource.
+ //
+ // This member is required.
+ MapName *string
+}
+
+type DescribeMapOutput struct {
+
+ // Specifies the map tile style selected from a partner data provider.
+ //
+ // This member is required.
+ Configuration *types.MapConfiguration
+
+ // The timestamp for when the map resource was created in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // Specifies the data provider for the associated map tiles.
+ //
+ // This member is required.
+ DataSource *string
+
+ // The optional description for the map resource.
+ //
+ // This member is required.
+ Description *string
+
+ // The Amazon Resource Name (ARN) for the map resource. Used when you need to
+ // specify a resource across all AWS.
+ //
+ // This member is required.
+ MapArn *string
+
+ // The map style selected from an available provider.
+ //
+ // This member is required.
+ MapName *string
+
+ // The pricing plan selected for the specified map resource. For additional details
+ // and restrictions on each pricing plan option, see the Amazon Location Service
+ // pricing page (https://aws.amazon.com/location/pricing/).
+ //
+ // This member is required.
+ PricingPlan types.PricingPlan
+
+ // The timestamp for when the map resource was last update in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ UpdateTime *time.Time
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDescribeMapMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpDescribeMap{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDescribeMap{}, 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 = addOpDescribeMapValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_DescribePlaceIndex.go b/service/location/api_op_DescribePlaceIndex.go
new file mode 100644
index 00000000000..016b911d8a6
--- /dev/null
+++ b/service/location/api_op_DescribePlaceIndex.go
@@ -0,0 +1,159 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Retrieves the Place index resource details.
+func (c *Client) DescribePlaceIndex(ctx context.Context, params *DescribePlaceIndexInput, optFns ...func(*Options)) (*DescribePlaceIndexOutput, error) {
+ if params == nil {
+ params = &DescribePlaceIndexInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DescribePlaceIndex", params, optFns, addOperationDescribePlaceIndexMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DescribePlaceIndexOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DescribePlaceIndexInput struct {
+
+ // The name of the Place index resource.
+ //
+ // This member is required.
+ IndexName *string
+}
+
+type DescribePlaceIndexOutput struct {
+
+ // The timestamp for when the Place index resource was created in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // The data provider of geospatial data. Indicates one of the available
+ // providers:
+ //
+ // * Esri
+ //
+ // * Here
+ //
+ // For additional details on data providers, see the
+ // Amazon Location Service data providers page
+ // (https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html).
+ //
+ // This member is required.
+ DataSource *string
+
+ // The specified data storage option for requesting Places.
+ //
+ // This member is required.
+ DataSourceConfiguration *types.DataSourceConfiguration
+
+ // The optional description for the Place index resource.
+ //
+ // This member is required.
+ Description *string
+
+ // The Amazon Resource Name (ARN) for the Place index resource. Used when you need
+ // to specify a resource across all AWS.
+ //
+ // This member is required.
+ IndexArn *string
+
+ // The name of the Place index resource being described.
+ //
+ // This member is required.
+ IndexName *string
+
+ // The pricing plan selected for the specified Place index resource. For additional
+ // details and restrictions on each pricing plan option, see the Amazon Location
+ // Service pricing page (https://aws.amazon.com/location/pricing/).
+ //
+ // This member is required.
+ PricingPlan types.PricingPlan
+
+ // The timestamp for when the Place index resource was last updated in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ UpdateTime *time.Time
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDescribePlaceIndexMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpDescribePlaceIndex{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDescribePlaceIndex{}, 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 = addOpDescribePlaceIndexValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_DescribeTracker.go b/service/location/api_op_DescribeTracker.go
new file mode 100644
index 00000000000..ed82478d8a5
--- /dev/null
+++ b/service/location/api_op_DescribeTracker.go
@@ -0,0 +1,143 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Retrieves the tracker resource details.
+func (c *Client) DescribeTracker(ctx context.Context, params *DescribeTrackerInput, optFns ...func(*Options)) (*DescribeTrackerOutput, error) {
+ if params == nil {
+ params = &DescribeTrackerInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DescribeTracker", params, optFns, addOperationDescribeTrackerMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DescribeTrackerOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DescribeTrackerInput struct {
+
+ // The name of the tracker resource.
+ //
+ // This member is required.
+ TrackerName *string
+}
+
+type DescribeTrackerOutput struct {
+
+ // The timestamp for when the tracker resource was created in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // The optional description for the tracker resource.
+ //
+ // This member is required.
+ Description *string
+
+ // The pricing plan selected for the specified tracker resource. For additional
+ // details and restrictions on each pricing plan option, see the Amazon Location
+ // Service pricing page (https://aws.amazon.com/location/pricing/).
+ //
+ // This member is required.
+ PricingPlan types.PricingPlan
+
+ // The Amazon Resource Name (ARN) for the tracker resource. Used when you need to
+ // specify a resource across all AWS.
+ //
+ // This member is required.
+ TrackerArn *string
+
+ // The name of the tracker resource.
+ //
+ // This member is required.
+ TrackerName *string
+
+ // The timestamp for when the tracker resource was last updated in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ UpdateTime *time.Time
+
+ // The data source selected for the tracker resource and associated pricing plan.
+ PricingPlanDataSource *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDescribeTrackerMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpDescribeTracker{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDescribeTracker{}, 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 = addOpDescribeTrackerValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_DisassociateTrackerConsumer.go b/service/location/api_op_DisassociateTrackerConsumer.go
new file mode 100644
index 00000000000..5f136f39bf0
--- /dev/null
+++ b/service/location/api_op_DisassociateTrackerConsumer.go
@@ -0,0 +1,112 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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"
+)
+
+// Removes the association between a tracker resource and a geofence collection.
+// Once you unlink a tracker resource from a geofence collection, the tracker
+// positions will no longer be automatically evaluated against geofences.
+func (c *Client) DisassociateTrackerConsumer(ctx context.Context, params *DisassociateTrackerConsumerInput, optFns ...func(*Options)) (*DisassociateTrackerConsumerOutput, error) {
+ if params == nil {
+ params = &DisassociateTrackerConsumerInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DisassociateTrackerConsumer", params, optFns, addOperationDisassociateTrackerConsumerMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DisassociateTrackerConsumerOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DisassociateTrackerConsumerInput struct {
+
+ // The Amazon Resource Name (ARN) for the geofence collection to be disassociated
+ // from the tracker resource. Used when you need to specify a resource across all
+ // AWS.
+ //
+ // * Format example:
+ // arn:partition:service:region:account-id:resource-type:resource-id
+ //
+ // This member is required.
+ ConsumerArn *string
+
+ // The name of the tracker resource to be dissociated from the consumer.
+ //
+ // This member is required.
+ TrackerName *string
+}
+
+type DisassociateTrackerConsumerOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDisassociateTrackerConsumerMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpDisassociateTrackerConsumer{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDisassociateTrackerConsumer{}, 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 = addOpDisassociateTrackerConsumerValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_GetDevicePosition.go b/service/location/api_op_GetDevicePosition.go
new file mode 100644
index 00000000000..bad0514b897
--- /dev/null
+++ b/service/location/api_op_GetDevicePosition.go
@@ -0,0 +1,130 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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"
+ "time"
+)
+
+// Retrieves a device's most recent position according to its sample time. Device
+// positions are deleted after one year.
+func (c *Client) GetDevicePosition(ctx context.Context, params *GetDevicePositionInput, optFns ...func(*Options)) (*GetDevicePositionOutput, error) {
+ if params == nil {
+ params = &GetDevicePositionInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetDevicePosition", params, optFns, addOperationGetDevicePositionMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetDevicePositionOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetDevicePositionInput struct {
+
+ // The device whose position you want to retrieve.
+ //
+ // This member is required.
+ DeviceId *string
+
+ // The tracker resource receiving the position update.
+ //
+ // This member is required.
+ TrackerName *string
+}
+
+type GetDevicePositionOutput struct {
+
+ // The last known device position.
+ //
+ // This member is required.
+ Position []float64
+
+ // The timestamp for when the tracker resource received the device position in ISO
+ // 8601 (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ ReceivedTime *time.Time
+
+ // The timestamp at which the device's position was determined. Uses ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ SampleTime *time.Time
+
+ // The device whose position you retrieved.
+ DeviceId *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetDevicePositionMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpGetDevicePosition{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetDevicePosition{}, 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 = addOpGetDevicePositionValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_GetDevicePositionHistory.go b/service/location/api_op_GetDevicePositionHistory.go
new file mode 100644
index 00000000000..800dff980ee
--- /dev/null
+++ b/service/location/api_op_GetDevicePositionHistory.go
@@ -0,0 +1,217 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Retrieves the device position history from a tracker resource within a specified
+// range of time. Device positions are deleted after 1 year.
+func (c *Client) GetDevicePositionHistory(ctx context.Context, params *GetDevicePositionHistoryInput, optFns ...func(*Options)) (*GetDevicePositionHistoryOutput, error) {
+ if params == nil {
+ params = &GetDevicePositionHistoryInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetDevicePositionHistory", params, optFns, addOperationGetDevicePositionHistoryMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetDevicePositionHistoryOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetDevicePositionHistoryInput struct {
+
+ // The device whose position history you want to retrieve.
+ //
+ // This member is required.
+ DeviceId *string
+
+ // The tracker resource receiving the request for the device position history.
+ //
+ // This member is required.
+ TrackerName *string
+
+ // Specify the end time for the position history in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ. By default, the value will be the time that the
+ // request is made. Requirement:
+ //
+ // * The time specified for EndTimeExclusive must be
+ // after the time for StartTimeInclusive.
+ EndTimeExclusive *time.Time
+
+ // The pagination token specifying which page of results to return in the response.
+ // If no token is provided, the default page is the first page. Default value: null
+ NextToken *string
+
+ // Specify the start time for the position history in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ. By default, the value will be 24 hours prior to the
+ // time that the request is made. Requirement:
+ //
+ // * The time specified for
+ // StartTimeInclusive must be before EndTimeExclusive.
+ StartTimeInclusive *time.Time
+}
+
+type GetDevicePositionHistoryOutput struct {
+
+ // Contains the position history details for the requested device.
+ //
+ // This member is required.
+ DevicePositions []types.DevicePosition
+
+ // A pagination token indicating there are additional pages available. You can use
+ // the token in a following request to fetch the next set of results.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetDevicePositionHistoryMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpGetDevicePositionHistory{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetDevicePositionHistory{}, 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 = addOpGetDevicePositionHistoryValidationMiddleware(stack); 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
+}
+
+// GetDevicePositionHistoryAPIClient is a client that implements the
+// GetDevicePositionHistory operation.
+type GetDevicePositionHistoryAPIClient interface {
+ GetDevicePositionHistory(context.Context, *GetDevicePositionHistoryInput, ...func(*Options)) (*GetDevicePositionHistoryOutput, error)
+}
+
+var _ GetDevicePositionHistoryAPIClient = (*Client)(nil)
+
+// GetDevicePositionHistoryPaginatorOptions is the paginator options for
+// GetDevicePositionHistory
+type GetDevicePositionHistoryPaginatorOptions struct {
+ // 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
+}
+
+// GetDevicePositionHistoryPaginator is a paginator for GetDevicePositionHistory
+type GetDevicePositionHistoryPaginator struct {
+ options GetDevicePositionHistoryPaginatorOptions
+ client GetDevicePositionHistoryAPIClient
+ params *GetDevicePositionHistoryInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewGetDevicePositionHistoryPaginator returns a new
+// GetDevicePositionHistoryPaginator
+func NewGetDevicePositionHistoryPaginator(client GetDevicePositionHistoryAPIClient, params *GetDevicePositionHistoryInput, optFns ...func(*GetDevicePositionHistoryPaginatorOptions)) *GetDevicePositionHistoryPaginator {
+ if params == nil {
+ params = &GetDevicePositionHistoryInput{}
+ }
+
+ options := GetDevicePositionHistoryPaginatorOptions{}
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &GetDevicePositionHistoryPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *GetDevicePositionHistoryPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next GetDevicePositionHistory page.
+func (p *GetDevicePositionHistoryPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*GetDevicePositionHistoryOutput, error) {
+ if !p.HasMorePages() {
+ return nil, fmt.Errorf("no more pages available")
+ }
+
+ params := *p.params
+ params.NextToken = p.nextToken
+
+ result, err := p.client.GetDevicePositionHistory(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
+}
diff --git a/service/location/api_op_GetGeofence.go b/service/location/api_op_GetGeofence.go
new file mode 100644
index 00000000000..66ac33013a6
--- /dev/null
+++ b/service/location/api_op_GetGeofence.go
@@ -0,0 +1,151 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Retrieves the geofence details from a geofence collection.
+func (c *Client) GetGeofence(ctx context.Context, params *GetGeofenceInput, optFns ...func(*Options)) (*GetGeofenceOutput, error) {
+ if params == nil {
+ params = &GetGeofenceInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetGeofence", params, optFns, addOperationGetGeofenceMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetGeofenceOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetGeofenceInput struct {
+
+ // The geofence collection storing the target geofence.
+ //
+ // This member is required.
+ CollectionName *string
+
+ // The geofence you're retrieving details for.
+ //
+ // This member is required.
+ GeofenceId *string
+}
+
+type GetGeofenceOutput struct {
+
+ // The timestamp for when the geofence collection was created in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // The geofence identifier.
+ //
+ // This member is required.
+ GeofenceId *string
+
+ // Contains the geofence geometry details describing a polygon.
+ //
+ // This member is required.
+ Geometry *types.GeofenceGeometry
+
+ // Identifies the state of the geofence. A geofence will hold one of the following
+ // states:
+ //
+ // * ACTIVE — The geofence has been indexed by the system.
+ //
+ // * PENDING —
+ // The geofence is being processed by the system.
+ //
+ // * FAILED — The geofence failed
+ // to be indexed by the system.
+ //
+ // * DELETED — The geofence has been deleted from the
+ // system index.
+ //
+ // * DELETING — The geofence is being deleted from the system index.
+ //
+ // This member is required.
+ Status *string
+
+ // The timestamp for when the geofence collection was last updated in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ
+ //
+ // This member is required.
+ UpdateTime *time.Time
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetGeofenceMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpGetGeofence{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetGeofence{}, 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 = addOpGetGeofenceValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_GetMapGlyphs.go b/service/location/api_op_GetMapGlyphs.go
new file mode 100644
index 00000000000..ec3b2ddf07d
--- /dev/null
+++ b/service/location/api_op_GetMapGlyphs.go
@@ -0,0 +1,120 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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"
+)
+
+// Retrieves glyphs used to display labels on a map.
+func (c *Client) GetMapGlyphs(ctx context.Context, params *GetMapGlyphsInput, optFns ...func(*Options)) (*GetMapGlyphsOutput, error) {
+ if params == nil {
+ params = &GetMapGlyphsInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetMapGlyphs", params, optFns, addOperationGetMapGlyphsMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetMapGlyphsOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetMapGlyphsInput struct {
+
+ // A comma-separated list of fonts to load glyphs from in order of preference.. For
+ // example, Noto Sans, Arial Unicode.
+ //
+ // This member is required.
+ FontStack *string
+
+ // A Unicode range of characters to download glyphs for. Each response will contain
+ // 256 characters. For example, 0-255 includes all characters from range U+0000 to
+ // 00FF. Must be aligned to multiples of 256.
+ //
+ // This member is required.
+ FontUnicodeRange *string
+
+ // The map resource associated with the glyph file.
+ //
+ // This member is required.
+ MapName *string
+}
+
+type GetMapGlyphsOutput struct {
+
+ // The blob's content type.
+ Blob []byte
+
+ // The map glyph content type. For example, application/octet-stream.
+ ContentType *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetMapGlyphsMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpGetMapGlyphs{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetMapGlyphs{}, 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 = addOpGetMapGlyphsValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_GetMapSprites.go b/service/location/api_op_GetMapSprites.go
new file mode 100644
index 00000000000..cd7bb10deec
--- /dev/null
+++ b/service/location/api_op_GetMapSprites.go
@@ -0,0 +1,129 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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"
+)
+
+// Retrieves the sprite sheet corresponding to a map resource. The sprite sheet is
+// a PNG image paired with a JSON document describing the offsets of individual
+// icons that will be displayed on a rendered map.
+func (c *Client) GetMapSprites(ctx context.Context, params *GetMapSpritesInput, optFns ...func(*Options)) (*GetMapSpritesOutput, error) {
+ if params == nil {
+ params = &GetMapSpritesInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetMapSprites", params, optFns, addOperationGetMapSpritesMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetMapSpritesOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetMapSpritesInput struct {
+
+ // The name of the sprite file. Use the following file names for the sprite sheet:
+ //
+ // *
+ // sprites.png
+ //
+ // * sprites@2x.png for high pixel density displays
+ //
+ // For the JSON
+ // document contain image offsets. Use the following file names:
+ //
+ // * sprites.json
+ //
+ // *
+ // sprites@2x.json for high pixel density displays
+ //
+ // This member is required.
+ FileName *string
+
+ // The map resource associated with the sprite file.
+ //
+ // This member is required.
+ MapName *string
+}
+
+type GetMapSpritesOutput struct {
+
+ // Contains the body of the sprite sheet or JSON offset file.
+ Blob []byte
+
+ // The content type of the sprite sheet and offsets. For example, the sprite sheet
+ // content type is image/png, and the sprite offset JSON document is
+ // application/json.
+ ContentType *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetMapSpritesMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpGetMapSprites{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetMapSprites{}, 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 = addOpGetMapSpritesValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_GetMapStyleDescriptor.go b/service/location/api_op_GetMapStyleDescriptor.go
new file mode 100644
index 00000000000..84be2684bbe
--- /dev/null
+++ b/service/location/api_op_GetMapStyleDescriptor.go
@@ -0,0 +1,110 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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"
+)
+
+// Retrieves the map style descriptor from a map resource. The style descriptor
+// contains specifications on how features render on a map. For example, what data
+// to display, what order to display the data in, and the style for the data. Style
+// descriptors follow the Mapbox Style Specification.
+func (c *Client) GetMapStyleDescriptor(ctx context.Context, params *GetMapStyleDescriptorInput, optFns ...func(*Options)) (*GetMapStyleDescriptorOutput, error) {
+ if params == nil {
+ params = &GetMapStyleDescriptorInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetMapStyleDescriptor", params, optFns, addOperationGetMapStyleDescriptorMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetMapStyleDescriptorOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetMapStyleDescriptorInput struct {
+
+ // The map resource to retrieve the style descriptor from.
+ //
+ // This member is required.
+ MapName *string
+}
+
+type GetMapStyleDescriptorOutput struct {
+
+ // Contains the body of the style descriptor.
+ Blob []byte
+
+ // The style descriptor's content type. For example, application/json.
+ ContentType *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetMapStyleDescriptorMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpGetMapStyleDescriptor{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetMapStyleDescriptor{}, 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 = addOpGetMapStyleDescriptorValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_GetMapTile.go b/service/location/api_op_GetMapTile.go
new file mode 100644
index 00000000000..afc56cfddd9
--- /dev/null
+++ b/service/location/api_op_GetMapTile.go
@@ -0,0 +1,127 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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"
+)
+
+// Retrieves a vector data tile from the map resource. Map tiles are used by
+// clients to render a map. They are addressed using a grid arrangement with an X
+// coordinate, Y coordinate, and Z (zoom) level. The origin (0, 0) is the top left
+// of the map. Increasing the zoom level by 1 doubles both the X and Y dimensions,
+// so a tile containing data for the entire world at (0/0/0) will be split into 4
+// tiles at zoom 1 (1/0/0, 1/0/1, 1/1/0, 1/1/1).
+func (c *Client) GetMapTile(ctx context.Context, params *GetMapTileInput, optFns ...func(*Options)) (*GetMapTileOutput, error) {
+ if params == nil {
+ params = &GetMapTileInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetMapTile", params, optFns, addOperationGetMapTileMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetMapTileOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetMapTileInput struct {
+
+ // The map resource to retrieve the map tiles from.
+ //
+ // This member is required.
+ MapName *string
+
+ // The X axis value for the map tile.
+ //
+ // This member is required.
+ X *string
+
+ // The Y axis value for the map tile.
+ //
+ // This member is required.
+ Y *string
+
+ // The zoom value for the map tile.
+ //
+ // This member is required.
+ Z *string
+}
+
+type GetMapTileOutput struct {
+
+ // Contains Mapbox Vector Tile (MVT) data.
+ Blob []byte
+
+ // The map tile's content type. For example, application/vnd.mapbox-vector-tile.
+ ContentType *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetMapTileMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpGetMapTile{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetMapTile{}, 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 = addOpGetMapTileValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_ListGeofenceCollections.go b/service/location/api_op_ListGeofenceCollections.go
new file mode 100644
index 00000000000..22d350dec0a
--- /dev/null
+++ b/service/location/api_op_ListGeofenceCollections.go
@@ -0,0 +1,201 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Lists geofence collections in your AWS account.
+func (c *Client) ListGeofenceCollections(ctx context.Context, params *ListGeofenceCollectionsInput, optFns ...func(*Options)) (*ListGeofenceCollectionsOutput, error) {
+ if params == nil {
+ params = &ListGeofenceCollectionsInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "ListGeofenceCollections", params, optFns, addOperationListGeofenceCollectionsMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ListGeofenceCollectionsOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ListGeofenceCollectionsInput struct {
+
+ // An optional limit for the number of resources returned in a single call. Default
+ // value: 100
+ MaxResults *int32
+
+ // The pagination token specifying which page of results to return in the response.
+ // If no token is provided, the default page is the first page. Default value: null
+ NextToken *string
+}
+
+type ListGeofenceCollectionsOutput struct {
+
+ // Lists the geofence collections that exist in your AWS account.
+ //
+ // This member is required.
+ Entries []types.ListGeofenceCollectionsResponseEntry
+
+ // A pagination token indicating there are additional pages available. You can use
+ // the token in a following request to fetch the next set of results.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationListGeofenceCollectionsMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpListGeofenceCollections{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListGeofenceCollections{}, 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 = 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
+}
+
+// ListGeofenceCollectionsAPIClient is a client that implements the
+// ListGeofenceCollections operation.
+type ListGeofenceCollectionsAPIClient interface {
+ ListGeofenceCollections(context.Context, *ListGeofenceCollectionsInput, ...func(*Options)) (*ListGeofenceCollectionsOutput, error)
+}
+
+var _ ListGeofenceCollectionsAPIClient = (*Client)(nil)
+
+// ListGeofenceCollectionsPaginatorOptions is the paginator options for
+// ListGeofenceCollections
+type ListGeofenceCollectionsPaginatorOptions struct {
+ // An optional limit for the number of resources returned in a single call. Default
+ // value: 100
+ 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
+}
+
+// ListGeofenceCollectionsPaginator is a paginator for ListGeofenceCollections
+type ListGeofenceCollectionsPaginator struct {
+ options ListGeofenceCollectionsPaginatorOptions
+ client ListGeofenceCollectionsAPIClient
+ params *ListGeofenceCollectionsInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewListGeofenceCollectionsPaginator returns a new
+// ListGeofenceCollectionsPaginator
+func NewListGeofenceCollectionsPaginator(client ListGeofenceCollectionsAPIClient, params *ListGeofenceCollectionsInput, optFns ...func(*ListGeofenceCollectionsPaginatorOptions)) *ListGeofenceCollectionsPaginator {
+ if params == nil {
+ params = &ListGeofenceCollectionsInput{}
+ }
+
+ options := ListGeofenceCollectionsPaginatorOptions{}
+ if params.MaxResults != nil {
+ options.Limit = *params.MaxResults
+ }
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &ListGeofenceCollectionsPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *ListGeofenceCollectionsPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next ListGeofenceCollections page.
+func (p *ListGeofenceCollectionsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListGeofenceCollectionsOutput, 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.ListGeofenceCollections(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
+}
diff --git a/service/location/api_op_ListGeofences.go b/service/location/api_op_ListGeofences.go
new file mode 100644
index 00000000000..6fa60817658
--- /dev/null
+++ b/service/location/api_op_ListGeofences.go
@@ -0,0 +1,189 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Lists geofences stored in a given geofence collection.
+func (c *Client) ListGeofences(ctx context.Context, params *ListGeofencesInput, optFns ...func(*Options)) (*ListGeofencesOutput, error) {
+ if params == nil {
+ params = &ListGeofencesInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "ListGeofences", params, optFns, addOperationListGeofencesMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ListGeofencesOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ListGeofencesInput struct {
+
+ // The name of the geofence collection storing the list of geofences.
+ //
+ // This member is required.
+ CollectionName *string
+
+ // The pagination token specifying which page of results to return in the response.
+ // If no token is provided, the default page is the first page. Default value: null
+ NextToken *string
+}
+
+type ListGeofencesOutput struct {
+
+ // Contains a list of geofences stored in the geofence collection.
+ //
+ // This member is required.
+ Entries []types.ListGeofenceResponseEntry
+
+ // A pagination token indicating there are additional pages available. You can use
+ // the token in a following request to fetch the next set of results.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationListGeofencesMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpListGeofences{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListGeofences{}, 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 = addOpListGeofencesValidationMiddleware(stack); 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
+}
+
+// ListGeofencesAPIClient is a client that implements the ListGeofences operation.
+type ListGeofencesAPIClient interface {
+ ListGeofences(context.Context, *ListGeofencesInput, ...func(*Options)) (*ListGeofencesOutput, error)
+}
+
+var _ ListGeofencesAPIClient = (*Client)(nil)
+
+// ListGeofencesPaginatorOptions is the paginator options for ListGeofences
+type ListGeofencesPaginatorOptions struct {
+ // 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
+}
+
+// ListGeofencesPaginator is a paginator for ListGeofences
+type ListGeofencesPaginator struct {
+ options ListGeofencesPaginatorOptions
+ client ListGeofencesAPIClient
+ params *ListGeofencesInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewListGeofencesPaginator returns a new ListGeofencesPaginator
+func NewListGeofencesPaginator(client ListGeofencesAPIClient, params *ListGeofencesInput, optFns ...func(*ListGeofencesPaginatorOptions)) *ListGeofencesPaginator {
+ if params == nil {
+ params = &ListGeofencesInput{}
+ }
+
+ options := ListGeofencesPaginatorOptions{}
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &ListGeofencesPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *ListGeofencesPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next ListGeofences page.
+func (p *ListGeofencesPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListGeofencesOutput, error) {
+ if !p.HasMorePages() {
+ return nil, fmt.Errorf("no more pages available")
+ }
+
+ params := *p.params
+ params.NextToken = p.nextToken
+
+ result, err := p.client.ListGeofences(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
+}
diff --git a/service/location/api_op_ListMaps.go b/service/location/api_op_ListMaps.go
new file mode 100644
index 00000000000..14df0007f72
--- /dev/null
+++ b/service/location/api_op_ListMaps.go
@@ -0,0 +1,198 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Lists map resources in your AWS account.
+func (c *Client) ListMaps(ctx context.Context, params *ListMapsInput, optFns ...func(*Options)) (*ListMapsOutput, error) {
+ if params == nil {
+ params = &ListMapsInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "ListMaps", params, optFns, addOperationListMapsMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ListMapsOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ListMapsInput struct {
+
+ // An optional limit for the number of resources returned in a single call. Default
+ // value: 100
+ MaxResults *int32
+
+ // The pagination token specifying which page of results to return in the response.
+ // If no token is provided, the default page is the first page. Default value: null
+ NextToken *string
+}
+
+type ListMapsOutput struct {
+
+ // Contains a list of maps in your AWS account
+ //
+ // This member is required.
+ Entries []types.ListMapsResponseEntry
+
+ // A pagination token indicating there are additional pages available. You can use
+ // the token in a following request to fetch the next set of results.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationListMapsMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpListMaps{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListMaps{}, 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 = 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
+}
+
+// ListMapsAPIClient is a client that implements the ListMaps operation.
+type ListMapsAPIClient interface {
+ ListMaps(context.Context, *ListMapsInput, ...func(*Options)) (*ListMapsOutput, error)
+}
+
+var _ ListMapsAPIClient = (*Client)(nil)
+
+// ListMapsPaginatorOptions is the paginator options for ListMaps
+type ListMapsPaginatorOptions struct {
+ // An optional limit for the number of resources returned in a single call. Default
+ // value: 100
+ 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
+}
+
+// ListMapsPaginator is a paginator for ListMaps
+type ListMapsPaginator struct {
+ options ListMapsPaginatorOptions
+ client ListMapsAPIClient
+ params *ListMapsInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewListMapsPaginator returns a new ListMapsPaginator
+func NewListMapsPaginator(client ListMapsAPIClient, params *ListMapsInput, optFns ...func(*ListMapsPaginatorOptions)) *ListMapsPaginator {
+ if params == nil {
+ params = &ListMapsInput{}
+ }
+
+ options := ListMapsPaginatorOptions{}
+ if params.MaxResults != nil {
+ options.Limit = *params.MaxResults
+ }
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &ListMapsPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *ListMapsPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next ListMaps page.
+func (p *ListMapsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListMapsOutput, 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.ListMaps(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
+}
diff --git a/service/location/api_op_ListPlaceIndexes.go b/service/location/api_op_ListPlaceIndexes.go
new file mode 100644
index 00000000000..7db6c1701e3
--- /dev/null
+++ b/service/location/api_op_ListPlaceIndexes.go
@@ -0,0 +1,199 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Lists Place index resources in your AWS account.
+func (c *Client) ListPlaceIndexes(ctx context.Context, params *ListPlaceIndexesInput, optFns ...func(*Options)) (*ListPlaceIndexesOutput, error) {
+ if params == nil {
+ params = &ListPlaceIndexesInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "ListPlaceIndexes", params, optFns, addOperationListPlaceIndexesMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ListPlaceIndexesOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ListPlaceIndexesInput struct {
+
+ // An optional limit for the maximum number of results returned in a single call.
+ // Default value: 100
+ MaxResults *int32
+
+ // The pagination token specifying which page of results to return in the response.
+ // If no token is provided, the default page is the first page. Default value: null
+ NextToken *string
+}
+
+type ListPlaceIndexesOutput struct {
+
+ // Lists the Place index resources that exist in your AWS account
+ //
+ // This member is required.
+ Entries []types.ListPlaceIndexesResponseEntry
+
+ // A pagination token indicating there are additional pages available. You can use
+ // the token in a following request to fetch the next set of results.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationListPlaceIndexesMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpListPlaceIndexes{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListPlaceIndexes{}, 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 = 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
+}
+
+// ListPlaceIndexesAPIClient is a client that implements the ListPlaceIndexes
+// operation.
+type ListPlaceIndexesAPIClient interface {
+ ListPlaceIndexes(context.Context, *ListPlaceIndexesInput, ...func(*Options)) (*ListPlaceIndexesOutput, error)
+}
+
+var _ ListPlaceIndexesAPIClient = (*Client)(nil)
+
+// ListPlaceIndexesPaginatorOptions is the paginator options for ListPlaceIndexes
+type ListPlaceIndexesPaginatorOptions struct {
+ // An optional limit for the maximum number of results returned in a single call.
+ // Default value: 100
+ 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
+}
+
+// ListPlaceIndexesPaginator is a paginator for ListPlaceIndexes
+type ListPlaceIndexesPaginator struct {
+ options ListPlaceIndexesPaginatorOptions
+ client ListPlaceIndexesAPIClient
+ params *ListPlaceIndexesInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewListPlaceIndexesPaginator returns a new ListPlaceIndexesPaginator
+func NewListPlaceIndexesPaginator(client ListPlaceIndexesAPIClient, params *ListPlaceIndexesInput, optFns ...func(*ListPlaceIndexesPaginatorOptions)) *ListPlaceIndexesPaginator {
+ if params == nil {
+ params = &ListPlaceIndexesInput{}
+ }
+
+ options := ListPlaceIndexesPaginatorOptions{}
+ if params.MaxResults != nil {
+ options.Limit = *params.MaxResults
+ }
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &ListPlaceIndexesPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *ListPlaceIndexesPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next ListPlaceIndexes page.
+func (p *ListPlaceIndexesPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListPlaceIndexesOutput, 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.ListPlaceIndexes(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
+}
diff --git a/service/location/api_op_ListTrackerConsumers.go b/service/location/api_op_ListTrackerConsumers.go
new file mode 100644
index 00000000000..0234ea4bfb5
--- /dev/null
+++ b/service/location/api_op_ListTrackerConsumers.go
@@ -0,0 +1,208 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Lists geofence collections currently associated to the given tracker resource.
+func (c *Client) ListTrackerConsumers(ctx context.Context, params *ListTrackerConsumersInput, optFns ...func(*Options)) (*ListTrackerConsumersOutput, error) {
+ if params == nil {
+ params = &ListTrackerConsumersInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "ListTrackerConsumers", params, optFns, addOperationListTrackerConsumersMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ListTrackerConsumersOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ListTrackerConsumersInput struct {
+
+ // The tracker resource whose associated geofence collections you want to list.
+ //
+ // This member is required.
+ TrackerName *string
+
+ // An optional limit for the number of resources returned in a single call. Default
+ // value: 100
+ MaxResults *int32
+
+ // The pagination token specifying which page of results to return in the response.
+ // If no token is provided, the default page is the first page. Default value: null
+ NextToken *string
+}
+
+type ListTrackerConsumersOutput struct {
+
+ // Contains the list of geofence collection ARNs associated to the tracker
+ // resource.
+ //
+ // This member is required.
+ ConsumerArns []string
+
+ // A pagination token indicating there are additional pages available. You can use
+ // the token in a following request to fetch the next set of results.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationListTrackerConsumersMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpListTrackerConsumers{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListTrackerConsumers{}, 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 = addOpListTrackerConsumersValidationMiddleware(stack); 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
+}
+
+// ListTrackerConsumersAPIClient is a client that implements the
+// ListTrackerConsumers operation.
+type ListTrackerConsumersAPIClient interface {
+ ListTrackerConsumers(context.Context, *ListTrackerConsumersInput, ...func(*Options)) (*ListTrackerConsumersOutput, error)
+}
+
+var _ ListTrackerConsumersAPIClient = (*Client)(nil)
+
+// ListTrackerConsumersPaginatorOptions is the paginator options for
+// ListTrackerConsumers
+type ListTrackerConsumersPaginatorOptions struct {
+ // An optional limit for the number of resources returned in a single call. Default
+ // value: 100
+ 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
+}
+
+// ListTrackerConsumersPaginator is a paginator for ListTrackerConsumers
+type ListTrackerConsumersPaginator struct {
+ options ListTrackerConsumersPaginatorOptions
+ client ListTrackerConsumersAPIClient
+ params *ListTrackerConsumersInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewListTrackerConsumersPaginator returns a new ListTrackerConsumersPaginator
+func NewListTrackerConsumersPaginator(client ListTrackerConsumersAPIClient, params *ListTrackerConsumersInput, optFns ...func(*ListTrackerConsumersPaginatorOptions)) *ListTrackerConsumersPaginator {
+ if params == nil {
+ params = &ListTrackerConsumersInput{}
+ }
+
+ options := ListTrackerConsumersPaginatorOptions{}
+ if params.MaxResults != nil {
+ options.Limit = *params.MaxResults
+ }
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &ListTrackerConsumersPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *ListTrackerConsumersPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next ListTrackerConsumers page.
+func (p *ListTrackerConsumersPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListTrackerConsumersOutput, 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.ListTrackerConsumers(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
+}
diff --git a/service/location/api_op_ListTrackers.go b/service/location/api_op_ListTrackers.go
new file mode 100644
index 00000000000..12c859087b1
--- /dev/null
+++ b/service/location/api_op_ListTrackers.go
@@ -0,0 +1,199 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Lists tracker resources in your AWS account.
+func (c *Client) ListTrackers(ctx context.Context, params *ListTrackersInput, optFns ...func(*Options)) (*ListTrackersOutput, error) {
+ if params == nil {
+ params = &ListTrackersInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "ListTrackers", params, optFns, addOperationListTrackersMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ListTrackersOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ListTrackersInput struct {
+
+ // An optional limit for the number of resources returned in a single call. Default
+ // value: 100
+ MaxResults *int32
+
+ // The pagination token specifying which page of results to return in the response.
+ // If no token is provided, the default page is the first page. Default value: null
+ NextToken *string
+}
+
+type ListTrackersOutput struct {
+
+ // Contains tracker resources in your AWS account. Details include tracker name,
+ // description and timestamps for when the tracker was created and last updated.
+ //
+ // This member is required.
+ Entries []types.ListTrackersResponseEntry
+
+ // A pagination token indicating there are additional pages available. You can use
+ // the token in a following request to fetch the next set of results.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationListTrackersMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpListTrackers{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListTrackers{}, 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 = 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
+}
+
+// ListTrackersAPIClient is a client that implements the ListTrackers operation.
+type ListTrackersAPIClient interface {
+ ListTrackers(context.Context, *ListTrackersInput, ...func(*Options)) (*ListTrackersOutput, error)
+}
+
+var _ ListTrackersAPIClient = (*Client)(nil)
+
+// ListTrackersPaginatorOptions is the paginator options for ListTrackers
+type ListTrackersPaginatorOptions struct {
+ // An optional limit for the number of resources returned in a single call. Default
+ // value: 100
+ 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
+}
+
+// ListTrackersPaginator is a paginator for ListTrackers
+type ListTrackersPaginator struct {
+ options ListTrackersPaginatorOptions
+ client ListTrackersAPIClient
+ params *ListTrackersInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewListTrackersPaginator returns a new ListTrackersPaginator
+func NewListTrackersPaginator(client ListTrackersAPIClient, params *ListTrackersInput, optFns ...func(*ListTrackersPaginatorOptions)) *ListTrackersPaginator {
+ if params == nil {
+ params = &ListTrackersInput{}
+ }
+
+ options := ListTrackersPaginatorOptions{}
+ if params.MaxResults != nil {
+ options.Limit = *params.MaxResults
+ }
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &ListTrackersPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *ListTrackersPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next ListTrackers page.
+func (p *ListTrackersPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListTrackersOutput, 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.ListTrackers(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
+}
diff --git a/service/location/api_op_PutGeofence.go b/service/location/api_op_PutGeofence.go
new file mode 100644
index 00000000000..f0c82a16f17
--- /dev/null
+++ b/service/location/api_op_PutGeofence.go
@@ -0,0 +1,136 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Stores a geofence geometry in a given geofence collection, or updates the
+// geometry of an existing geofence if a geofence ID is included in the request.
+func (c *Client) PutGeofence(ctx context.Context, params *PutGeofenceInput, optFns ...func(*Options)) (*PutGeofenceOutput, error) {
+ if params == nil {
+ params = &PutGeofenceInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "PutGeofence", params, optFns, addOperationPutGeofenceMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*PutGeofenceOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type PutGeofenceInput struct {
+
+ // The geofence collection to store the geofence in.
+ //
+ // This member is required.
+ CollectionName *string
+
+ // An identifier for the geofence. For example, ExampleGeofence-1.
+ //
+ // This member is required.
+ GeofenceId *string
+
+ // Contains the polygon details to specify the position of the geofence. Each
+ // geofence polygon
+ // (https://docs.aws.amazon.com/location-geofences/latest/APIReference/API_GeofenceGeometry.html)
+ // can have a maximum of 1,000 vertices.
+ //
+ // This member is required.
+ Geometry *types.GeofenceGeometry
+}
+
+type PutGeofenceOutput struct {
+
+ // The timestamp for when the geofence was created in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // The geofence identifier entered in the request.
+ //
+ // This member is required.
+ GeofenceId *string
+
+ // The timestamp for when the geofence was last updated in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ
+ //
+ // This member is required.
+ UpdateTime *time.Time
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationPutGeofenceMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpPutGeofence{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpPutGeofence{}, 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 = addOpPutGeofenceValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_SearchPlaceIndexForPosition.go b/service/location/api_op_SearchPlaceIndexForPosition.go
new file mode 100644
index 00000000000..39f4903df22
--- /dev/null
+++ b/service/location/api_op_SearchPlaceIndexForPosition.go
@@ -0,0 +1,137 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Reverse geocodes a given coordinate and returns a legible address. Allows you to
+// search for Places or points of interest near a given position. By using Places,
+// you agree that AWS may transmit your API queries to your selected third party
+// provider for processing, which may be outside the AWS region you are currently
+// using. Because of licensing limitations, you may not use HERE to store results
+// for locations in Japan. For more information, see the AWS Service Terms
+// (https://aws.amazon.com/service-terms/) for Amazon Location Service.
+func (c *Client) SearchPlaceIndexForPosition(ctx context.Context, params *SearchPlaceIndexForPositionInput, optFns ...func(*Options)) (*SearchPlaceIndexForPositionOutput, error) {
+ if params == nil {
+ params = &SearchPlaceIndexForPositionInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "SearchPlaceIndexForPosition", params, optFns, addOperationSearchPlaceIndexForPositionMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*SearchPlaceIndexForPositionOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type SearchPlaceIndexForPositionInput struct {
+
+ // The name of the Place index resource you want to use for the search.
+ //
+ // This member is required.
+ IndexName *string
+
+ // Specifies a coordinate for the query defined by a longitude, and latitude.
+ //
+ // *
+ // The first position is the X coordinate, or longitude.
+ //
+ // * The second position is
+ // the Y coordinate, or latitude.
+ //
+ // For example,
+ // position=xLongitude&position=yLatitude .
+ //
+ // This member is required.
+ Position []float64
+
+ // An optional paramer. The maximum number of results returned per request. Default
+ // value: 50
+ MaxResults int32
+}
+
+type SearchPlaceIndexForPositionOutput struct {
+
+ // Returns a list of Places closest to the specified position. Each result contains
+ // additional information about the Places returned.
+ //
+ // This member is required.
+ Results []types.SearchForPositionResult
+
+ // Contains a summary of the request.
+ //
+ // This member is required.
+ Summary *types.SearchPlaceIndexForPositionSummary
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationSearchPlaceIndexForPositionMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpSearchPlaceIndexForPosition{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpSearchPlaceIndexForPosition{}, 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 = addOpSearchPlaceIndexForPositionValidationMiddleware(stack); 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
+}
diff --git a/service/location/api_op_SearchPlaceIndexForText.go b/service/location/api_op_SearchPlaceIndexForText.go
new file mode 100644
index 00000000000..b167c854086
--- /dev/null
+++ b/service/location/api_op_SearchPlaceIndexForText.go
@@ -0,0 +1,178 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+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/location/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Geocodes free-form text, such as an address, name, city, or region to allow you
+// to search for Places or points of interest. Includes the option to apply
+// additional parameters to narrow your list of results. You can search for places
+// near a given position using BiasPosition, or filter results within a bounding
+// box using FilterBBox. Providing both parameters simultaneously returns an error.
+// By using Places, you agree that AWS may transmit your API queries to your
+// selected third party provider for processing, which may be outside the AWS
+// region you are currently using. Also, when using HERE as your data provider, you
+// may not (a) use HERE Places for Asset Management, or (b) select the Storage
+// option for the IntendedUse parameter when requesting Places in Japan. For more
+// information, see the AWS Service Terms (https://aws.amazon.com/service-terms/)
+// for Amazon Location Service.
+func (c *Client) SearchPlaceIndexForText(ctx context.Context, params *SearchPlaceIndexForTextInput, optFns ...func(*Options)) (*SearchPlaceIndexForTextOutput, error) {
+ if params == nil {
+ params = &SearchPlaceIndexForTextInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "SearchPlaceIndexForText", params, optFns, addOperationSearchPlaceIndexForTextMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*SearchPlaceIndexForTextOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type SearchPlaceIndexForTextInput struct {
+
+ // The name of the Place index resource you want to use for the search.
+ //
+ // This member is required.
+ IndexName *string
+
+ // The address, name, city, or region to be used in the search. In free-form text
+ // format. For example, 123 Any Street.
+ //
+ // This member is required.
+ Text *string
+
+ // Searches for results closest to the given position. An optional parameter
+ // defined by longitude, and latitude.
+ //
+ // * The first bias position is the X
+ // coordinate, or longitude.
+ //
+ // * The second bias position is the Y coordinate, or
+ // latitude.
+ //
+ // For example, bias=xLongitude&bias=yLatitude.
+ BiasPosition []float64
+
+ // Filters the results by returning only Places within the provided bounding box.
+ // An optional parameter. The first 2 bbox parameters describe the lower southwest
+ // corner:
+ //
+ // * The first bbox position is the X coordinate or longitude of the lower
+ // southwest corner.
+ //
+ // * The second bbox position is the Y coordinate or latitude of
+ // the lower southwest corner.
+ //
+ // For example, bbox=xLongitudeSW&bbox=yLatitudeSW.
+ // The next bbox parameters describe the upper northeast corner:
+ //
+ // * The third bbox
+ // position is the X coordinate, or longitude of the upper northeast corner.
+ //
+ // * The
+ // fourth bbox position is the Y coordinate, or longitude of the upper northeast
+ // corner.
+ //
+ // For example, bbox=xLongitudeNE&bbox=yLatitudeNE
+ FilterBBox []float64
+
+ // Limits the search to the given a list of countries/regions. An optional
+ // parameter.
+ //
+ // * Use the ISO 3166 (https://www.iso.org/iso-3166-country-codes.html)
+ // 3-digit country code. For example, Australia uses three upper-case characters:
+ // AUS.
+ FilterCountries []string
+
+ // An optional parameter. The maximum number of results returned per request. The
+ // default: 50
+ MaxResults int32
+}
+
+type SearchPlaceIndexForTextOutput struct {
+
+ // A list of Places closest to the specified position. Each result contains
+ // additional information about the specific point of interest.
+ //
+ // This member is required.
+ Results []types.SearchForTextResult
+
+ // Contains a summary of the request. Contains the BiasPosition, DataSource,
+ // FilterBBox, FilterCountries, MaxResults, ResultBBox, and Text.
+ //
+ // This member is required.
+ Summary *types.SearchPlaceIndexForTextSummary
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationSearchPlaceIndexForTextMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpSearchPlaceIndexForText{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpSearchPlaceIndexForText{}, 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 = addOpSearchPlaceIndexForTextValidationMiddleware(stack); 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
+}
diff --git a/service/location/deserializers.go b/service/location/deserializers.go
new file mode 100644
index 00000000000..41da6825f90
--- /dev/null
+++ b/service/location/deserializers.go
@@ -0,0 +1,8273 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+import (
+ "bytes"
+ "context"
+ "encoding/json"
+ "fmt"
+ "github.com/aws/aws-sdk-go-v2/aws/protocol/restjson"
+ "github.com/aws/aws-sdk-go-v2/service/location/types"
+ smithy "github.com/aws/smithy-go"
+ smithyio "github.com/aws/smithy-go/io"
+ "github.com/aws/smithy-go/middleware"
+ "github.com/aws/smithy-go/ptr"
+ smithytime "github.com/aws/smithy-go/time"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "io"
+ "io/ioutil"
+ "strings"
+)
+
+type awsRestjson1_deserializeOpAssociateTrackerConsumer struct {
+}
+
+func (*awsRestjson1_deserializeOpAssociateTrackerConsumer) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpAssociateTrackerConsumer) 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_deserializeOpErrorAssociateTrackerConsumer(response, &metadata)
+ }
+ output := &AssociateTrackerConsumerOutput{}
+ out.Result = output
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorAssociateTrackerConsumer(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("ConflictException", errorCode):
+ return awsRestjson1_deserializeErrorConflictException(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_deserializeOpBatchDeleteGeofence struct {
+}
+
+func (*awsRestjson1_deserializeOpBatchDeleteGeofence) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpBatchDeleteGeofence) 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_deserializeOpErrorBatchDeleteGeofence(response, &metadata)
+ }
+ output := &BatchDeleteGeofenceOutput{}
+ 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_deserializeOpDocumentBatchDeleteGeofenceOutput(&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_deserializeOpErrorBatchDeleteGeofence(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_deserializeOpDocumentBatchDeleteGeofenceOutput(v **BatchDeleteGeofenceOutput, 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 *BatchDeleteGeofenceOutput
+ if *v == nil {
+ sv = &BatchDeleteGeofenceOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Errors":
+ if err := awsRestjson1_deserializeDocumentBatchDeleteGeofenceErrorList(&sv.Errors, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpBatchEvaluateGeofences struct {
+}
+
+func (*awsRestjson1_deserializeOpBatchEvaluateGeofences) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpBatchEvaluateGeofences) 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_deserializeOpErrorBatchEvaluateGeofences(response, &metadata)
+ }
+ output := &BatchEvaluateGeofencesOutput{}
+ 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_deserializeOpDocumentBatchEvaluateGeofencesOutput(&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_deserializeOpErrorBatchEvaluateGeofences(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_deserializeOpDocumentBatchEvaluateGeofencesOutput(v **BatchEvaluateGeofencesOutput, 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 *BatchEvaluateGeofencesOutput
+ if *v == nil {
+ sv = &BatchEvaluateGeofencesOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Errors":
+ if err := awsRestjson1_deserializeDocumentBatchEvaluateGeofencesErrorList(&sv.Errors, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpBatchGetDevicePosition struct {
+}
+
+func (*awsRestjson1_deserializeOpBatchGetDevicePosition) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpBatchGetDevicePosition) 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_deserializeOpErrorBatchGetDevicePosition(response, &metadata)
+ }
+ output := &BatchGetDevicePositionOutput{}
+ 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_deserializeOpDocumentBatchGetDevicePositionOutput(&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_deserializeOpErrorBatchGetDevicePosition(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_deserializeOpDocumentBatchGetDevicePositionOutput(v **BatchGetDevicePositionOutput, 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 *BatchGetDevicePositionOutput
+ if *v == nil {
+ sv = &BatchGetDevicePositionOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DevicePositions":
+ if err := awsRestjson1_deserializeDocumentDevicePositionList(&sv.DevicePositions, value); err != nil {
+ return err
+ }
+
+ case "Errors":
+ if err := awsRestjson1_deserializeDocumentBatchGetDevicePositionErrorList(&sv.Errors, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpBatchPutGeofence struct {
+}
+
+func (*awsRestjson1_deserializeOpBatchPutGeofence) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpBatchPutGeofence) 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_deserializeOpErrorBatchPutGeofence(response, &metadata)
+ }
+ output := &BatchPutGeofenceOutput{}
+ 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_deserializeOpDocumentBatchPutGeofenceOutput(&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_deserializeOpErrorBatchPutGeofence(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_deserializeOpDocumentBatchPutGeofenceOutput(v **BatchPutGeofenceOutput, 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 *BatchPutGeofenceOutput
+ if *v == nil {
+ sv = &BatchPutGeofenceOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Errors":
+ if err := awsRestjson1_deserializeDocumentBatchPutGeofenceErrorList(&sv.Errors, value); err != nil {
+ return err
+ }
+
+ case "Successes":
+ if err := awsRestjson1_deserializeDocumentBatchPutGeofenceSuccessList(&sv.Successes, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpBatchUpdateDevicePosition struct {
+}
+
+func (*awsRestjson1_deserializeOpBatchUpdateDevicePosition) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpBatchUpdateDevicePosition) 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_deserializeOpErrorBatchUpdateDevicePosition(response, &metadata)
+ }
+ output := &BatchUpdateDevicePositionOutput{}
+ 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_deserializeOpDocumentBatchUpdateDevicePositionOutput(&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_deserializeOpErrorBatchUpdateDevicePosition(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_deserializeOpDocumentBatchUpdateDevicePositionOutput(v **BatchUpdateDevicePositionOutput, 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 *BatchUpdateDevicePositionOutput
+ if *v == nil {
+ sv = &BatchUpdateDevicePositionOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Errors":
+ if err := awsRestjson1_deserializeDocumentBatchUpdateDevicePositionErrorList(&sv.Errors, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpCreateGeofenceCollection struct {
+}
+
+func (*awsRestjson1_deserializeOpCreateGeofenceCollection) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpCreateGeofenceCollection) 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_deserializeOpErrorCreateGeofenceCollection(response, &metadata)
+ }
+ output := &CreateGeofenceCollectionOutput{}
+ 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_deserializeOpDocumentCreateGeofenceCollectionOutput(&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_deserializeOpErrorCreateGeofenceCollection(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("ConflictException", errorCode):
+ return awsRestjson1_deserializeErrorConflictException(response, errorBody)
+
+ case strings.EqualFold("InternalServerException", errorCode):
+ return awsRestjson1_deserializeErrorInternalServerException(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_deserializeOpDocumentCreateGeofenceCollectionOutput(v **CreateGeofenceCollectionOutput, 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 *CreateGeofenceCollectionOutput
+ if *v == nil {
+ sv = &CreateGeofenceCollectionOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CollectionArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.CollectionArn = ptr.String(jtv)
+ }
+
+ case "CollectionName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceName to be of type string, got %T instead", value)
+ }
+ sv.CollectionName = ptr.String(jtv)
+ }
+
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpCreateMap struct {
+}
+
+func (*awsRestjson1_deserializeOpCreateMap) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpCreateMap) 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_deserializeOpErrorCreateMap(response, &metadata)
+ }
+ output := &CreateMapOutput{}
+ 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_deserializeOpDocumentCreateMapOutput(&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_deserializeOpErrorCreateMap(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("ConflictException", errorCode):
+ return awsRestjson1_deserializeErrorConflictException(response, errorBody)
+
+ case strings.EqualFold("InternalServerException", errorCode):
+ return awsRestjson1_deserializeErrorInternalServerException(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_deserializeOpDocumentCreateMapOutput(v **CreateMapOutput, 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 *CreateMapOutput
+ if *v == nil {
+ sv = &CreateMapOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ case "MapArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.MapArn = ptr.String(jtv)
+ }
+
+ case "MapName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceName to be of type string, got %T instead", value)
+ }
+ sv.MapName = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpCreatePlaceIndex struct {
+}
+
+func (*awsRestjson1_deserializeOpCreatePlaceIndex) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpCreatePlaceIndex) 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_deserializeOpErrorCreatePlaceIndex(response, &metadata)
+ }
+ output := &CreatePlaceIndexOutput{}
+ 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_deserializeOpDocumentCreatePlaceIndexOutput(&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_deserializeOpErrorCreatePlaceIndex(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("ConflictException", errorCode):
+ return awsRestjson1_deserializeErrorConflictException(response, errorBody)
+
+ case strings.EqualFold("InternalServerException", errorCode):
+ return awsRestjson1_deserializeErrorInternalServerException(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_deserializeOpDocumentCreatePlaceIndexOutput(v **CreatePlaceIndexOutput, 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 *CreatePlaceIndexOutput
+ if *v == nil {
+ sv = &CreatePlaceIndexOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ case "IndexArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.IndexArn = ptr.String(jtv)
+ }
+
+ case "IndexName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceName to be of type string, got %T instead", value)
+ }
+ sv.IndexName = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpCreateTracker struct {
+}
+
+func (*awsRestjson1_deserializeOpCreateTracker) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpCreateTracker) 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_deserializeOpErrorCreateTracker(response, &metadata)
+ }
+ output := &CreateTrackerOutput{}
+ 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_deserializeOpDocumentCreateTrackerOutput(&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_deserializeOpErrorCreateTracker(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("ConflictException", errorCode):
+ return awsRestjson1_deserializeErrorConflictException(response, errorBody)
+
+ case strings.EqualFold("InternalServerException", errorCode):
+ return awsRestjson1_deserializeErrorInternalServerException(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_deserializeOpDocumentCreateTrackerOutput(v **CreateTrackerOutput, 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 *CreateTrackerOutput
+ if *v == nil {
+ sv = &CreateTrackerOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ case "TrackerArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.TrackerArn = ptr.String(jtv)
+ }
+
+ case "TrackerName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceName to be of type string, got %T instead", value)
+ }
+ sv.TrackerName = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpDeleteGeofenceCollection struct {
+}
+
+func (*awsRestjson1_deserializeOpDeleteGeofenceCollection) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpDeleteGeofenceCollection) 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_deserializeOpErrorDeleteGeofenceCollection(response, &metadata)
+ }
+ output := &DeleteGeofenceCollectionOutput{}
+ out.Result = output
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorDeleteGeofenceCollection(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_deserializeOpDeleteMap struct {
+}
+
+func (*awsRestjson1_deserializeOpDeleteMap) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpDeleteMap) 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_deserializeOpErrorDeleteMap(response, &metadata)
+ }
+ output := &DeleteMapOutput{}
+ out.Result = output
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorDeleteMap(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_deserializeOpDeletePlaceIndex struct {
+}
+
+func (*awsRestjson1_deserializeOpDeletePlaceIndex) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpDeletePlaceIndex) 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_deserializeOpErrorDeletePlaceIndex(response, &metadata)
+ }
+ output := &DeletePlaceIndexOutput{}
+ out.Result = output
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorDeletePlaceIndex(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_deserializeOpDeleteTracker struct {
+}
+
+func (*awsRestjson1_deserializeOpDeleteTracker) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpDeleteTracker) 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_deserializeOpErrorDeleteTracker(response, &metadata)
+ }
+ output := &DeleteTrackerOutput{}
+ out.Result = output
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorDeleteTracker(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_deserializeOpDescribeGeofenceCollection struct {
+}
+
+func (*awsRestjson1_deserializeOpDescribeGeofenceCollection) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpDescribeGeofenceCollection) 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_deserializeOpErrorDescribeGeofenceCollection(response, &metadata)
+ }
+ output := &DescribeGeofenceCollectionOutput{}
+ 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_deserializeOpDocumentDescribeGeofenceCollectionOutput(&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_deserializeOpErrorDescribeGeofenceCollection(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_deserializeOpDocumentDescribeGeofenceCollectionOutput(v **DescribeGeofenceCollectionOutput, 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 *DescribeGeofenceCollectionOutput
+ if *v == nil {
+ sv = &DescribeGeofenceCollectionOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CollectionArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.CollectionArn = ptr.String(jtv)
+ }
+
+ case "CollectionName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceName to be of type string, got %T instead", value)
+ }
+ sv.CollectionName = ptr.String(jtv)
+ }
+
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ case "Description":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceDescription to be of type string, got %T instead", value)
+ }
+ sv.Description = ptr.String(jtv)
+ }
+
+ case "PricingPlan":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PricingPlan to be of type string, got %T instead", value)
+ }
+ sv.PricingPlan = types.PricingPlan(jtv)
+ }
+
+ case "PricingPlanDataSource":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.PricingPlanDataSource = ptr.String(jtv)
+ }
+
+ case "UpdateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.UpdateTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpDescribeMap struct {
+}
+
+func (*awsRestjson1_deserializeOpDescribeMap) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpDescribeMap) 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_deserializeOpErrorDescribeMap(response, &metadata)
+ }
+ output := &DescribeMapOutput{}
+ 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_deserializeOpDocumentDescribeMapOutput(&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_deserializeOpErrorDescribeMap(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_deserializeOpDocumentDescribeMapOutput(v **DescribeMapOutput, 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 *DescribeMapOutput
+ if *v == nil {
+ sv = &DescribeMapOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Configuration":
+ if err := awsRestjson1_deserializeDocumentMapConfiguration(&sv.Configuration, value); err != nil {
+ return err
+ }
+
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ case "DataSource":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.DataSource = ptr.String(jtv)
+ }
+
+ case "Description":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceDescription to be of type string, got %T instead", value)
+ }
+ sv.Description = ptr.String(jtv)
+ }
+
+ case "MapArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.MapArn = ptr.String(jtv)
+ }
+
+ case "MapName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceName to be of type string, got %T instead", value)
+ }
+ sv.MapName = ptr.String(jtv)
+ }
+
+ case "PricingPlan":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PricingPlan to be of type string, got %T instead", value)
+ }
+ sv.PricingPlan = types.PricingPlan(jtv)
+ }
+
+ case "UpdateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.UpdateTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpDescribePlaceIndex struct {
+}
+
+func (*awsRestjson1_deserializeOpDescribePlaceIndex) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpDescribePlaceIndex) 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_deserializeOpErrorDescribePlaceIndex(response, &metadata)
+ }
+ output := &DescribePlaceIndexOutput{}
+ 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_deserializeOpDocumentDescribePlaceIndexOutput(&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_deserializeOpErrorDescribePlaceIndex(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_deserializeOpDocumentDescribePlaceIndexOutput(v **DescribePlaceIndexOutput, 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 *DescribePlaceIndexOutput
+ if *v == nil {
+ sv = &DescribePlaceIndexOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ case "DataSource":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.DataSource = ptr.String(jtv)
+ }
+
+ case "DataSourceConfiguration":
+ if err := awsRestjson1_deserializeDocumentDataSourceConfiguration(&sv.DataSourceConfiguration, value); err != nil {
+ return err
+ }
+
+ case "Description":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceDescription to be of type string, got %T instead", value)
+ }
+ sv.Description = ptr.String(jtv)
+ }
+
+ case "IndexArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.IndexArn = ptr.String(jtv)
+ }
+
+ case "IndexName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceName to be of type string, got %T instead", value)
+ }
+ sv.IndexName = ptr.String(jtv)
+ }
+
+ case "PricingPlan":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PricingPlan to be of type string, got %T instead", value)
+ }
+ sv.PricingPlan = types.PricingPlan(jtv)
+ }
+
+ case "UpdateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.UpdateTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpDescribeTracker struct {
+}
+
+func (*awsRestjson1_deserializeOpDescribeTracker) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpDescribeTracker) 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_deserializeOpErrorDescribeTracker(response, &metadata)
+ }
+ output := &DescribeTrackerOutput{}
+ 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_deserializeOpDocumentDescribeTrackerOutput(&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_deserializeOpErrorDescribeTracker(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_deserializeOpDocumentDescribeTrackerOutput(v **DescribeTrackerOutput, 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 *DescribeTrackerOutput
+ if *v == nil {
+ sv = &DescribeTrackerOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ case "Description":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceDescription to be of type string, got %T instead", value)
+ }
+ sv.Description = ptr.String(jtv)
+ }
+
+ case "PricingPlan":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PricingPlan to be of type string, got %T instead", value)
+ }
+ sv.PricingPlan = types.PricingPlan(jtv)
+ }
+
+ case "PricingPlanDataSource":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.PricingPlanDataSource = ptr.String(jtv)
+ }
+
+ case "TrackerArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.TrackerArn = ptr.String(jtv)
+ }
+
+ case "TrackerName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceName to be of type string, got %T instead", value)
+ }
+ sv.TrackerName = ptr.String(jtv)
+ }
+
+ case "UpdateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.UpdateTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpDisassociateTrackerConsumer struct {
+}
+
+func (*awsRestjson1_deserializeOpDisassociateTrackerConsumer) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpDisassociateTrackerConsumer) 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_deserializeOpErrorDisassociateTrackerConsumer(response, &metadata)
+ }
+ output := &DisassociateTrackerConsumerOutput{}
+ out.Result = output
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorDisassociateTrackerConsumer(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_deserializeOpGetDevicePosition struct {
+}
+
+func (*awsRestjson1_deserializeOpGetDevicePosition) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpGetDevicePosition) 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_deserializeOpErrorGetDevicePosition(response, &metadata)
+ }
+ output := &GetDevicePositionOutput{}
+ 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_deserializeOpDocumentGetDevicePositionOutput(&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_deserializeOpErrorGetDevicePosition(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_deserializeOpDocumentGetDevicePositionOutput(v **GetDevicePositionOutput, 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 *GetDevicePositionOutput
+ if *v == nil {
+ sv = &GetDevicePositionOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DeviceId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Id to be of type string, got %T instead", value)
+ }
+ sv.DeviceId = ptr.String(jtv)
+ }
+
+ case "Position":
+ if err := awsRestjson1_deserializeDocumentPosition(&sv.Position, value); err != nil {
+ return err
+ }
+
+ case "ReceivedTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.ReceivedTime = ptr.Time(t)
+ }
+
+ case "SampleTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.SampleTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpGetDevicePositionHistory struct {
+}
+
+func (*awsRestjson1_deserializeOpGetDevicePositionHistory) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpGetDevicePositionHistory) 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_deserializeOpErrorGetDevicePositionHistory(response, &metadata)
+ }
+ output := &GetDevicePositionHistoryOutput{}
+ 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_deserializeOpDocumentGetDevicePositionHistoryOutput(&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_deserializeOpErrorGetDevicePositionHistory(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_deserializeOpDocumentGetDevicePositionHistoryOutput(v **GetDevicePositionHistoryOutput, 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 *GetDevicePositionHistoryOutput
+ if *v == nil {
+ sv = &GetDevicePositionHistoryOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DevicePositions":
+ if err := awsRestjson1_deserializeDocumentDevicePositionList(&sv.DevicePositions, value); err != nil {
+ return err
+ }
+
+ case "NextToken":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Token to be of type string, got %T instead", value)
+ }
+ sv.NextToken = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpGetGeofence struct {
+}
+
+func (*awsRestjson1_deserializeOpGetGeofence) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpGetGeofence) 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_deserializeOpErrorGetGeofence(response, &metadata)
+ }
+ output := &GetGeofenceOutput{}
+ 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_deserializeOpDocumentGetGeofenceOutput(&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_deserializeOpErrorGetGeofence(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_deserializeOpDocumentGetGeofenceOutput(v **GetGeofenceOutput, 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 *GetGeofenceOutput
+ if *v == nil {
+ sv = &GetGeofenceOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ case "GeofenceId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Id to be of type string, got %T instead", value)
+ }
+ sv.GeofenceId = ptr.String(jtv)
+ }
+
+ case "Geometry":
+ if err := awsRestjson1_deserializeDocumentGeofenceGeometry(&sv.Geometry, value); err != nil {
+ return err
+ }
+
+ case "Status":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.Status = ptr.String(jtv)
+ }
+
+ case "UpdateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.UpdateTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpGetMapGlyphs struct {
+}
+
+func (*awsRestjson1_deserializeOpGetMapGlyphs) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpGetMapGlyphs) 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_deserializeOpErrorGetMapGlyphs(response, &metadata)
+ }
+ output := &GetMapGlyphsOutput{}
+ out.Result = output
+
+ err = awsRestjson1_deserializeOpHttpBindingsGetMapGlyphsOutput(output, response)
+ if err != nil {
+ return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to decode response with invalid Http bindings, %w", err)}
+ }
+
+ err = awsRestjson1_deserializeOpDocumentGetMapGlyphsOutput(output, response.Body)
+ if err != nil {
+ return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to deserialize response payload, %w", err)}
+ }
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorGetMapGlyphs(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_deserializeOpHttpBindingsGetMapGlyphsOutput(v *GetMapGlyphsOutput, response *smithyhttp.Response) error {
+ if v == nil {
+ return fmt.Errorf("unsupported deserialization for nil %T", v)
+ }
+
+ if headerValues := response.Header.Values("Content-Type"); len(headerValues) != 0 {
+ headerValues[0] = strings.TrimSpace(headerValues[0])
+ v.ContentType = ptr.String(headerValues[0])
+ }
+
+ return nil
+}
+func awsRestjson1_deserializeOpDocumentGetMapGlyphsOutput(v *GetMapGlyphsOutput, body io.ReadCloser) error {
+ if v == nil {
+ return fmt.Errorf("unsupported deserialization of nil %T", v)
+ }
+
+ bs, err := ioutil.ReadAll(body)
+ if err != nil {
+ return err
+ }
+ if len(bs) > 0 {
+ v.Blob = bs
+ }
+ return nil
+}
+
+type awsRestjson1_deserializeOpGetMapSprites struct {
+}
+
+func (*awsRestjson1_deserializeOpGetMapSprites) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpGetMapSprites) 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_deserializeOpErrorGetMapSprites(response, &metadata)
+ }
+ output := &GetMapSpritesOutput{}
+ out.Result = output
+
+ err = awsRestjson1_deserializeOpHttpBindingsGetMapSpritesOutput(output, response)
+ if err != nil {
+ return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to decode response with invalid Http bindings, %w", err)}
+ }
+
+ err = awsRestjson1_deserializeOpDocumentGetMapSpritesOutput(output, response.Body)
+ if err != nil {
+ return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to deserialize response payload, %w", err)}
+ }
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorGetMapSprites(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_deserializeOpHttpBindingsGetMapSpritesOutput(v *GetMapSpritesOutput, response *smithyhttp.Response) error {
+ if v == nil {
+ return fmt.Errorf("unsupported deserialization for nil %T", v)
+ }
+
+ if headerValues := response.Header.Values("Content-Type"); len(headerValues) != 0 {
+ headerValues[0] = strings.TrimSpace(headerValues[0])
+ v.ContentType = ptr.String(headerValues[0])
+ }
+
+ return nil
+}
+func awsRestjson1_deserializeOpDocumentGetMapSpritesOutput(v *GetMapSpritesOutput, body io.ReadCloser) error {
+ if v == nil {
+ return fmt.Errorf("unsupported deserialization of nil %T", v)
+ }
+
+ bs, err := ioutil.ReadAll(body)
+ if err != nil {
+ return err
+ }
+ if len(bs) > 0 {
+ v.Blob = bs
+ }
+ return nil
+}
+
+type awsRestjson1_deserializeOpGetMapStyleDescriptor struct {
+}
+
+func (*awsRestjson1_deserializeOpGetMapStyleDescriptor) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpGetMapStyleDescriptor) 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_deserializeOpErrorGetMapStyleDescriptor(response, &metadata)
+ }
+ output := &GetMapStyleDescriptorOutput{}
+ out.Result = output
+
+ err = awsRestjson1_deserializeOpHttpBindingsGetMapStyleDescriptorOutput(output, response)
+ if err != nil {
+ return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to decode response with invalid Http bindings, %w", err)}
+ }
+
+ err = awsRestjson1_deserializeOpDocumentGetMapStyleDescriptorOutput(output, response.Body)
+ if err != nil {
+ return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to deserialize response payload, %w", err)}
+ }
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorGetMapStyleDescriptor(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_deserializeOpHttpBindingsGetMapStyleDescriptorOutput(v *GetMapStyleDescriptorOutput, response *smithyhttp.Response) error {
+ if v == nil {
+ return fmt.Errorf("unsupported deserialization for nil %T", v)
+ }
+
+ if headerValues := response.Header.Values("Content-Type"); len(headerValues) != 0 {
+ headerValues[0] = strings.TrimSpace(headerValues[0])
+ v.ContentType = ptr.String(headerValues[0])
+ }
+
+ return nil
+}
+func awsRestjson1_deserializeOpDocumentGetMapStyleDescriptorOutput(v *GetMapStyleDescriptorOutput, body io.ReadCloser) error {
+ if v == nil {
+ return fmt.Errorf("unsupported deserialization of nil %T", v)
+ }
+
+ bs, err := ioutil.ReadAll(body)
+ if err != nil {
+ return err
+ }
+ if len(bs) > 0 {
+ v.Blob = bs
+ }
+ return nil
+}
+
+type awsRestjson1_deserializeOpGetMapTile struct {
+}
+
+func (*awsRestjson1_deserializeOpGetMapTile) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpGetMapTile) 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_deserializeOpErrorGetMapTile(response, &metadata)
+ }
+ output := &GetMapTileOutput{}
+ out.Result = output
+
+ err = awsRestjson1_deserializeOpHttpBindingsGetMapTileOutput(output, response)
+ if err != nil {
+ return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to decode response with invalid Http bindings, %w", err)}
+ }
+
+ err = awsRestjson1_deserializeOpDocumentGetMapTileOutput(output, response.Body)
+ if err != nil {
+ return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("failed to deserialize response payload, %w", err)}
+ }
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorGetMapTile(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_deserializeOpHttpBindingsGetMapTileOutput(v *GetMapTileOutput, response *smithyhttp.Response) error {
+ if v == nil {
+ return fmt.Errorf("unsupported deserialization for nil %T", v)
+ }
+
+ if headerValues := response.Header.Values("Content-Type"); len(headerValues) != 0 {
+ headerValues[0] = strings.TrimSpace(headerValues[0])
+ v.ContentType = ptr.String(headerValues[0])
+ }
+
+ return nil
+}
+func awsRestjson1_deserializeOpDocumentGetMapTileOutput(v *GetMapTileOutput, body io.ReadCloser) error {
+ if v == nil {
+ return fmt.Errorf("unsupported deserialization of nil %T", v)
+ }
+
+ bs, err := ioutil.ReadAll(body)
+ if err != nil {
+ return err
+ }
+ if len(bs) > 0 {
+ v.Blob = bs
+ }
+ return nil
+}
+
+type awsRestjson1_deserializeOpListGeofenceCollections struct {
+}
+
+func (*awsRestjson1_deserializeOpListGeofenceCollections) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpListGeofenceCollections) 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_deserializeOpErrorListGeofenceCollections(response, &metadata)
+ }
+ output := &ListGeofenceCollectionsOutput{}
+ 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_deserializeOpDocumentListGeofenceCollectionsOutput(&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_deserializeOpErrorListGeofenceCollections(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("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_deserializeOpDocumentListGeofenceCollectionsOutput(v **ListGeofenceCollectionsOutput, 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 *ListGeofenceCollectionsOutput
+ if *v == nil {
+ sv = &ListGeofenceCollectionsOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Entries":
+ if err := awsRestjson1_deserializeDocumentListGeofenceCollectionsResponseEntryList(&sv.Entries, value); err != nil {
+ return err
+ }
+
+ case "NextToken":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Token to be of type string, got %T instead", value)
+ }
+ sv.NextToken = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpListGeofences struct {
+}
+
+func (*awsRestjson1_deserializeOpListGeofences) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpListGeofences) 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_deserializeOpErrorListGeofences(response, &metadata)
+ }
+ output := &ListGeofencesOutput{}
+ 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_deserializeOpDocumentListGeofencesOutput(&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_deserializeOpErrorListGeofences(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_deserializeOpDocumentListGeofencesOutput(v **ListGeofencesOutput, 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 *ListGeofencesOutput
+ if *v == nil {
+ sv = &ListGeofencesOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Entries":
+ if err := awsRestjson1_deserializeDocumentListGeofenceResponseEntryList(&sv.Entries, value); err != nil {
+ return err
+ }
+
+ case "NextToken":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Token to be of type string, got %T instead", value)
+ }
+ sv.NextToken = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpListMaps struct {
+}
+
+func (*awsRestjson1_deserializeOpListMaps) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpListMaps) 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_deserializeOpErrorListMaps(response, &metadata)
+ }
+ output := &ListMapsOutput{}
+ 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_deserializeOpDocumentListMapsOutput(&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_deserializeOpErrorListMaps(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("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_deserializeOpDocumentListMapsOutput(v **ListMapsOutput, 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 *ListMapsOutput
+ if *v == nil {
+ sv = &ListMapsOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Entries":
+ if err := awsRestjson1_deserializeDocumentListMapsResponseEntryList(&sv.Entries, value); err != nil {
+ return err
+ }
+
+ case "NextToken":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Token to be of type string, got %T instead", value)
+ }
+ sv.NextToken = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpListPlaceIndexes struct {
+}
+
+func (*awsRestjson1_deserializeOpListPlaceIndexes) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpListPlaceIndexes) 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_deserializeOpErrorListPlaceIndexes(response, &metadata)
+ }
+ output := &ListPlaceIndexesOutput{}
+ 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_deserializeOpDocumentListPlaceIndexesOutput(&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_deserializeOpErrorListPlaceIndexes(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("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_deserializeOpDocumentListPlaceIndexesOutput(v **ListPlaceIndexesOutput, 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 *ListPlaceIndexesOutput
+ if *v == nil {
+ sv = &ListPlaceIndexesOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Entries":
+ if err := awsRestjson1_deserializeDocumentListPlaceIndexesResponseEntryList(&sv.Entries, value); err != nil {
+ return err
+ }
+
+ case "NextToken":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Token to be of type string, got %T instead", value)
+ }
+ sv.NextToken = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpListTrackerConsumers struct {
+}
+
+func (*awsRestjson1_deserializeOpListTrackerConsumers) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpListTrackerConsumers) 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_deserializeOpErrorListTrackerConsumers(response, &metadata)
+ }
+ output := &ListTrackerConsumersOutput{}
+ 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_deserializeOpDocumentListTrackerConsumersOutput(&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_deserializeOpErrorListTrackerConsumers(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_deserializeOpDocumentListTrackerConsumersOutput(v **ListTrackerConsumersOutput, 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 *ListTrackerConsumersOutput
+ if *v == nil {
+ sv = &ListTrackerConsumersOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "ConsumerArns":
+ if err := awsRestjson1_deserializeDocumentArnList(&sv.ConsumerArns, value); err != nil {
+ return err
+ }
+
+ case "NextToken":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Token to be of type string, got %T instead", value)
+ }
+ sv.NextToken = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpListTrackers struct {
+}
+
+func (*awsRestjson1_deserializeOpListTrackers) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpListTrackers) 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_deserializeOpErrorListTrackers(response, &metadata)
+ }
+ output := &ListTrackersOutput{}
+ 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_deserializeOpDocumentListTrackersOutput(&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_deserializeOpErrorListTrackers(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("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_deserializeOpDocumentListTrackersOutput(v **ListTrackersOutput, 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 *ListTrackersOutput
+ if *v == nil {
+ sv = &ListTrackersOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Entries":
+ if err := awsRestjson1_deserializeDocumentListTrackersResponseEntryList(&sv.Entries, value); err != nil {
+ return err
+ }
+
+ case "NextToken":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Token to be of type string, got %T instead", value)
+ }
+ sv.NextToken = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpPutGeofence struct {
+}
+
+func (*awsRestjson1_deserializeOpPutGeofence) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpPutGeofence) 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_deserializeOpErrorPutGeofence(response, &metadata)
+ }
+ output := &PutGeofenceOutput{}
+ 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_deserializeOpDocumentPutGeofenceOutput(&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_deserializeOpErrorPutGeofence(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("ConflictException", errorCode):
+ return awsRestjson1_deserializeErrorConflictException(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_deserializeOpDocumentPutGeofenceOutput(v **PutGeofenceOutput, 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 *PutGeofenceOutput
+ if *v == nil {
+ sv = &PutGeofenceOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ case "GeofenceId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Id to be of type string, got %T instead", value)
+ }
+ sv.GeofenceId = ptr.String(jtv)
+ }
+
+ case "UpdateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.UpdateTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpSearchPlaceIndexForPosition struct {
+}
+
+func (*awsRestjson1_deserializeOpSearchPlaceIndexForPosition) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpSearchPlaceIndexForPosition) 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_deserializeOpErrorSearchPlaceIndexForPosition(response, &metadata)
+ }
+ output := &SearchPlaceIndexForPositionOutput{}
+ 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_deserializeOpDocumentSearchPlaceIndexForPositionOutput(&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_deserializeOpErrorSearchPlaceIndexForPosition(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_deserializeOpDocumentSearchPlaceIndexForPositionOutput(v **SearchPlaceIndexForPositionOutput, 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 *SearchPlaceIndexForPositionOutput
+ if *v == nil {
+ sv = &SearchPlaceIndexForPositionOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Results":
+ if err := awsRestjson1_deserializeDocumentSearchForPositionResultList(&sv.Results, value); err != nil {
+ return err
+ }
+
+ case "Summary":
+ if err := awsRestjson1_deserializeDocumentSearchPlaceIndexForPositionSummary(&sv.Summary, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpSearchPlaceIndexForText struct {
+}
+
+func (*awsRestjson1_deserializeOpSearchPlaceIndexForText) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpSearchPlaceIndexForText) 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_deserializeOpErrorSearchPlaceIndexForText(response, &metadata)
+ }
+ output := &SearchPlaceIndexForTextOutput{}
+ 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_deserializeOpDocumentSearchPlaceIndexForTextOutput(&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_deserializeOpErrorSearchPlaceIndexForText(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_deserializeOpDocumentSearchPlaceIndexForTextOutput(v **SearchPlaceIndexForTextOutput, 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 *SearchPlaceIndexForTextOutput
+ if *v == nil {
+ sv = &SearchPlaceIndexForTextOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Results":
+ if err := awsRestjson1_deserializeDocumentSearchForTextResultList(&sv.Results, value); err != nil {
+ return err
+ }
+
+ case "Summary":
+ if err := awsRestjson1_deserializeDocumentSearchPlaceIndexForTextSummary(&sv.Summary, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeErrorAccessDeniedException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.AccessDeniedException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ err := awsRestjson1_deserializeDocumentAccessDeniedException(&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 awsRestjson1_deserializeErrorConflictException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ConflictException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ err := awsRestjson1_deserializeDocumentConflictException(&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 awsRestjson1_deserializeErrorInternalServerException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InternalServerException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ err := awsRestjson1_deserializeDocumentInternalServerException(&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 awsRestjson1_deserializeErrorResourceNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ResourceNotFoundException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ err := awsRestjson1_deserializeDocumentResourceNotFoundException(&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 awsRestjson1_deserializeErrorThrottlingException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ThrottlingException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ err := awsRestjson1_deserializeDocumentThrottlingException(&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 awsRestjson1_deserializeErrorValidationException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ValidationException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ err := awsRestjson1_deserializeDocumentValidationException(&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 awsRestjson1_deserializeDocumentAccessDeniedException(v **types.AccessDeniedException, 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.AccessDeniedException
+ if *v == nil {
+ sv = &types.AccessDeniedException{}
+ } 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 String to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentArnList(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 Arn to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentBatchDeleteGeofenceError(v **types.BatchDeleteGeofenceError, 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.BatchDeleteGeofenceError
+ if *v == nil {
+ sv = &types.BatchDeleteGeofenceError{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Error":
+ if err := awsRestjson1_deserializeDocumentBatchItemError(&sv.Error, value); err != nil {
+ return err
+ }
+
+ case "GeofenceId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Id to be of type string, got %T instead", value)
+ }
+ sv.GeofenceId = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentBatchDeleteGeofenceErrorList(v *[]types.BatchDeleteGeofenceError, 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.BatchDeleteGeofenceError
+ if *v == nil {
+ cv = []types.BatchDeleteGeofenceError{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.BatchDeleteGeofenceError
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentBatchDeleteGeofenceError(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentBatchEvaluateGeofencesError(v **types.BatchEvaluateGeofencesError, 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.BatchEvaluateGeofencesError
+ if *v == nil {
+ sv = &types.BatchEvaluateGeofencesError{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DeviceId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Id to be of type string, got %T instead", value)
+ }
+ sv.DeviceId = ptr.String(jtv)
+ }
+
+ case "Error":
+ if err := awsRestjson1_deserializeDocumentBatchItemError(&sv.Error, value); err != nil {
+ return err
+ }
+
+ case "SampleTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.SampleTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentBatchEvaluateGeofencesErrorList(v *[]types.BatchEvaluateGeofencesError, 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.BatchEvaluateGeofencesError
+ if *v == nil {
+ cv = []types.BatchEvaluateGeofencesError{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.BatchEvaluateGeofencesError
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentBatchEvaluateGeofencesError(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentBatchGetDevicePositionError(v **types.BatchGetDevicePositionError, 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.BatchGetDevicePositionError
+ if *v == nil {
+ sv = &types.BatchGetDevicePositionError{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DeviceId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Id to be of type string, got %T instead", value)
+ }
+ sv.DeviceId = ptr.String(jtv)
+ }
+
+ case "Error":
+ if err := awsRestjson1_deserializeDocumentBatchItemError(&sv.Error, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentBatchGetDevicePositionErrorList(v *[]types.BatchGetDevicePositionError, 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.BatchGetDevicePositionError
+ if *v == nil {
+ cv = []types.BatchGetDevicePositionError{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.BatchGetDevicePositionError
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentBatchGetDevicePositionError(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentBatchItemError(v **types.BatchItemError, 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.BatchItemError
+ if *v == nil {
+ sv = &types.BatchItemError{}
+ } 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 BatchItemErrorCode to be of type string, got %T instead", value)
+ }
+ sv.Code = types.BatchItemErrorCode(jtv)
+ }
+
+ case "Message":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentBatchPutGeofenceError(v **types.BatchPutGeofenceError, 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.BatchPutGeofenceError
+ if *v == nil {
+ sv = &types.BatchPutGeofenceError{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Error":
+ if err := awsRestjson1_deserializeDocumentBatchItemError(&sv.Error, value); err != nil {
+ return err
+ }
+
+ case "GeofenceId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Id to be of type string, got %T instead", value)
+ }
+ sv.GeofenceId = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentBatchPutGeofenceErrorList(v *[]types.BatchPutGeofenceError, 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.BatchPutGeofenceError
+ if *v == nil {
+ cv = []types.BatchPutGeofenceError{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.BatchPutGeofenceError
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentBatchPutGeofenceError(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentBatchPutGeofenceSuccess(v **types.BatchPutGeofenceSuccess, 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.BatchPutGeofenceSuccess
+ if *v == nil {
+ sv = &types.BatchPutGeofenceSuccess{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ case "GeofenceId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Id to be of type string, got %T instead", value)
+ }
+ sv.GeofenceId = ptr.String(jtv)
+ }
+
+ case "UpdateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.UpdateTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentBatchPutGeofenceSuccessList(v *[]types.BatchPutGeofenceSuccess, 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.BatchPutGeofenceSuccess
+ if *v == nil {
+ cv = []types.BatchPutGeofenceSuccess{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.BatchPutGeofenceSuccess
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentBatchPutGeofenceSuccess(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentBatchUpdateDevicePositionError(v **types.BatchUpdateDevicePositionError, 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.BatchUpdateDevicePositionError
+ if *v == nil {
+ sv = &types.BatchUpdateDevicePositionError{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DeviceId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Id to be of type string, got %T instead", value)
+ }
+ sv.DeviceId = ptr.String(jtv)
+ }
+
+ case "Error":
+ if err := awsRestjson1_deserializeDocumentBatchItemError(&sv.Error, value); err != nil {
+ return err
+ }
+
+ case "SampleTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.SampleTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentBatchUpdateDevicePositionErrorList(v *[]types.BatchUpdateDevicePositionError, 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.BatchUpdateDevicePositionError
+ if *v == nil {
+ cv = []types.BatchUpdateDevicePositionError{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.BatchUpdateDevicePositionError
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentBatchUpdateDevicePositionError(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentBoundingBox(v *[]float64, 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 []float64
+ if *v == nil {
+ cv = []float64{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col float64
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Double to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ col = f64
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentConflictException(v **types.ConflictException, 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.ConflictException
+ if *v == nil {
+ sv = &types.ConflictException{}
+ } 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 String to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentCountryCodeList(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 CountryCode to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentDataSourceConfiguration(v **types.DataSourceConfiguration, 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.DataSourceConfiguration
+ if *v == nil {
+ sv = &types.DataSourceConfiguration{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "IntendedUse":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected IntendedUse to be of type string, got %T instead", value)
+ }
+ sv.IntendedUse = types.IntendedUse(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentDevicePosition(v **types.DevicePosition, 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.DevicePosition
+ if *v == nil {
+ sv = &types.DevicePosition{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DeviceId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Id to be of type string, got %T instead", value)
+ }
+ sv.DeviceId = ptr.String(jtv)
+ }
+
+ case "Position":
+ if err := awsRestjson1_deserializeDocumentPosition(&sv.Position, value); err != nil {
+ return err
+ }
+
+ case "ReceivedTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.ReceivedTime = ptr.Time(t)
+ }
+
+ case "SampleTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.SampleTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentDevicePositionList(v *[]types.DevicePosition, 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.DevicePosition
+ if *v == nil {
+ cv = []types.DevicePosition{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.DevicePosition
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentDevicePosition(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentGeofenceGeometry(v **types.GeofenceGeometry, 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.GeofenceGeometry
+ if *v == nil {
+ sv = &types.GeofenceGeometry{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Polygon":
+ if err := awsRestjson1_deserializeDocumentLinearRings(&sv.Polygon, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentInternalServerException(v **types.InternalServerException, 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.InternalServerException
+ if *v == nil {
+ sv = &types.InternalServerException{}
+ } 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 String to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentLinearRing(v *[][]float64, 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 [][]float64
+ if *v == nil {
+ cv = [][]float64{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col []float64
+ if err := awsRestjson1_deserializeDocumentPosition(&col, value); err != nil {
+ return err
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentLinearRings(v *[][][]float64, 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 [][][]float64
+ if *v == nil {
+ cv = [][][]float64{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col [][]float64
+ if err := awsRestjson1_deserializeDocumentLinearRing(&col, value); err != nil {
+ return err
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentListGeofenceCollectionsResponseEntry(v **types.ListGeofenceCollectionsResponseEntry, 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.ListGeofenceCollectionsResponseEntry
+ if *v == nil {
+ sv = &types.ListGeofenceCollectionsResponseEntry{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CollectionName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceName to be of type string, got %T instead", value)
+ }
+ sv.CollectionName = ptr.String(jtv)
+ }
+
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ case "Description":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceDescription to be of type string, got %T instead", value)
+ }
+ sv.Description = ptr.String(jtv)
+ }
+
+ case "PricingPlan":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PricingPlan to be of type string, got %T instead", value)
+ }
+ sv.PricingPlan = types.PricingPlan(jtv)
+ }
+
+ case "PricingPlanDataSource":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.PricingPlanDataSource = ptr.String(jtv)
+ }
+
+ case "UpdateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.UpdateTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentListGeofenceCollectionsResponseEntryList(v *[]types.ListGeofenceCollectionsResponseEntry, 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.ListGeofenceCollectionsResponseEntry
+ if *v == nil {
+ cv = []types.ListGeofenceCollectionsResponseEntry{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.ListGeofenceCollectionsResponseEntry
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentListGeofenceCollectionsResponseEntry(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentListGeofenceResponseEntry(v **types.ListGeofenceResponseEntry, 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.ListGeofenceResponseEntry
+ if *v == nil {
+ sv = &types.ListGeofenceResponseEntry{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ case "GeofenceId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Id to be of type string, got %T instead", value)
+ }
+ sv.GeofenceId = ptr.String(jtv)
+ }
+
+ case "Geometry":
+ if err := awsRestjson1_deserializeDocumentGeofenceGeometry(&sv.Geometry, value); err != nil {
+ return err
+ }
+
+ case "Status":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.Status = ptr.String(jtv)
+ }
+
+ case "UpdateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.UpdateTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentListGeofenceResponseEntryList(v *[]types.ListGeofenceResponseEntry, 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.ListGeofenceResponseEntry
+ if *v == nil {
+ cv = []types.ListGeofenceResponseEntry{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.ListGeofenceResponseEntry
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentListGeofenceResponseEntry(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentListMapsResponseEntry(v **types.ListMapsResponseEntry, 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.ListMapsResponseEntry
+ if *v == nil {
+ sv = &types.ListMapsResponseEntry{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ case "DataSource":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.DataSource = ptr.String(jtv)
+ }
+
+ case "Description":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceDescription to be of type string, got %T instead", value)
+ }
+ sv.Description = ptr.String(jtv)
+ }
+
+ case "MapName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceName to be of type string, got %T instead", value)
+ }
+ sv.MapName = ptr.String(jtv)
+ }
+
+ case "PricingPlan":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PricingPlan to be of type string, got %T instead", value)
+ }
+ sv.PricingPlan = types.PricingPlan(jtv)
+ }
+
+ case "UpdateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.UpdateTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentListMapsResponseEntryList(v *[]types.ListMapsResponseEntry, 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.ListMapsResponseEntry
+ if *v == nil {
+ cv = []types.ListMapsResponseEntry{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.ListMapsResponseEntry
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentListMapsResponseEntry(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentListPlaceIndexesResponseEntry(v **types.ListPlaceIndexesResponseEntry, 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.ListPlaceIndexesResponseEntry
+ if *v == nil {
+ sv = &types.ListPlaceIndexesResponseEntry{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ case "DataSource":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.DataSource = ptr.String(jtv)
+ }
+
+ case "Description":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceDescription to be of type string, got %T instead", value)
+ }
+ sv.Description = ptr.String(jtv)
+ }
+
+ case "IndexName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceName to be of type string, got %T instead", value)
+ }
+ sv.IndexName = ptr.String(jtv)
+ }
+
+ case "PricingPlan":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PricingPlan to be of type string, got %T instead", value)
+ }
+ sv.PricingPlan = types.PricingPlan(jtv)
+ }
+
+ case "UpdateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.UpdateTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentListPlaceIndexesResponseEntryList(v *[]types.ListPlaceIndexesResponseEntry, 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.ListPlaceIndexesResponseEntry
+ if *v == nil {
+ cv = []types.ListPlaceIndexesResponseEntry{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.ListPlaceIndexesResponseEntry
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentListPlaceIndexesResponseEntry(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentListTrackersResponseEntry(v **types.ListTrackersResponseEntry, 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.ListTrackersResponseEntry
+ if *v == nil {
+ sv = &types.ListTrackersResponseEntry{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CreateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.CreateTime = ptr.Time(t)
+ }
+
+ case "Description":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceDescription to be of type string, got %T instead", value)
+ }
+ sv.Description = ptr.String(jtv)
+ }
+
+ case "PricingPlan":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PricingPlan to be of type string, got %T instead", value)
+ }
+ sv.PricingPlan = types.PricingPlan(jtv)
+ }
+
+ case "PricingPlanDataSource":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.PricingPlanDataSource = ptr.String(jtv)
+ }
+
+ case "TrackerName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceName to be of type string, got %T instead", value)
+ }
+ sv.TrackerName = ptr.String(jtv)
+ }
+
+ case "UpdateTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be of type string, got %T instead", value)
+ }
+ t, err := smithytime.ParseDateTime(jtv)
+ if err != nil {
+ return err
+ }
+ sv.UpdateTime = ptr.Time(t)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentListTrackersResponseEntryList(v *[]types.ListTrackersResponseEntry, 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.ListTrackersResponseEntry
+ if *v == nil {
+ cv = []types.ListTrackersResponseEntry{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.ListTrackersResponseEntry
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentListTrackersResponseEntry(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentMapConfiguration(v **types.MapConfiguration, 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.MapConfiguration
+ if *v == nil {
+ sv = &types.MapConfiguration{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Style":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected MapStyle to be of type string, got %T instead", value)
+ }
+ sv.Style = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentPlace(v **types.Place, 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.Place
+ if *v == nil {
+ sv = &types.Place{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AddressNumber":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.AddressNumber = ptr.String(jtv)
+ }
+
+ case "Country":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.Country = ptr.String(jtv)
+ }
+
+ case "Geometry":
+ if err := awsRestjson1_deserializeDocumentPlaceGeometry(&sv.Geometry, value); err != nil {
+ return err
+ }
+
+ case "Label":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.Label = ptr.String(jtv)
+ }
+
+ case "Municipality":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.Municipality = ptr.String(jtv)
+ }
+
+ case "Neighborhood":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.Neighborhood = ptr.String(jtv)
+ }
+
+ case "PostalCode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.PostalCode = ptr.String(jtv)
+ }
+
+ case "Region":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.Region = ptr.String(jtv)
+ }
+
+ case "Street":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.Street = ptr.String(jtv)
+ }
+
+ case "SubRegion":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.SubRegion = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentPlaceGeometry(v **types.PlaceGeometry, 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.PlaceGeometry
+ if *v == nil {
+ sv = &types.PlaceGeometry{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Point":
+ if err := awsRestjson1_deserializeDocumentPosition(&sv.Point, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentPosition(v *[]float64, 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 []float64
+ if *v == nil {
+ cv = []float64{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col float64
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Double to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ col = f64
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentResourceNotFoundException(v **types.ResourceNotFoundException, 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.ResourceNotFoundException
+ if *v == nil {
+ sv = &types.ResourceNotFoundException{}
+ } 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 String to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentSearchForPositionResult(v **types.SearchForPositionResult, 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.SearchForPositionResult
+ if *v == nil {
+ sv = &types.SearchForPositionResult{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Place":
+ if err := awsRestjson1_deserializeDocumentPlace(&sv.Place, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentSearchForPositionResultList(v *[]types.SearchForPositionResult, 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.SearchForPositionResult
+ if *v == nil {
+ cv = []types.SearchForPositionResult{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.SearchForPositionResult
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentSearchForPositionResult(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentSearchForTextResult(v **types.SearchForTextResult, 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.SearchForTextResult
+ if *v == nil {
+ sv = &types.SearchForTextResult{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Place":
+ if err := awsRestjson1_deserializeDocumentPlace(&sv.Place, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentSearchForTextResultList(v *[]types.SearchForTextResult, 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.SearchForTextResult
+ if *v == nil {
+ cv = []types.SearchForTextResult{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.SearchForTextResult
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentSearchForTextResult(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentSearchPlaceIndexForPositionSummary(v **types.SearchPlaceIndexForPositionSummary, 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.SearchPlaceIndexForPositionSummary
+ if *v == nil {
+ sv = &types.SearchPlaceIndexForPositionSummary{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DataSource":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.DataSource = ptr.String(jtv)
+ }
+
+ case "MaxResults":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected PlaceIndexSearchResultLimit to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.MaxResults = int32(i64)
+ }
+
+ case "Position":
+ if err := awsRestjson1_deserializeDocumentPosition(&sv.Position, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentSearchPlaceIndexForTextSummary(v **types.SearchPlaceIndexForTextSummary, 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.SearchPlaceIndexForTextSummary
+ if *v == nil {
+ sv = &types.SearchPlaceIndexForTextSummary{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "BiasPosition":
+ if err := awsRestjson1_deserializeDocumentPosition(&sv.BiasPosition, value); err != nil {
+ return err
+ }
+
+ case "DataSource":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.DataSource = ptr.String(jtv)
+ }
+
+ case "FilterBBox":
+ if err := awsRestjson1_deserializeDocumentBoundingBox(&sv.FilterBBox, value); err != nil {
+ return err
+ }
+
+ case "FilterCountries":
+ if err := awsRestjson1_deserializeDocumentCountryCodeList(&sv.FilterCountries, value); err != nil {
+ return err
+ }
+
+ case "MaxResults":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected PlaceIndexSearchResultLimit to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.MaxResults = int32(i64)
+ }
+
+ case "ResultBBox":
+ if err := awsRestjson1_deserializeDocumentBoundingBox(&sv.ResultBBox, value); err != nil {
+ return err
+ }
+
+ case "Text":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.Text = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentThrottlingException(v **types.ThrottlingException, 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.ThrottlingException
+ if *v == nil {
+ sv = &types.ThrottlingException{}
+ } 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 String to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentValidationException(v **types.ValidationException, 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.ValidationException
+ if *v == nil {
+ sv = &types.ValidationException{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "fieldList":
+ if err := awsRestjson1_deserializeDocumentValidationExceptionFieldList(&sv.FieldList, value); err != nil {
+ return err
+ }
+
+ case "message":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ case "reason":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ValidationExceptionReason to be of type string, got %T instead", value)
+ }
+ sv.Reason = types.ValidationExceptionReason(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentValidationExceptionField(v **types.ValidationExceptionField, 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.ValidationExceptionField
+ if *v == nil {
+ sv = &types.ValidationExceptionField{}
+ } 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 String to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ case "name":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.Name = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentValidationExceptionFieldList(v *[]types.ValidationExceptionField, 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.ValidationExceptionField
+ if *v == nil {
+ cv = []types.ValidationExceptionField{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.ValidationExceptionField
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentValidationExceptionField(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
diff --git a/service/location/doc.go b/service/location/doc.go
new file mode 100644
index 00000000000..b5f37b8b938
--- /dev/null
+++ b/service/location/doc.go
@@ -0,0 +1,7 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+// Package location provides the API client, operations, and parameter types for
+// Amazon Location Service.
+//
+// Suite of geospatial services including Maps, Places, Tracking, and Geofencing
+package location
diff --git a/service/location/endpoints.go b/service/location/endpoints.go
new file mode 100644
index 00000000000..f75f80c824e
--- /dev/null
+++ b/service/location/endpoints.go
@@ -0,0 +1,160 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+import (
+ "context"
+ "errors"
+ "fmt"
+ "github.com/aws/aws-sdk-go-v2/aws"
+ awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
+ internalendpoints "github.com/aws/aws-sdk-go-v2/service/location/internal/endpoints"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "net/url"
+)
+
+// EndpointResolverOptions is the service endpoint resolver options
+type EndpointResolverOptions = internalendpoints.Options
+
+// EndpointResolver interface for resolving service endpoints.
+type EndpointResolver interface {
+ ResolveEndpoint(region string, options EndpointResolverOptions) (aws.Endpoint, error)
+}
+
+var _ EndpointResolver = &internalendpoints.Resolver{}
+
+// NewDefaultEndpointResolver constructs a new service endpoint resolver
+func NewDefaultEndpointResolver() *internalendpoints.Resolver {
+ return internalendpoints.New()
+}
+
+// EndpointResolverFunc is a helper utility that wraps a function so it satisfies
+// the EndpointResolver interface. This is useful when you want to add additional
+// endpoint resolving logic, or stub out specific endpoints with custom values.
+type EndpointResolverFunc func(region string, options EndpointResolverOptions) (aws.Endpoint, error)
+
+func (fn EndpointResolverFunc) ResolveEndpoint(region string, options EndpointResolverOptions) (endpoint aws.Endpoint, err error) {
+ return fn(region, options)
+}
+
+func resolveDefaultEndpointConfiguration(o *Options) {
+ if o.EndpointResolver != nil {
+ return
+ }
+ o.EndpointResolver = NewDefaultEndpointResolver()
+}
+
+// EndpointResolverFromURL returns an EndpointResolver configured using the
+// provided endpoint url. By default, the resolved endpoint resolver uses the
+// client region as signing region, and the endpoint source is set to
+// EndpointSourceCustom.You can provide functional options to configure endpoint
+// values for the resolved endpoint.
+func EndpointResolverFromURL(url string, optFns ...func(*aws.Endpoint)) EndpointResolver {
+ e := aws.Endpoint{URL: url, Source: aws.EndpointSourceCustom}
+ for _, fn := range optFns {
+ fn(&e)
+ }
+
+ return EndpointResolverFunc(
+ func(region string, options EndpointResolverOptions) (aws.Endpoint, error) {
+ if len(e.SigningRegion) == 0 {
+ e.SigningRegion = region
+ }
+ return e, nil
+ },
+ )
+}
+
+type ResolveEndpoint struct {
+ Resolver EndpointResolver
+ Options EndpointResolverOptions
+}
+
+func (*ResolveEndpoint) ID() string {
+ return "ResolveEndpoint"
+}
+
+func (m *ResolveEndpoint) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
+ out middleware.SerializeOutput, metadata middleware.Metadata, err error,
+) {
+ req, ok := in.Request.(*smithyhttp.Request)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown transport type %T", in.Request)
+ }
+
+ if m.Resolver == nil {
+ return out, metadata, fmt.Errorf("expected endpoint resolver to not be nil")
+ }
+
+ var endpoint aws.Endpoint
+ endpoint, err = m.Resolver.ResolveEndpoint(awsmiddleware.GetRegion(ctx), m.Options)
+ if err != nil {
+ return out, metadata, fmt.Errorf("failed to resolve service endpoint, %w", err)
+ }
+
+ req.URL, err = url.Parse(endpoint.URL)
+ if err != nil {
+ return out, metadata, fmt.Errorf("failed to parse endpoint URL: %w", err)
+ }
+
+ if len(awsmiddleware.GetSigningName(ctx)) == 0 {
+ signingName := endpoint.SigningName
+ if len(signingName) == 0 {
+ signingName = "geo"
+ }
+ ctx = awsmiddleware.SetSigningName(ctx, signingName)
+ }
+ ctx = awsmiddleware.SetEndpointSource(ctx, endpoint.Source)
+ ctx = smithyhttp.SetHostnameImmutable(ctx, endpoint.HostnameImmutable)
+ ctx = awsmiddleware.SetSigningRegion(ctx, endpoint.SigningRegion)
+ ctx = awsmiddleware.SetPartitionID(ctx, endpoint.PartitionID)
+ return next.HandleSerialize(ctx, in)
+}
+func addResolveEndpointMiddleware(stack *middleware.Stack, o Options) error {
+ return stack.Serialize.Insert(&ResolveEndpoint{
+ Resolver: o.EndpointResolver,
+ Options: o.EndpointOptions,
+ }, "OperationSerializer", middleware.Before)
+}
+
+func removeResolveEndpointMiddleware(stack *middleware.Stack) error {
+ _, err := stack.Serialize.Remove((&ResolveEndpoint{}).ID())
+ return err
+}
+
+type wrappedEndpointResolver struct {
+ awsResolver aws.EndpointResolver
+ resolver EndpointResolver
+}
+
+func (w *wrappedEndpointResolver) ResolveEndpoint(region string, options EndpointResolverOptions) (endpoint aws.Endpoint, err error) {
+ if w.awsResolver == nil {
+ goto fallback
+ }
+ endpoint, err = w.awsResolver.ResolveEndpoint(ServiceID, region)
+ if err == nil {
+ return endpoint, nil
+ }
+
+ if nf := (&aws.EndpointNotFoundError{}); !errors.As(err, &nf) {
+ return endpoint, err
+ }
+
+fallback:
+ if w.resolver == nil {
+ return endpoint, fmt.Errorf("default endpoint resolver provided was nil")
+ }
+ return w.resolver.ResolveEndpoint(region, options)
+}
+
+// withEndpointResolver returns an EndpointResolver that first delegates endpoint
+// resolution to the awsResolver. If awsResolver returns aws.EndpointNotFoundError
+// error, the resolver will use the the provided fallbackResolver for resolution.
+// awsResolver and fallbackResolver must not be nil
+func withEndpointResolver(awsResolver aws.EndpointResolver, fallbackResolver EndpointResolver) EndpointResolver {
+ return &wrappedEndpointResolver{
+ awsResolver: awsResolver,
+ resolver: fallbackResolver,
+ }
+}
diff --git a/service/location/go.mod b/service/location/go.mod
new file mode 100644
index 00000000000..b4ed12b8c44
--- /dev/null
+++ b/service/location/go.mod
@@ -0,0 +1,10 @@
+module github.com/aws/aws-sdk-go-v2/service/location
+
+go 1.15
+
+require (
+ github.com/aws/aws-sdk-go-v2 v1.3.0
+ github.com/aws/smithy-go v1.3.0
+)
+
+replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/location/go.sum b/service/location/go.sum
new file mode 100644
index 00000000000..3aa8f05f35e
--- /dev/null
+++ b/service/location/go.sum
@@ -0,0 +1,13 @@
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
+github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
+github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
+github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo=
+github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U=
+github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
+github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
+golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
+golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
+gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
+gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
diff --git a/service/location/internal/endpoints/endpoints.go b/service/location/internal/endpoints/endpoints.go
new file mode 100644
index 00000000000..81ac632797e
--- /dev/null
+++ b/service/location/internal/endpoints/endpoints.go
@@ -0,0 +1,106 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package endpoints
+
+import (
+ "github.com/aws/aws-sdk-go-v2/aws"
+ "github.com/aws/aws-sdk-go-v2/internal/endpoints"
+ "regexp"
+)
+
+// Options is the endpoint resolver configuration options
+type Options struct {
+ DisableHTTPS bool
+}
+
+// Resolver Location endpoint resolver
+type Resolver struct {
+ partitions endpoints.Partitions
+}
+
+// ResolveEndpoint resolves the service endpoint for the given region and options
+func (r *Resolver) ResolveEndpoint(region string, options Options) (endpoint aws.Endpoint, err error) {
+ if len(region) == 0 {
+ return endpoint, &aws.MissingRegionError{}
+ }
+
+ opt := endpoints.Options{
+ DisableHTTPS: options.DisableHTTPS,
+ }
+ return r.partitions.ResolveEndpoint(region, opt)
+}
+
+// New returns a new Resolver
+func New() *Resolver {
+ return &Resolver{
+ partitions: defaultPartitions,
+ }
+}
+
+var partitionRegexp = struct {
+ Aws *regexp.Regexp
+ AwsCn *regexp.Regexp
+ AwsIso *regexp.Regexp
+ AwsIsoB *regexp.Regexp
+ AwsUsGov *regexp.Regexp
+}{
+
+ Aws: regexp.MustCompile("^(us|eu|ap|sa|ca|me|af)\\-\\w+\\-\\d+$"),
+ AwsCn: regexp.MustCompile("^cn\\-\\w+\\-\\d+$"),
+ AwsIso: regexp.MustCompile("^us\\-iso\\-\\w+\\-\\d+$"),
+ AwsIsoB: regexp.MustCompile("^us\\-isob\\-\\w+\\-\\d+$"),
+ AwsUsGov: regexp.MustCompile("^us\\-gov\\-\\w+\\-\\d+$"),
+}
+
+var defaultPartitions = endpoints.Partitions{
+ {
+ ID: "aws",
+ Defaults: endpoints.Endpoint{
+ Hostname: "geo.{region}.amazonaws.com",
+ Protocols: []string{"https"},
+ SignatureVersions: []string{"v4"},
+ },
+ RegionRegex: partitionRegexp.Aws,
+ IsRegionalized: true,
+ },
+ {
+ ID: "aws-cn",
+ Defaults: endpoints.Endpoint{
+ Hostname: "geo.{region}.amazonaws.com.cn",
+ Protocols: []string{"https"},
+ SignatureVersions: []string{"v4"},
+ },
+ RegionRegex: partitionRegexp.AwsCn,
+ IsRegionalized: true,
+ },
+ {
+ ID: "aws-iso",
+ Defaults: endpoints.Endpoint{
+ Hostname: "geo.{region}.c2s.ic.gov",
+ Protocols: []string{"https"},
+ SignatureVersions: []string{"v4"},
+ },
+ RegionRegex: partitionRegexp.AwsIso,
+ IsRegionalized: true,
+ },
+ {
+ ID: "aws-iso-b",
+ Defaults: endpoints.Endpoint{
+ Hostname: "geo.{region}.sc2s.sgov.gov",
+ Protocols: []string{"https"},
+ SignatureVersions: []string{"v4"},
+ },
+ RegionRegex: partitionRegexp.AwsIsoB,
+ IsRegionalized: true,
+ },
+ {
+ ID: "aws-us-gov",
+ Defaults: endpoints.Endpoint{
+ Hostname: "geo.{region}.amazonaws.com",
+ Protocols: []string{"https"},
+ SignatureVersions: []string{"v4"},
+ },
+ RegionRegex: partitionRegexp.AwsUsGov,
+ IsRegionalized: true,
+ },
+}
diff --git a/service/location/internal/endpoints/endpoints_test.go b/service/location/internal/endpoints/endpoints_test.go
new file mode 100644
index 00000000000..08e5da2d833
--- /dev/null
+++ b/service/location/internal/endpoints/endpoints_test.go
@@ -0,0 +1,11 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package endpoints
+
+import (
+ "testing"
+)
+
+func TestRegexCompile(t *testing.T) {
+ _ = defaultPartitions
+}
diff --git a/service/location/protocol_test.go b/service/location/protocol_test.go
new file mode 100644
index 00000000000..88e4f52a4b5
--- /dev/null
+++ b/service/location/protocol_test.go
@@ -0,0 +1,3 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
diff --git a/service/location/serializers.go b/service/location/serializers.go
new file mode 100644
index 00000000000..c8828c8c947
--- /dev/null
+++ b/service/location/serializers.go
@@ -0,0 +1,2833 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+import (
+ "bytes"
+ "context"
+ "fmt"
+ "github.com/aws/aws-sdk-go-v2/service/location/types"
+ smithy "github.com/aws/smithy-go"
+ "github.com/aws/smithy-go/encoding/httpbinding"
+ smithyjson "github.com/aws/smithy-go/encoding/json"
+ "github.com/aws/smithy-go/middleware"
+ smithytime "github.com/aws/smithy-go/time"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+type awsRestjson1_serializeOpAssociateTrackerConsumer struct {
+}
+
+func (*awsRestjson1_serializeOpAssociateTrackerConsumer) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpAssociateTrackerConsumer) 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.(*AssociateTrackerConsumerInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/tracking/v0/trackers/{TrackerName}/consumers")
+ 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_serializeOpHttpBindingsAssociateTrackerConsumerInput(input, restEncoder); err != nil {
+ return out, metadata, &smithy.SerializationError{Err: err}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentAssociateTrackerConsumerInput(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_serializeOpHttpBindingsAssociateTrackerConsumerInput(v *AssociateTrackerConsumerInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.TrackerName == nil || len(*v.TrackerName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member TrackerName must not be empty")}
+ }
+ if v.TrackerName != nil {
+ if err := encoder.SetURI("TrackerName").String(*v.TrackerName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentAssociateTrackerConsumerInput(v *AssociateTrackerConsumerInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.ConsumerArn != nil {
+ ok := object.Key("ConsumerArn")
+ ok.String(*v.ConsumerArn)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpBatchDeleteGeofence struct {
+}
+
+func (*awsRestjson1_serializeOpBatchDeleteGeofence) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpBatchDeleteGeofence) 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.(*BatchDeleteGeofenceInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/geofencing/v0/collections/{CollectionName}/delete-geofences")
+ 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_serializeOpHttpBindingsBatchDeleteGeofenceInput(input, restEncoder); err != nil {
+ return out, metadata, &smithy.SerializationError{Err: err}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentBatchDeleteGeofenceInput(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_serializeOpHttpBindingsBatchDeleteGeofenceInput(v *BatchDeleteGeofenceInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.CollectionName == nil || len(*v.CollectionName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member CollectionName must not be empty")}
+ }
+ if v.CollectionName != nil {
+ if err := encoder.SetURI("CollectionName").String(*v.CollectionName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentBatchDeleteGeofenceInput(v *BatchDeleteGeofenceInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.GeofenceIds != nil {
+ ok := object.Key("GeofenceIds")
+ if err := awsRestjson1_serializeDocumentIdList(v.GeofenceIds, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpBatchEvaluateGeofences struct {
+}
+
+func (*awsRestjson1_serializeOpBatchEvaluateGeofences) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpBatchEvaluateGeofences) 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.(*BatchEvaluateGeofencesInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/geofencing/v0/collections/{CollectionName}/positions")
+ 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_serializeOpHttpBindingsBatchEvaluateGeofencesInput(input, restEncoder); err != nil {
+ return out, metadata, &smithy.SerializationError{Err: err}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentBatchEvaluateGeofencesInput(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_serializeOpHttpBindingsBatchEvaluateGeofencesInput(v *BatchEvaluateGeofencesInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.CollectionName == nil || len(*v.CollectionName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member CollectionName must not be empty")}
+ }
+ if v.CollectionName != nil {
+ if err := encoder.SetURI("CollectionName").String(*v.CollectionName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentBatchEvaluateGeofencesInput(v *BatchEvaluateGeofencesInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.DevicePositionUpdates != nil {
+ ok := object.Key("DevicePositionUpdates")
+ if err := awsRestjson1_serializeDocumentDevicePositionUpdateList(v.DevicePositionUpdates, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpBatchGetDevicePosition struct {
+}
+
+func (*awsRestjson1_serializeOpBatchGetDevicePosition) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpBatchGetDevicePosition) 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.(*BatchGetDevicePositionInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/tracking/v0/trackers/{TrackerName}/get-positions")
+ 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_serializeOpHttpBindingsBatchGetDevicePositionInput(input, restEncoder); err != nil {
+ return out, metadata, &smithy.SerializationError{Err: err}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentBatchGetDevicePositionInput(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_serializeOpHttpBindingsBatchGetDevicePositionInput(v *BatchGetDevicePositionInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.TrackerName == nil || len(*v.TrackerName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member TrackerName must not be empty")}
+ }
+ if v.TrackerName != nil {
+ if err := encoder.SetURI("TrackerName").String(*v.TrackerName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentBatchGetDevicePositionInput(v *BatchGetDevicePositionInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.DeviceIds != nil {
+ ok := object.Key("DeviceIds")
+ if err := awsRestjson1_serializeDocumentIdList(v.DeviceIds, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpBatchPutGeofence struct {
+}
+
+func (*awsRestjson1_serializeOpBatchPutGeofence) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpBatchPutGeofence) 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.(*BatchPutGeofenceInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/geofencing/v0/collections/{CollectionName}/put-geofences")
+ 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_serializeOpHttpBindingsBatchPutGeofenceInput(input, restEncoder); err != nil {
+ return out, metadata, &smithy.SerializationError{Err: err}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentBatchPutGeofenceInput(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_serializeOpHttpBindingsBatchPutGeofenceInput(v *BatchPutGeofenceInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.CollectionName == nil || len(*v.CollectionName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member CollectionName must not be empty")}
+ }
+ if v.CollectionName != nil {
+ if err := encoder.SetURI("CollectionName").String(*v.CollectionName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentBatchPutGeofenceInput(v *BatchPutGeofenceInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Entries != nil {
+ ok := object.Key("Entries")
+ if err := awsRestjson1_serializeDocumentBatchPutGeofenceRequestEntryList(v.Entries, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpBatchUpdateDevicePosition struct {
+}
+
+func (*awsRestjson1_serializeOpBatchUpdateDevicePosition) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpBatchUpdateDevicePosition) 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.(*BatchUpdateDevicePositionInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/tracking/v0/trackers/{TrackerName}/positions")
+ 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_serializeOpHttpBindingsBatchUpdateDevicePositionInput(input, restEncoder); err != nil {
+ return out, metadata, &smithy.SerializationError{Err: err}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentBatchUpdateDevicePositionInput(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_serializeOpHttpBindingsBatchUpdateDevicePositionInput(v *BatchUpdateDevicePositionInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.TrackerName == nil || len(*v.TrackerName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member TrackerName must not be empty")}
+ }
+ if v.TrackerName != nil {
+ if err := encoder.SetURI("TrackerName").String(*v.TrackerName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentBatchUpdateDevicePositionInput(v *BatchUpdateDevicePositionInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Updates != nil {
+ ok := object.Key("Updates")
+ if err := awsRestjson1_serializeDocumentDevicePositionUpdateList(v.Updates, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpCreateGeofenceCollection struct {
+}
+
+func (*awsRestjson1_serializeOpCreateGeofenceCollection) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpCreateGeofenceCollection) 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.(*CreateGeofenceCollectionInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/geofencing/v0/collections")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentCreateGeofenceCollectionInput(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_serializeOpHttpBindingsCreateGeofenceCollectionInput(v *CreateGeofenceCollectionInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentCreateGeofenceCollectionInput(v *CreateGeofenceCollectionInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.CollectionName != nil {
+ ok := object.Key("CollectionName")
+ ok.String(*v.CollectionName)
+ }
+
+ if v.Description != nil {
+ ok := object.Key("Description")
+ ok.String(*v.Description)
+ }
+
+ if len(v.PricingPlan) > 0 {
+ ok := object.Key("PricingPlan")
+ ok.String(string(v.PricingPlan))
+ }
+
+ if v.PricingPlanDataSource != nil {
+ ok := object.Key("PricingPlanDataSource")
+ ok.String(*v.PricingPlanDataSource)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpCreateMap struct {
+}
+
+func (*awsRestjson1_serializeOpCreateMap) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpCreateMap) 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.(*CreateMapInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/maps/v0/maps")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentCreateMapInput(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_serializeOpHttpBindingsCreateMapInput(v *CreateMapInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentCreateMapInput(v *CreateMapInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Configuration != nil {
+ ok := object.Key("Configuration")
+ if err := awsRestjson1_serializeDocumentMapConfiguration(v.Configuration, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.Description != nil {
+ ok := object.Key("Description")
+ ok.String(*v.Description)
+ }
+
+ if v.MapName != nil {
+ ok := object.Key("MapName")
+ ok.String(*v.MapName)
+ }
+
+ if len(v.PricingPlan) > 0 {
+ ok := object.Key("PricingPlan")
+ ok.String(string(v.PricingPlan))
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpCreatePlaceIndex struct {
+}
+
+func (*awsRestjson1_serializeOpCreatePlaceIndex) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpCreatePlaceIndex) 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.(*CreatePlaceIndexInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/places/v0/indexes")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentCreatePlaceIndexInput(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_serializeOpHttpBindingsCreatePlaceIndexInput(v *CreatePlaceIndexInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentCreatePlaceIndexInput(v *CreatePlaceIndexInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.DataSource != nil {
+ ok := object.Key("DataSource")
+ ok.String(*v.DataSource)
+ }
+
+ if v.DataSourceConfiguration != nil {
+ ok := object.Key("DataSourceConfiguration")
+ if err := awsRestjson1_serializeDocumentDataSourceConfiguration(v.DataSourceConfiguration, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.Description != nil {
+ ok := object.Key("Description")
+ ok.String(*v.Description)
+ }
+
+ if v.IndexName != nil {
+ ok := object.Key("IndexName")
+ ok.String(*v.IndexName)
+ }
+
+ if len(v.PricingPlan) > 0 {
+ ok := object.Key("PricingPlan")
+ ok.String(string(v.PricingPlan))
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpCreateTracker struct {
+}
+
+func (*awsRestjson1_serializeOpCreateTracker) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpCreateTracker) 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.(*CreateTrackerInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/tracking/v0/trackers")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentCreateTrackerInput(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_serializeOpHttpBindingsCreateTrackerInput(v *CreateTrackerInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentCreateTrackerInput(v *CreateTrackerInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Description != nil {
+ ok := object.Key("Description")
+ ok.String(*v.Description)
+ }
+
+ if len(v.PricingPlan) > 0 {
+ ok := object.Key("PricingPlan")
+ ok.String(string(v.PricingPlan))
+ }
+
+ if v.PricingPlanDataSource != nil {
+ ok := object.Key("PricingPlanDataSource")
+ ok.String(*v.PricingPlanDataSource)
+ }
+
+ if v.TrackerName != nil {
+ ok := object.Key("TrackerName")
+ ok.String(*v.TrackerName)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpDeleteGeofenceCollection struct {
+}
+
+func (*awsRestjson1_serializeOpDeleteGeofenceCollection) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpDeleteGeofenceCollection) 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.(*DeleteGeofenceCollectionInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/geofencing/v0/collections/{CollectionName}")
+ 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_serializeOpHttpBindingsDeleteGeofenceCollectionInput(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_serializeOpHttpBindingsDeleteGeofenceCollectionInput(v *DeleteGeofenceCollectionInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.CollectionName == nil || len(*v.CollectionName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member CollectionName must not be empty")}
+ }
+ if v.CollectionName != nil {
+ if err := encoder.SetURI("CollectionName").String(*v.CollectionName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpDeleteMap struct {
+}
+
+func (*awsRestjson1_serializeOpDeleteMap) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpDeleteMap) 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.(*DeleteMapInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/maps/v0/maps/{MapName}")
+ 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_serializeOpHttpBindingsDeleteMapInput(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_serializeOpHttpBindingsDeleteMapInput(v *DeleteMapInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.MapName == nil || len(*v.MapName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member MapName must not be empty")}
+ }
+ if v.MapName != nil {
+ if err := encoder.SetURI("MapName").String(*v.MapName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpDeletePlaceIndex struct {
+}
+
+func (*awsRestjson1_serializeOpDeletePlaceIndex) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpDeletePlaceIndex) 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.(*DeletePlaceIndexInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/places/v0/indexes/{IndexName}")
+ 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_serializeOpHttpBindingsDeletePlaceIndexInput(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_serializeOpHttpBindingsDeletePlaceIndexInput(v *DeletePlaceIndexInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.IndexName == nil || len(*v.IndexName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member IndexName must not be empty")}
+ }
+ if v.IndexName != nil {
+ if err := encoder.SetURI("IndexName").String(*v.IndexName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpDeleteTracker struct {
+}
+
+func (*awsRestjson1_serializeOpDeleteTracker) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpDeleteTracker) 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.(*DeleteTrackerInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/tracking/v0/trackers/{TrackerName}")
+ 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_serializeOpHttpBindingsDeleteTrackerInput(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_serializeOpHttpBindingsDeleteTrackerInput(v *DeleteTrackerInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.TrackerName == nil || len(*v.TrackerName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member TrackerName must not be empty")}
+ }
+ if v.TrackerName != nil {
+ if err := encoder.SetURI("TrackerName").String(*v.TrackerName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpDescribeGeofenceCollection struct {
+}
+
+func (*awsRestjson1_serializeOpDescribeGeofenceCollection) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpDescribeGeofenceCollection) 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.(*DescribeGeofenceCollectionInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/geofencing/v0/collections/{CollectionName}")
+ 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_serializeOpHttpBindingsDescribeGeofenceCollectionInput(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_serializeOpHttpBindingsDescribeGeofenceCollectionInput(v *DescribeGeofenceCollectionInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.CollectionName == nil || len(*v.CollectionName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member CollectionName must not be empty")}
+ }
+ if v.CollectionName != nil {
+ if err := encoder.SetURI("CollectionName").String(*v.CollectionName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpDescribeMap struct {
+}
+
+func (*awsRestjson1_serializeOpDescribeMap) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpDescribeMap) 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.(*DescribeMapInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/maps/v0/maps/{MapName}")
+ 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_serializeOpHttpBindingsDescribeMapInput(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_serializeOpHttpBindingsDescribeMapInput(v *DescribeMapInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.MapName == nil || len(*v.MapName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member MapName must not be empty")}
+ }
+ if v.MapName != nil {
+ if err := encoder.SetURI("MapName").String(*v.MapName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpDescribePlaceIndex struct {
+}
+
+func (*awsRestjson1_serializeOpDescribePlaceIndex) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpDescribePlaceIndex) 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.(*DescribePlaceIndexInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/places/v0/indexes/{IndexName}")
+ 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_serializeOpHttpBindingsDescribePlaceIndexInput(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_serializeOpHttpBindingsDescribePlaceIndexInput(v *DescribePlaceIndexInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.IndexName == nil || len(*v.IndexName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member IndexName must not be empty")}
+ }
+ if v.IndexName != nil {
+ if err := encoder.SetURI("IndexName").String(*v.IndexName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpDescribeTracker struct {
+}
+
+func (*awsRestjson1_serializeOpDescribeTracker) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpDescribeTracker) 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.(*DescribeTrackerInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/tracking/v0/trackers/{TrackerName}")
+ 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_serializeOpHttpBindingsDescribeTrackerInput(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_serializeOpHttpBindingsDescribeTrackerInput(v *DescribeTrackerInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.TrackerName == nil || len(*v.TrackerName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member TrackerName must not be empty")}
+ }
+ if v.TrackerName != nil {
+ if err := encoder.SetURI("TrackerName").String(*v.TrackerName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpDisassociateTrackerConsumer struct {
+}
+
+func (*awsRestjson1_serializeOpDisassociateTrackerConsumer) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpDisassociateTrackerConsumer) 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.(*DisassociateTrackerConsumerInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/tracking/v0/trackers/{TrackerName}/consumers/{ConsumerArn}")
+ 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_serializeOpHttpBindingsDisassociateTrackerConsumerInput(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_serializeOpHttpBindingsDisassociateTrackerConsumerInput(v *DisassociateTrackerConsumerInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.ConsumerArn == nil || len(*v.ConsumerArn) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member ConsumerArn must not be empty")}
+ }
+ if v.ConsumerArn != nil {
+ if err := encoder.SetURI("ConsumerArn").String(*v.ConsumerArn); err != nil {
+ return err
+ }
+ }
+
+ if v.TrackerName == nil || len(*v.TrackerName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member TrackerName must not be empty")}
+ }
+ if v.TrackerName != nil {
+ if err := encoder.SetURI("TrackerName").String(*v.TrackerName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpGetDevicePosition struct {
+}
+
+func (*awsRestjson1_serializeOpGetDevicePosition) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpGetDevicePosition) 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.(*GetDevicePositionInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/tracking/v0/trackers/{TrackerName}/devices/{DeviceId}/positions/latest")
+ 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_serializeOpHttpBindingsGetDevicePositionInput(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_serializeOpHttpBindingsGetDevicePositionInput(v *GetDevicePositionInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.DeviceId == nil || len(*v.DeviceId) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member DeviceId must not be empty")}
+ }
+ if v.DeviceId != nil {
+ if err := encoder.SetURI("DeviceId").String(*v.DeviceId); err != nil {
+ return err
+ }
+ }
+
+ if v.TrackerName == nil || len(*v.TrackerName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member TrackerName must not be empty")}
+ }
+ if v.TrackerName != nil {
+ if err := encoder.SetURI("TrackerName").String(*v.TrackerName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpGetDevicePositionHistory struct {
+}
+
+func (*awsRestjson1_serializeOpGetDevicePositionHistory) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpGetDevicePositionHistory) 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.(*GetDevicePositionHistoryInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/tracking/v0/trackers/{TrackerName}/devices/{DeviceId}/list-positions")
+ 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_serializeOpHttpBindingsGetDevicePositionHistoryInput(input, restEncoder); err != nil {
+ return out, metadata, &smithy.SerializationError{Err: err}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentGetDevicePositionHistoryInput(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_serializeOpHttpBindingsGetDevicePositionHistoryInput(v *GetDevicePositionHistoryInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.DeviceId == nil || len(*v.DeviceId) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member DeviceId must not be empty")}
+ }
+ if v.DeviceId != nil {
+ if err := encoder.SetURI("DeviceId").String(*v.DeviceId); err != nil {
+ return err
+ }
+ }
+
+ if v.TrackerName == nil || len(*v.TrackerName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member TrackerName must not be empty")}
+ }
+ if v.TrackerName != nil {
+ if err := encoder.SetURI("TrackerName").String(*v.TrackerName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentGetDevicePositionHistoryInput(v *GetDevicePositionHistoryInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.EndTimeExclusive != nil {
+ ok := object.Key("EndTimeExclusive")
+ ok.String(smithytime.FormatDateTime(*v.EndTimeExclusive))
+ }
+
+ if v.NextToken != nil {
+ ok := object.Key("NextToken")
+ ok.String(*v.NextToken)
+ }
+
+ if v.StartTimeInclusive != nil {
+ ok := object.Key("StartTimeInclusive")
+ ok.String(smithytime.FormatDateTime(*v.StartTimeInclusive))
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpGetGeofence struct {
+}
+
+func (*awsRestjson1_serializeOpGetGeofence) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpGetGeofence) 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.(*GetGeofenceInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/geofencing/v0/collections/{CollectionName}/geofences/{GeofenceId}")
+ 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_serializeOpHttpBindingsGetGeofenceInput(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_serializeOpHttpBindingsGetGeofenceInput(v *GetGeofenceInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.CollectionName == nil || len(*v.CollectionName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member CollectionName must not be empty")}
+ }
+ if v.CollectionName != nil {
+ if err := encoder.SetURI("CollectionName").String(*v.CollectionName); err != nil {
+ return err
+ }
+ }
+
+ if v.GeofenceId == nil || len(*v.GeofenceId) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member GeofenceId must not be empty")}
+ }
+ if v.GeofenceId != nil {
+ if err := encoder.SetURI("GeofenceId").String(*v.GeofenceId); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpGetMapGlyphs struct {
+}
+
+func (*awsRestjson1_serializeOpGetMapGlyphs) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpGetMapGlyphs) 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.(*GetMapGlyphsInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/maps/v0/maps/{MapName}/glyphs/{FontStack}/{FontUnicodeRange}")
+ 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_serializeOpHttpBindingsGetMapGlyphsInput(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_serializeOpHttpBindingsGetMapGlyphsInput(v *GetMapGlyphsInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.FontStack == nil || len(*v.FontStack) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member FontStack must not be empty")}
+ }
+ if v.FontStack != nil {
+ if err := encoder.SetURI("FontStack").String(*v.FontStack); err != nil {
+ return err
+ }
+ }
+
+ if v.FontUnicodeRange == nil || len(*v.FontUnicodeRange) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member FontUnicodeRange must not be empty")}
+ }
+ if v.FontUnicodeRange != nil {
+ if err := encoder.SetURI("FontUnicodeRange").String(*v.FontUnicodeRange); err != nil {
+ return err
+ }
+ }
+
+ if v.MapName == nil || len(*v.MapName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member MapName must not be empty")}
+ }
+ if v.MapName != nil {
+ if err := encoder.SetURI("MapName").String(*v.MapName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpGetMapSprites struct {
+}
+
+func (*awsRestjson1_serializeOpGetMapSprites) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpGetMapSprites) 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.(*GetMapSpritesInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/maps/v0/maps/{MapName}/sprites/{FileName}")
+ 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_serializeOpHttpBindingsGetMapSpritesInput(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_serializeOpHttpBindingsGetMapSpritesInput(v *GetMapSpritesInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.FileName == nil || len(*v.FileName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member FileName must not be empty")}
+ }
+ if v.FileName != nil {
+ if err := encoder.SetURI("FileName").String(*v.FileName); err != nil {
+ return err
+ }
+ }
+
+ if v.MapName == nil || len(*v.MapName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member MapName must not be empty")}
+ }
+ if v.MapName != nil {
+ if err := encoder.SetURI("MapName").String(*v.MapName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpGetMapStyleDescriptor struct {
+}
+
+func (*awsRestjson1_serializeOpGetMapStyleDescriptor) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpGetMapStyleDescriptor) 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.(*GetMapStyleDescriptorInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/maps/v0/maps/{MapName}/style-descriptor")
+ 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_serializeOpHttpBindingsGetMapStyleDescriptorInput(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_serializeOpHttpBindingsGetMapStyleDescriptorInput(v *GetMapStyleDescriptorInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.MapName == nil || len(*v.MapName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member MapName must not be empty")}
+ }
+ if v.MapName != nil {
+ if err := encoder.SetURI("MapName").String(*v.MapName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpGetMapTile struct {
+}
+
+func (*awsRestjson1_serializeOpGetMapTile) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpGetMapTile) 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.(*GetMapTileInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/maps/v0/maps/{MapName}/tiles/{Z}/{X}/{Y}")
+ 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_serializeOpHttpBindingsGetMapTileInput(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_serializeOpHttpBindingsGetMapTileInput(v *GetMapTileInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.MapName == nil || len(*v.MapName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member MapName must not be empty")}
+ }
+ if v.MapName != nil {
+ if err := encoder.SetURI("MapName").String(*v.MapName); err != nil {
+ return err
+ }
+ }
+
+ if v.X == nil || len(*v.X) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member X must not be empty")}
+ }
+ if v.X != nil {
+ if err := encoder.SetURI("X").String(*v.X); err != nil {
+ return err
+ }
+ }
+
+ if v.Y == nil || len(*v.Y) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member Y must not be empty")}
+ }
+ if v.Y != nil {
+ if err := encoder.SetURI("Y").String(*v.Y); err != nil {
+ return err
+ }
+ }
+
+ if v.Z == nil || len(*v.Z) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member Z must not be empty")}
+ }
+ if v.Z != nil {
+ if err := encoder.SetURI("Z").String(*v.Z); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpListGeofenceCollections struct {
+}
+
+func (*awsRestjson1_serializeOpListGeofenceCollections) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpListGeofenceCollections) 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.(*ListGeofenceCollectionsInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/geofencing/v0/list-collections")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentListGeofenceCollectionsInput(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_serializeOpHttpBindingsListGeofenceCollectionsInput(v *ListGeofenceCollectionsInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentListGeofenceCollectionsInput(v *ListGeofenceCollectionsInput, 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)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpListGeofences struct {
+}
+
+func (*awsRestjson1_serializeOpListGeofences) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpListGeofences) 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.(*ListGeofencesInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/geofencing/v0/collections/{CollectionName}/list-geofences")
+ 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_serializeOpHttpBindingsListGeofencesInput(input, restEncoder); err != nil {
+ return out, metadata, &smithy.SerializationError{Err: err}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentListGeofencesInput(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_serializeOpHttpBindingsListGeofencesInput(v *ListGeofencesInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.CollectionName == nil || len(*v.CollectionName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member CollectionName must not be empty")}
+ }
+ if v.CollectionName != nil {
+ if err := encoder.SetURI("CollectionName").String(*v.CollectionName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentListGeofencesInput(v *ListGeofencesInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.NextToken != nil {
+ ok := object.Key("NextToken")
+ ok.String(*v.NextToken)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpListMaps struct {
+}
+
+func (*awsRestjson1_serializeOpListMaps) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpListMaps) 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.(*ListMapsInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/maps/v0/list-maps")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentListMapsInput(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_serializeOpHttpBindingsListMapsInput(v *ListMapsInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentListMapsInput(v *ListMapsInput, 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)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpListPlaceIndexes struct {
+}
+
+func (*awsRestjson1_serializeOpListPlaceIndexes) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpListPlaceIndexes) 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.(*ListPlaceIndexesInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/places/v0/list-indexes")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentListPlaceIndexesInput(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_serializeOpHttpBindingsListPlaceIndexesInput(v *ListPlaceIndexesInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentListPlaceIndexesInput(v *ListPlaceIndexesInput, 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)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpListTrackerConsumers struct {
+}
+
+func (*awsRestjson1_serializeOpListTrackerConsumers) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpListTrackerConsumers) 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.(*ListTrackerConsumersInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/tracking/v0/trackers/{TrackerName}/list-consumers")
+ 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_serializeOpHttpBindingsListTrackerConsumersInput(input, restEncoder); err != nil {
+ return out, metadata, &smithy.SerializationError{Err: err}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentListTrackerConsumersInput(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_serializeOpHttpBindingsListTrackerConsumersInput(v *ListTrackerConsumersInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.TrackerName == nil || len(*v.TrackerName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member TrackerName must not be empty")}
+ }
+ if v.TrackerName != nil {
+ if err := encoder.SetURI("TrackerName").String(*v.TrackerName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentListTrackerConsumersInput(v *ListTrackerConsumersInput, 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)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpListTrackers struct {
+}
+
+func (*awsRestjson1_serializeOpListTrackers) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpListTrackers) 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.(*ListTrackersInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/tracking/v0/list-trackers")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentListTrackersInput(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_serializeOpHttpBindingsListTrackersInput(v *ListTrackersInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentListTrackersInput(v *ListTrackersInput, 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)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpPutGeofence struct {
+}
+
+func (*awsRestjson1_serializeOpPutGeofence) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpPutGeofence) 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.(*PutGeofenceInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/geofencing/v0/collections/{CollectionName}/geofences/{GeofenceId}")
+ request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
+ request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
+ request.Method = "PUT"
+ 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_serializeOpHttpBindingsPutGeofenceInput(input, restEncoder); err != nil {
+ return out, metadata, &smithy.SerializationError{Err: err}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentPutGeofenceInput(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_serializeOpHttpBindingsPutGeofenceInput(v *PutGeofenceInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.CollectionName == nil || len(*v.CollectionName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member CollectionName must not be empty")}
+ }
+ if v.CollectionName != nil {
+ if err := encoder.SetURI("CollectionName").String(*v.CollectionName); err != nil {
+ return err
+ }
+ }
+
+ if v.GeofenceId == nil || len(*v.GeofenceId) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member GeofenceId must not be empty")}
+ }
+ if v.GeofenceId != nil {
+ if err := encoder.SetURI("GeofenceId").String(*v.GeofenceId); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentPutGeofenceInput(v *PutGeofenceInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Geometry != nil {
+ ok := object.Key("Geometry")
+ if err := awsRestjson1_serializeDocumentGeofenceGeometry(v.Geometry, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpSearchPlaceIndexForPosition struct {
+}
+
+func (*awsRestjson1_serializeOpSearchPlaceIndexForPosition) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpSearchPlaceIndexForPosition) 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.(*SearchPlaceIndexForPositionInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/places/v0/indexes/{IndexName}/search/position")
+ 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_serializeOpHttpBindingsSearchPlaceIndexForPositionInput(input, restEncoder); err != nil {
+ return out, metadata, &smithy.SerializationError{Err: err}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentSearchPlaceIndexForPositionInput(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_serializeOpHttpBindingsSearchPlaceIndexForPositionInput(v *SearchPlaceIndexForPositionInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.IndexName == nil || len(*v.IndexName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member IndexName must not be empty")}
+ }
+ if v.IndexName != nil {
+ if err := encoder.SetURI("IndexName").String(*v.IndexName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentSearchPlaceIndexForPositionInput(v *SearchPlaceIndexForPositionInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.MaxResults != 0 {
+ ok := object.Key("MaxResults")
+ ok.Integer(v.MaxResults)
+ }
+
+ if v.Position != nil {
+ ok := object.Key("Position")
+ if err := awsRestjson1_serializeDocumentPosition(v.Position, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpSearchPlaceIndexForText struct {
+}
+
+func (*awsRestjson1_serializeOpSearchPlaceIndexForText) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpSearchPlaceIndexForText) 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.(*SearchPlaceIndexForTextInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/places/v0/indexes/{IndexName}/search/text")
+ 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_serializeOpHttpBindingsSearchPlaceIndexForTextInput(input, restEncoder); err != nil {
+ return out, metadata, &smithy.SerializationError{Err: err}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentSearchPlaceIndexForTextInput(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_serializeOpHttpBindingsSearchPlaceIndexForTextInput(v *SearchPlaceIndexForTextInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ if v.IndexName == nil || len(*v.IndexName) == 0 {
+ return &smithy.SerializationError{Err: fmt.Errorf("input member IndexName must not be empty")}
+ }
+ if v.IndexName != nil {
+ if err := encoder.SetURI("IndexName").String(*v.IndexName); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentSearchPlaceIndexForTextInput(v *SearchPlaceIndexForTextInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.BiasPosition != nil {
+ ok := object.Key("BiasPosition")
+ if err := awsRestjson1_serializeDocumentPosition(v.BiasPosition, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.FilterBBox != nil {
+ ok := object.Key("FilterBBox")
+ if err := awsRestjson1_serializeDocumentBoundingBox(v.FilterBBox, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.FilterCountries != nil {
+ ok := object.Key("FilterCountries")
+ if err := awsRestjson1_serializeDocumentCountryCodeList(v.FilterCountries, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.MaxResults != 0 {
+ ok := object.Key("MaxResults")
+ ok.Integer(v.MaxResults)
+ }
+
+ if v.Text != nil {
+ ok := object.Key("Text")
+ ok.String(*v.Text)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentBatchPutGeofenceRequestEntry(v *types.BatchPutGeofenceRequestEntry, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.GeofenceId != nil {
+ ok := object.Key("GeofenceId")
+ ok.String(*v.GeofenceId)
+ }
+
+ if v.Geometry != nil {
+ ok := object.Key("Geometry")
+ if err := awsRestjson1_serializeDocumentGeofenceGeometry(v.Geometry, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentBatchPutGeofenceRequestEntryList(v []types.BatchPutGeofenceRequestEntry, value smithyjson.Value) error {
+ array := value.Array()
+ defer array.Close()
+
+ for i := range v {
+ av := array.Value()
+ if err := awsRestjson1_serializeDocumentBatchPutGeofenceRequestEntry(&v[i], av); err != nil {
+ return err
+ }
+ }
+ return nil
+}
+
+func awsRestjson1_serializeDocumentBoundingBox(v []float64, value smithyjson.Value) error {
+ array := value.Array()
+ defer array.Close()
+
+ for i := range v {
+ av := array.Value()
+ av.Double(v[i])
+ }
+ return nil
+}
+
+func awsRestjson1_serializeDocumentCountryCodeList(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 awsRestjson1_serializeDocumentDataSourceConfiguration(v *types.DataSourceConfiguration, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if len(v.IntendedUse) > 0 {
+ ok := object.Key("IntendedUse")
+ ok.String(string(v.IntendedUse))
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentDevicePositionUpdate(v *types.DevicePositionUpdate, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.DeviceId != nil {
+ ok := object.Key("DeviceId")
+ ok.String(*v.DeviceId)
+ }
+
+ if v.Position != nil {
+ ok := object.Key("Position")
+ if err := awsRestjson1_serializeDocumentPosition(v.Position, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.SampleTime != nil {
+ ok := object.Key("SampleTime")
+ ok.String(smithytime.FormatDateTime(*v.SampleTime))
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentDevicePositionUpdateList(v []types.DevicePositionUpdate, value smithyjson.Value) error {
+ array := value.Array()
+ defer array.Close()
+
+ for i := range v {
+ av := array.Value()
+ if err := awsRestjson1_serializeDocumentDevicePositionUpdate(&v[i], av); err != nil {
+ return err
+ }
+ }
+ return nil
+}
+
+func awsRestjson1_serializeDocumentGeofenceGeometry(v *types.GeofenceGeometry, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Polygon != nil {
+ ok := object.Key("Polygon")
+ if err := awsRestjson1_serializeDocumentLinearRings(v.Polygon, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentIdList(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 awsRestjson1_serializeDocumentLinearRing(v [][]float64, value smithyjson.Value) error {
+ array := value.Array()
+ defer array.Close()
+
+ for i := range v {
+ av := array.Value()
+ if vv := v[i]; vv == nil {
+ continue
+ }
+ if err := awsRestjson1_serializeDocumentPosition(v[i], av); err != nil {
+ return err
+ }
+ }
+ return nil
+}
+
+func awsRestjson1_serializeDocumentLinearRings(v [][][]float64, value smithyjson.Value) error {
+ array := value.Array()
+ defer array.Close()
+
+ for i := range v {
+ av := array.Value()
+ if vv := v[i]; vv == nil {
+ continue
+ }
+ if err := awsRestjson1_serializeDocumentLinearRing(v[i], av); err != nil {
+ return err
+ }
+ }
+ return nil
+}
+
+func awsRestjson1_serializeDocumentMapConfiguration(v *types.MapConfiguration, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Style != nil {
+ ok := object.Key("Style")
+ ok.String(*v.Style)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentPosition(v []float64, value smithyjson.Value) error {
+ array := value.Array()
+ defer array.Close()
+
+ for i := range v {
+ av := array.Value()
+ av.Double(v[i])
+ }
+ return nil
+}
diff --git a/service/location/types/enums.go b/service/location/types/enums.go
new file mode 100644
index 00000000000..1cba14fe788
--- /dev/null
+++ b/service/location/types/enums.go
@@ -0,0 +1,59 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package types
+
+type BatchItemErrorCode string
+
+// Values returns all known values for BatchItemErrorCode. 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 (BatchItemErrorCode) Values() []BatchItemErrorCode {
+ return []BatchItemErrorCode{
+ "AccessDeniedError",
+ "ConflictError",
+ "InternalServerError",
+ "ResourceNotFoundError",
+ "ThrottlingError",
+ "ValidationError",
+ }
+}
+
+type IntendedUse string
+
+// Values returns all known values for IntendedUse. 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 (IntendedUse) Values() []IntendedUse {
+ return []IntendedUse{
+ "SingleUse",
+ "Storage",
+ }
+}
+
+type PricingPlan string
+
+// Values returns all known values for PricingPlan. 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 (PricingPlan) Values() []PricingPlan {
+ return []PricingPlan{
+ "RequestBasedUsage",
+ "MobileAssetTracking",
+ "MobileAssetManagement",
+ }
+}
+
+type ValidationExceptionReason string
+
+// Values returns all known values for ValidationExceptionReason. 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 (ValidationExceptionReason) Values() []ValidationExceptionReason {
+ return []ValidationExceptionReason{
+ "UnknownOperation",
+ "Missing",
+ "CannotParse",
+ "FieldValidationFailed",
+ "Other",
+ }
+}
diff --git a/service/location/types/errors.go b/service/location/types/errors.go
new file mode 100644
index 00000000000..2489c64dcaf
--- /dev/null
+++ b/service/location/types/errors.go
@@ -0,0 +1,115 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package types
+
+import (
+ "fmt"
+ smithy "github.com/aws/smithy-go"
+)
+
+// The request was denied due to insufficient access or permission. Check with an
+// administrator to verify your permissions.
+type AccessDeniedException struct {
+ Message *string
+}
+
+func (e *AccessDeniedException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *AccessDeniedException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *AccessDeniedException) ErrorCode() string { return "AccessDeniedException" }
+func (e *AccessDeniedException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+
+// The request was unsuccessful due to a conflict.
+type ConflictException struct {
+ Message *string
+}
+
+func (e *ConflictException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *ConflictException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *ConflictException) ErrorCode() string { return "ConflictException" }
+func (e *ConflictException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+
+// The request has failed to process because of an unknown server error, exception,
+// or failure.
+type InternalServerException struct {
+ Message *string
+}
+
+func (e *InternalServerException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *InternalServerException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *InternalServerException) ErrorCode() string { return "InternalServerException" }
+func (e *InternalServerException) ErrorFault() smithy.ErrorFault { return smithy.FaultServer }
+
+// The resource that you've entered was not found in your AWS account.
+type ResourceNotFoundException struct {
+ Message *string
+}
+
+func (e *ResourceNotFoundException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *ResourceNotFoundException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *ResourceNotFoundException) ErrorCode() string { return "ResourceNotFoundException" }
+func (e *ResourceNotFoundException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+
+// The request was denied due to request throttling.
+type ThrottlingException struct {
+ Message *string
+}
+
+func (e *ThrottlingException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *ThrottlingException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *ThrottlingException) ErrorCode() string { return "ThrottlingException" }
+func (e *ThrottlingException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+
+// The input failed to meet the constraints specified by the AWS service.
+type ValidationException struct {
+ Message *string
+
+ Reason ValidationExceptionReason
+ FieldList []ValidationExceptionField
+}
+
+func (e *ValidationException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *ValidationException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *ValidationException) ErrorCode() string { return "ValidationException" }
+func (e *ValidationException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
diff --git a/service/location/types/types.go b/service/location/types/types.go
new file mode 100644
index 00000000000..ae1665f0065
--- /dev/null
+++ b/service/location/types/types.go
@@ -0,0 +1,623 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package types
+
+import (
+ "time"
+)
+
+// Contains error details for each geofence that failed to delete from the geofence
+// collection.
+type BatchDeleteGeofenceError struct {
+
+ // Contains details associated to the batch error.
+ //
+ // This member is required.
+ Error *BatchItemError
+
+ // The geofence associated with the error message.
+ //
+ // This member is required.
+ GeofenceId *string
+}
+
+// Contains error details for each device that failed to evaluate its position
+// against the geofences in a given geofence collection.
+type BatchEvaluateGeofencesError struct {
+
+ // The device associated with the position evaluation error.
+ //
+ // This member is required.
+ DeviceId *string
+
+ // Contains details associated to the batch error.
+ //
+ // This member is required.
+ Error *BatchItemError
+
+ // Specifies a timestamp for when the error occurred in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ
+ //
+ // This member is required.
+ SampleTime *time.Time
+}
+
+// Contains error details for each device that didn't return a position.
+type BatchGetDevicePositionError struct {
+
+ // The ID of the device that didn't return a position.
+ //
+ // This member is required.
+ DeviceId *string
+
+ // Contains details related to the error code.
+ //
+ // This member is required.
+ Error *BatchItemError
+}
+
+// Contains the batch request error details associated with the request.
+type BatchItemError struct {
+
+ // The error code associated with the batch request error.
+ Code BatchItemErrorCode
+
+ // A message with the reason for the batch request error.
+ Message *string
+}
+
+// Contains error details for each geofence that failed to be stored in a given
+// geofence collection.
+type BatchPutGeofenceError struct {
+
+ // Contains details associated to the batch error.
+ //
+ // This member is required.
+ Error *BatchItemError
+
+ // The geofence associated with the error message.
+ //
+ // This member is required.
+ GeofenceId *string
+}
+
+// Contains geofence geometry details.
+type BatchPutGeofenceRequestEntry struct {
+
+ // The identifier for the geofence to be stored in a given geofence collection.
+ //
+ // This member is required.
+ GeofenceId *string
+
+ // Contains the polygon details to specify the position of the geofence. Each
+ // geofence polygon
+ // (https://docs.aws.amazon.com/location-geofences/latest/APIReference/API_GeofenceGeometry.html)
+ // can have a maximum of 1,000 vertices.
+ //
+ // This member is required.
+ Geometry *GeofenceGeometry
+}
+
+// Contains a summary of each geofence that was successfully stored in a given
+// geofence collection.
+type BatchPutGeofenceSuccess struct {
+
+ // The timestamp for when the geofence was stored in a geofence collection in ISO
+ // 8601 (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // The geofence successfully stored in a geofence collection.
+ //
+ // This member is required.
+ GeofenceId *string
+
+ // The timestamp for when the geofence was last updated in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ
+ //
+ // This member is required.
+ UpdateTime *time.Time
+}
+
+// Contains error details for each device that failed to update its position.
+type BatchUpdateDevicePositionError struct {
+
+ // The device associated with the failed location update.
+ //
+ // This member is required.
+ DeviceId *string
+
+ // Contains details related to the error code such as the error code and error
+ // message.
+ //
+ // This member is required.
+ Error *BatchItemError
+
+ // The timestamp at which the device position was determined. Uses ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ SampleTime *time.Time
+}
+
+// Specifies the data storage option chosen for requesting Places. By using Places,
+// you agree that AWS may transmit your API queries to your selected third party
+// provider for processing, which may be outside the AWS region you are currently
+// using. Also, when using HERE as your data provider, you may not (a) use HERE
+// Places for Asset Management, or (b) select the Storage option for the
+// IntendedUse parameter when requesting Places in Japan. For more information, see
+// the AWS Service Terms (https://aws.amazon.com/service-terms/) for Amazon
+// Location Service.
+type DataSourceConfiguration struct {
+
+ // Specifies how the results of an operation will be stored by the caller. Valid
+ // values include:
+ //
+ // * SingleUse specifies that the results won't be stored.
+ //
+ // *
+ // Storage specifies that the result can be cached or stored in a
+ // database.
+ //
+ // Default value: SingleUse
+ IntendedUse IntendedUse
+}
+
+// Contains the device position details.
+type DevicePosition struct {
+
+ // The last known device position.
+ //
+ // This member is required.
+ Position []float64
+
+ // The timestamp for when the tracker resource received the device position in ISO
+ // 8601 (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ ReceivedTime *time.Time
+
+ // The timestamp at which the device's position was determined. Uses ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ SampleTime *time.Time
+
+ // The device whose position you retrieved.
+ DeviceId *string
+}
+
+// Contains the position update details for a device.
+type DevicePositionUpdate struct {
+
+ // The device associated to the position update.
+ //
+ // This member is required.
+ DeviceId *string
+
+ // The latest device position defined in WGS 84
+ // (https://earth-info.nga.mil/GandG/wgs84/index.html) format: [X or longitude, Y
+ // or latitude].
+ //
+ // This member is required.
+ Position []float64
+
+ // The timestamp at which the device's position was determined. Uses ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ
+ //
+ // This member is required.
+ SampleTime *time.Time
+}
+
+// Contains the geofence geometry details. Amazon Location does not currently
+// support polygons with holes, multipolygons, polygons that are wound clockwise,
+// or that cross the antimeridian.
+type GeofenceGeometry struct {
+
+ // An array of 1 or more linear rings. A linear ring is an array of 4 or more
+ // vertices, where the first and last vertex are the same to form a closed
+ // boundary. Each vertex is a 2-dimensional point of the form: [longitude,
+ // latitude]. The first linear ring is an outer ring, describing the polygon's
+ // boundary. Subsequent linear rings may be inner or outer rings to describe holes
+ // and islands. Outer rings must list their vertices in counter-clockwise order
+ // around the ring's center, where the left side is the polygon's exterior. Inner
+ // rings must list their vertices in clockwise order, where the left side is the
+ // polygon's interior.
+ Polygon [][][]float64
+}
+
+// Contains the geofence collection details.
+type ListGeofenceCollectionsResponseEntry struct {
+
+ // The name of the geofence collection.
+ //
+ // This member is required.
+ CollectionName *string
+
+ // The timestamp for when the geofence collection was created in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // The description for the geofence collection
+ //
+ // This member is required.
+ Description *string
+
+ // The pricing plan for the specified geofence collection. For additional details
+ // and restrictions on each pricing plan option, see the Amazon Location Service
+ // pricing page (https://aws.amazon.com/location/pricing/).
+ //
+ // This member is required.
+ PricingPlan PricingPlan
+
+ // Specifies a timestamp for when the resource was last updated in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ
+ //
+ // This member is required.
+ UpdateTime *time.Time
+
+ // The data source selected for the geofence collection and associated pricing
+ // plan.
+ PricingPlanDataSource *string
+}
+
+// Contains a list of geofences stored in a given geofence collection.
+type ListGeofenceResponseEntry struct {
+
+ // The timestamp for when the geofence was stored in a geofence collection in ISO
+ // 8601 (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // The geofence identifier.
+ //
+ // This member is required.
+ GeofenceId *string
+
+ // Contains the geofence geometry details describing a polygon.
+ //
+ // This member is required.
+ Geometry *GeofenceGeometry
+
+ // Identifies the state of the geofence. A geofence will hold one of the following
+ // states:
+ //
+ // * ACTIVE — The geofence has been indexed by the system.
+ //
+ // * PENDING —
+ // The geofence is being processed by the system.
+ //
+ // * FAILED — The geofence failed
+ // to be indexed by the system.
+ //
+ // * DELETED — The geofence has been deleted from the
+ // system index.
+ //
+ // * DELETING — The geofence is being deleted from the system index.
+ //
+ // This member is required.
+ Status *string
+
+ // The timestamp for when the geofence was last updated in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ
+ //
+ // This member is required.
+ UpdateTime *time.Time
+}
+
+// Contains details of an existing map resource in your AWS account.
+type ListMapsResponseEntry struct {
+
+ // The timestamp for when the map resource was created in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // Specifies the data provider for the associated map tiles.
+ //
+ // This member is required.
+ DataSource *string
+
+ // The description for the map resource.
+ //
+ // This member is required.
+ Description *string
+
+ // The name of the associated map resource.
+ //
+ // This member is required.
+ MapName *string
+
+ // The pricing plan for the specified map resource. For additional details and
+ // restrictions on each pricing plan option, see the Amazon Location Service
+ // pricing page (https://aws.amazon.com/location/pricing/).
+ //
+ // This member is required.
+ PricingPlan PricingPlan
+
+ // The timestamp for when the map resource was last updated in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ UpdateTime *time.Time
+}
+
+// A Place index resource listed in your AWS account.
+type ListPlaceIndexesResponseEntry struct {
+
+ // The timestamp for when the Place index resource was created in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // The data provider of geospatial data. Indicates one of the available
+ // providers:
+ //
+ // * Esri
+ //
+ // * HERE
+ //
+ // For additional details on data providers, see the
+ // Amazon Location Service data providers page
+ // (https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html).
+ //
+ // This member is required.
+ DataSource *string
+
+ // The optional description for the Place index resource.
+ //
+ // This member is required.
+ Description *string
+
+ // The name of the Place index resource.
+ //
+ // This member is required.
+ IndexName *string
+
+ // The pricing plan for the specified Place index resource. For additional details
+ // and restrictions on each pricing plan option, see the Amazon Location Service
+ // pricing page (https://aws.amazon.com/location/pricing/).
+ //
+ // This member is required.
+ PricingPlan PricingPlan
+
+ // The timestamp for when the Place index resource was last updated in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ UpdateTime *time.Time
+}
+
+// Contains the tracker resource details.
+type ListTrackersResponseEntry struct {
+
+ // The timestamp for when the tracker resource was created in ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ CreateTime *time.Time
+
+ // The description for the tracker resource.
+ //
+ // This member is required.
+ Description *string
+
+ // The pricing plan for the specified tracker resource. For additional details and
+ // restrictions on each pricing plan option, see the Amazon Location Service
+ // pricing page (https://aws.amazon.com/location/pricing/).
+ //
+ // This member is required.
+ PricingPlan PricingPlan
+
+ // The name of the tracker resource.
+ //
+ // This member is required.
+ TrackerName *string
+
+ // The timestamp at which the device's position was determined. Uses ISO 8601
+ // (https://www.iso.org/iso-8601-date-and-time-format.html) format:
+ // YYYY-MM-DDThh:mm:ss.sssZ.
+ //
+ // This member is required.
+ UpdateTime *time.Time
+
+ // The data source selected for the tracker resource and associated pricing plan.
+ PricingPlanDataSource *string
+}
+
+// Specifies the map tile style selected from an available provider.
+type MapConfiguration struct {
+
+ // Specifies the map style selected from an available data provider. Valid styles:
+ // VectorEsriStreets, VectorEsriTopographic, VectorEsriNavigation,
+ // VectorEsriDarkGrayCanvas, VectorEsriLightGrayCanvas, VectorHereBerlin. When
+ // using HERE as your data provider, and selecting the Style VectorHereBerlin, you
+ // may not use HERE Maps for Asset Management. See the AWS Service Terms
+ // (https://aws.amazon.com/service-terms/) for Amazon Location Service.
+ //
+ // This member is required.
+ Style *string
+}
+
+// Contains details about addresses or points of interest that match the search
+// criteria.
+type Place struct {
+
+ // Places uses a point geometry to specify a location or a Place.
+ //
+ // This member is required.
+ Geometry *PlaceGeometry
+
+ // The numerical portion of an address, such as a building number.
+ AddressNumber *string
+
+ // A country/region specified using ISO 3166
+ // (https://www.iso.org/iso-3166-country-codes.html) 3-digit country/region code.
+ // For example, CAN.
+ Country *string
+
+ // The full name and address of the point of interest such as a city, region, or
+ // country. For example, 123 Any Street, Any Town, USA.
+ Label *string
+
+ // A name for a local area, such as a city or town name. For example, Toronto.
+ Municipality *string
+
+ // The name of a community district. For example, Downtown.
+ Neighborhood *string
+
+ // A group of numbers and letters in a country-specific format, which accompanies
+ // the address for the purpose of identifying a location.
+ PostalCode *string
+
+ // A name for an area or geographical division, such as a province or state name.
+ // For example, British Columbia.
+ Region *string
+
+ // The name for a street or a road to identify a location. For example, Main
+ // Street.
+ Street *string
+
+ // A country, or an area that's part of a larger region . For example, Metro
+ // Vancouver.
+ SubRegion *string
+}
+
+// Places uses a point geometry to specify a location or a Place.
+type PlaceGeometry struct {
+
+ // A single point geometry specifies a location for a Place using WGS 84
+ // (https://gisgeography.com/wgs84-world-geodetic-system/) coordinates:
+ //
+ // * x —
+ // Specifies the x coordinate or longitude.
+ //
+ // * y — Specifies the y coordinate or
+ // latitude.
+ Point []float64
+}
+
+// Specifies a single point of interest, or Place as a result of a search query
+// obtained from a dataset configured in the Place index Resource.
+type SearchForPositionResult struct {
+
+ // Contains details about the relevant point of interest.
+ //
+ // This member is required.
+ Place *Place
+}
+
+// Contains relevant Places returned by calling SearchPlaceIndexForText.
+type SearchForTextResult struct {
+
+ // Contains details about the relevant point of interest.
+ //
+ // This member is required.
+ Place *Place
+}
+
+// A summary of the reverse geocoding request sent using
+// SearchPlaceIndexForPosition.
+type SearchPlaceIndexForPositionSummary struct {
+
+ // The data provider of geospatial data. Indicates one of the available
+ // providers:
+ //
+ // * Esri
+ //
+ // * HERE
+ //
+ // For additional details on data providers, see the
+ // Amazon Location Service data providers page
+ // (https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html).
+ //
+ // This member is required.
+ DataSource *string
+
+ // The position given in the reverse geocoding request.
+ //
+ // This member is required.
+ Position []float64
+
+ // An optional parameter. The maximum number of results returned per request.
+ // Default value: 50
+ MaxResults int32
+}
+
+// A summary of the geocoding request sent using SearchPlaceIndexForText.
+type SearchPlaceIndexForTextSummary struct {
+
+ // The data provider of geospatial data. Indicates one of the available
+ // providers:
+ //
+ // * Esri
+ //
+ // * HERE
+ //
+ // For additional details on data providers, see the
+ // Amazon Location Service data providers page
+ // (https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html).
+ //
+ // This member is required.
+ DataSource *string
+
+ // The address, name, city or region to be used in the geocoding request. In
+ // free-form text format. For example, Vancouver.
+ //
+ // This member is required.
+ Text *string
+
+ // Contains the coordinates for the bias position entered in the geocoding request.
+ BiasPosition []float64
+
+ // Contains the coordinates for the optional bounding box coordinated entered in
+ // the geocoding request.
+ FilterBBox []float64
+
+ // Contains the country filter entered in the geocoding request.
+ FilterCountries []string
+
+ // Contains the maximum number of results indicated for the request.
+ MaxResults int32
+
+ // A bounding box that contains the search results within the specified area
+ // indicated by FilterBBox. A subset of bounding box specified using FilterBBox.
+ ResultBBox []float64
+}
+
+// The input failed to meet the constraints specified by the AWS service in a
+// specified field.
+type ValidationExceptionField struct {
+
+ // A message with the reason for the validation exception error.
+ //
+ // This member is required.
+ Message *string
+
+ // The field name where the invalid entry was detected.
+ //
+ // This member is required.
+ Name *string
+}
diff --git a/service/location/validators.go b/service/location/validators.go
new file mode 100644
index 00000000000..8ef3e375ef6
--- /dev/null
+++ b/service/location/validators.go
@@ -0,0 +1,1402 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package location
+
+import (
+ "context"
+ "fmt"
+ "github.com/aws/aws-sdk-go-v2/service/location/types"
+ smithy "github.com/aws/smithy-go"
+ "github.com/aws/smithy-go/middleware"
+)
+
+type validateOpAssociateTrackerConsumer struct {
+}
+
+func (*validateOpAssociateTrackerConsumer) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpAssociateTrackerConsumer) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*AssociateTrackerConsumerInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpAssociateTrackerConsumerInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpBatchDeleteGeofence struct {
+}
+
+func (*validateOpBatchDeleteGeofence) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpBatchDeleteGeofence) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*BatchDeleteGeofenceInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpBatchDeleteGeofenceInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpBatchEvaluateGeofences struct {
+}
+
+func (*validateOpBatchEvaluateGeofences) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpBatchEvaluateGeofences) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*BatchEvaluateGeofencesInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpBatchEvaluateGeofencesInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpBatchGetDevicePosition struct {
+}
+
+func (*validateOpBatchGetDevicePosition) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpBatchGetDevicePosition) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*BatchGetDevicePositionInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpBatchGetDevicePositionInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpBatchPutGeofence struct {
+}
+
+func (*validateOpBatchPutGeofence) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpBatchPutGeofence) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*BatchPutGeofenceInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpBatchPutGeofenceInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpBatchUpdateDevicePosition struct {
+}
+
+func (*validateOpBatchUpdateDevicePosition) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpBatchUpdateDevicePosition) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*BatchUpdateDevicePositionInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpBatchUpdateDevicePositionInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpCreateGeofenceCollection struct {
+}
+
+func (*validateOpCreateGeofenceCollection) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpCreateGeofenceCollection) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*CreateGeofenceCollectionInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpCreateGeofenceCollectionInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpCreateMap struct {
+}
+
+func (*validateOpCreateMap) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpCreateMap) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*CreateMapInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpCreateMapInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpCreatePlaceIndex struct {
+}
+
+func (*validateOpCreatePlaceIndex) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpCreatePlaceIndex) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*CreatePlaceIndexInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpCreatePlaceIndexInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpCreateTracker struct {
+}
+
+func (*validateOpCreateTracker) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpCreateTracker) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*CreateTrackerInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpCreateTrackerInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpDeleteGeofenceCollection struct {
+}
+
+func (*validateOpDeleteGeofenceCollection) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDeleteGeofenceCollection) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DeleteGeofenceCollectionInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDeleteGeofenceCollectionInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpDeleteMap struct {
+}
+
+func (*validateOpDeleteMap) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDeleteMap) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DeleteMapInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDeleteMapInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpDeletePlaceIndex struct {
+}
+
+func (*validateOpDeletePlaceIndex) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDeletePlaceIndex) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DeletePlaceIndexInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDeletePlaceIndexInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpDeleteTracker struct {
+}
+
+func (*validateOpDeleteTracker) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDeleteTracker) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DeleteTrackerInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDeleteTrackerInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpDescribeGeofenceCollection struct {
+}
+
+func (*validateOpDescribeGeofenceCollection) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDescribeGeofenceCollection) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DescribeGeofenceCollectionInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDescribeGeofenceCollectionInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpDescribeMap struct {
+}
+
+func (*validateOpDescribeMap) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDescribeMap) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DescribeMapInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDescribeMapInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpDescribePlaceIndex struct {
+}
+
+func (*validateOpDescribePlaceIndex) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDescribePlaceIndex) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DescribePlaceIndexInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDescribePlaceIndexInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpDescribeTracker struct {
+}
+
+func (*validateOpDescribeTracker) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDescribeTracker) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DescribeTrackerInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDescribeTrackerInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpDisassociateTrackerConsumer struct {
+}
+
+func (*validateOpDisassociateTrackerConsumer) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDisassociateTrackerConsumer) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DisassociateTrackerConsumerInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDisassociateTrackerConsumerInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpGetDevicePositionHistory struct {
+}
+
+func (*validateOpGetDevicePositionHistory) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpGetDevicePositionHistory) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*GetDevicePositionHistoryInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpGetDevicePositionHistoryInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpGetDevicePosition struct {
+}
+
+func (*validateOpGetDevicePosition) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpGetDevicePosition) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*GetDevicePositionInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpGetDevicePositionInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpGetGeofence struct {
+}
+
+func (*validateOpGetGeofence) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpGetGeofence) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*GetGeofenceInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpGetGeofenceInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpGetMapGlyphs struct {
+}
+
+func (*validateOpGetMapGlyphs) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpGetMapGlyphs) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*GetMapGlyphsInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpGetMapGlyphsInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpGetMapSprites struct {
+}
+
+func (*validateOpGetMapSprites) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpGetMapSprites) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*GetMapSpritesInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpGetMapSpritesInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpGetMapStyleDescriptor struct {
+}
+
+func (*validateOpGetMapStyleDescriptor) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpGetMapStyleDescriptor) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*GetMapStyleDescriptorInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpGetMapStyleDescriptorInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpGetMapTile struct {
+}
+
+func (*validateOpGetMapTile) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpGetMapTile) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*GetMapTileInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpGetMapTileInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpListGeofences struct {
+}
+
+func (*validateOpListGeofences) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpListGeofences) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*ListGeofencesInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpListGeofencesInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpListTrackerConsumers struct {
+}
+
+func (*validateOpListTrackerConsumers) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpListTrackerConsumers) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*ListTrackerConsumersInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpListTrackerConsumersInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpPutGeofence struct {
+}
+
+func (*validateOpPutGeofence) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpPutGeofence) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*PutGeofenceInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpPutGeofenceInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpSearchPlaceIndexForPosition struct {
+}
+
+func (*validateOpSearchPlaceIndexForPosition) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpSearchPlaceIndexForPosition) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*SearchPlaceIndexForPositionInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpSearchPlaceIndexForPositionInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpSearchPlaceIndexForText struct {
+}
+
+func (*validateOpSearchPlaceIndexForText) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpSearchPlaceIndexForText) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*SearchPlaceIndexForTextInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpSearchPlaceIndexForTextInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+func addOpAssociateTrackerConsumerValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpAssociateTrackerConsumer{}, middleware.After)
+}
+
+func addOpBatchDeleteGeofenceValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpBatchDeleteGeofence{}, middleware.After)
+}
+
+func addOpBatchEvaluateGeofencesValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpBatchEvaluateGeofences{}, middleware.After)
+}
+
+func addOpBatchGetDevicePositionValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpBatchGetDevicePosition{}, middleware.After)
+}
+
+func addOpBatchPutGeofenceValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpBatchPutGeofence{}, middleware.After)
+}
+
+func addOpBatchUpdateDevicePositionValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpBatchUpdateDevicePosition{}, middleware.After)
+}
+
+func addOpCreateGeofenceCollectionValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpCreateGeofenceCollection{}, middleware.After)
+}
+
+func addOpCreateMapValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpCreateMap{}, middleware.After)
+}
+
+func addOpCreatePlaceIndexValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpCreatePlaceIndex{}, middleware.After)
+}
+
+func addOpCreateTrackerValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpCreateTracker{}, middleware.After)
+}
+
+func addOpDeleteGeofenceCollectionValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDeleteGeofenceCollection{}, middleware.After)
+}
+
+func addOpDeleteMapValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDeleteMap{}, middleware.After)
+}
+
+func addOpDeletePlaceIndexValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDeletePlaceIndex{}, middleware.After)
+}
+
+func addOpDeleteTrackerValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDeleteTracker{}, middleware.After)
+}
+
+func addOpDescribeGeofenceCollectionValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDescribeGeofenceCollection{}, middleware.After)
+}
+
+func addOpDescribeMapValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDescribeMap{}, middleware.After)
+}
+
+func addOpDescribePlaceIndexValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDescribePlaceIndex{}, middleware.After)
+}
+
+func addOpDescribeTrackerValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDescribeTracker{}, middleware.After)
+}
+
+func addOpDisassociateTrackerConsumerValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDisassociateTrackerConsumer{}, middleware.After)
+}
+
+func addOpGetDevicePositionHistoryValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpGetDevicePositionHistory{}, middleware.After)
+}
+
+func addOpGetDevicePositionValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpGetDevicePosition{}, middleware.After)
+}
+
+func addOpGetGeofenceValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpGetGeofence{}, middleware.After)
+}
+
+func addOpGetMapGlyphsValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpGetMapGlyphs{}, middleware.After)
+}
+
+func addOpGetMapSpritesValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpGetMapSprites{}, middleware.After)
+}
+
+func addOpGetMapStyleDescriptorValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpGetMapStyleDescriptor{}, middleware.After)
+}
+
+func addOpGetMapTileValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpGetMapTile{}, middleware.After)
+}
+
+func addOpListGeofencesValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpListGeofences{}, middleware.After)
+}
+
+func addOpListTrackerConsumersValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpListTrackerConsumers{}, middleware.After)
+}
+
+func addOpPutGeofenceValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpPutGeofence{}, middleware.After)
+}
+
+func addOpSearchPlaceIndexForPositionValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpSearchPlaceIndexForPosition{}, middleware.After)
+}
+
+func addOpSearchPlaceIndexForTextValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpSearchPlaceIndexForText{}, middleware.After)
+}
+
+func validateBatchPutGeofenceRequestEntry(v *types.BatchPutGeofenceRequestEntry) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "BatchPutGeofenceRequestEntry"}
+ if v.GeofenceId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("GeofenceId"))
+ }
+ if v.Geometry == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Geometry"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateBatchPutGeofenceRequestEntryList(v []types.BatchPutGeofenceRequestEntry) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "BatchPutGeofenceRequestEntryList"}
+ for i := range v {
+ if err := validateBatchPutGeofenceRequestEntry(&v[i]); err != nil {
+ invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateDevicePositionUpdate(v *types.DevicePositionUpdate) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DevicePositionUpdate"}
+ if v.DeviceId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("DeviceId"))
+ }
+ if v.SampleTime == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("SampleTime"))
+ }
+ if v.Position == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Position"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateDevicePositionUpdateList(v []types.DevicePositionUpdate) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DevicePositionUpdateList"}
+ for i := range v {
+ if err := validateDevicePositionUpdate(&v[i]); err != nil {
+ invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateMapConfiguration(v *types.MapConfiguration) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "MapConfiguration"}
+ if v.Style == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Style"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpAssociateTrackerConsumerInput(v *AssociateTrackerConsumerInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "AssociateTrackerConsumerInput"}
+ if v.TrackerName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("TrackerName"))
+ }
+ if v.ConsumerArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("ConsumerArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpBatchDeleteGeofenceInput(v *BatchDeleteGeofenceInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "BatchDeleteGeofenceInput"}
+ if v.CollectionName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("CollectionName"))
+ }
+ if v.GeofenceIds == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("GeofenceIds"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpBatchEvaluateGeofencesInput(v *BatchEvaluateGeofencesInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "BatchEvaluateGeofencesInput"}
+ if v.CollectionName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("CollectionName"))
+ }
+ if v.DevicePositionUpdates == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("DevicePositionUpdates"))
+ } else if v.DevicePositionUpdates != nil {
+ if err := validateDevicePositionUpdateList(v.DevicePositionUpdates); err != nil {
+ invalidParams.AddNested("DevicePositionUpdates", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpBatchGetDevicePositionInput(v *BatchGetDevicePositionInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "BatchGetDevicePositionInput"}
+ if v.TrackerName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("TrackerName"))
+ }
+ if v.DeviceIds == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("DeviceIds"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpBatchPutGeofenceInput(v *BatchPutGeofenceInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "BatchPutGeofenceInput"}
+ if v.CollectionName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("CollectionName"))
+ }
+ if v.Entries == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Entries"))
+ } else if v.Entries != nil {
+ if err := validateBatchPutGeofenceRequestEntryList(v.Entries); err != nil {
+ invalidParams.AddNested("Entries", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpBatchUpdateDevicePositionInput(v *BatchUpdateDevicePositionInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "BatchUpdateDevicePositionInput"}
+ if v.TrackerName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("TrackerName"))
+ }
+ if v.Updates == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Updates"))
+ } else if v.Updates != nil {
+ if err := validateDevicePositionUpdateList(v.Updates); err != nil {
+ invalidParams.AddNested("Updates", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpCreateGeofenceCollectionInput(v *CreateGeofenceCollectionInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CreateGeofenceCollectionInput"}
+ if v.CollectionName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("CollectionName"))
+ }
+ if len(v.PricingPlan) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("PricingPlan"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpCreateMapInput(v *CreateMapInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CreateMapInput"}
+ if v.MapName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MapName"))
+ }
+ if v.Configuration == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Configuration"))
+ } else if v.Configuration != nil {
+ if err := validateMapConfiguration(v.Configuration); err != nil {
+ invalidParams.AddNested("Configuration", err.(smithy.InvalidParamsError))
+ }
+ }
+ if len(v.PricingPlan) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("PricingPlan"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpCreatePlaceIndexInput(v *CreatePlaceIndexInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CreatePlaceIndexInput"}
+ if v.IndexName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("IndexName"))
+ }
+ if v.DataSource == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("DataSource"))
+ }
+ if len(v.PricingPlan) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("PricingPlan"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpCreateTrackerInput(v *CreateTrackerInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CreateTrackerInput"}
+ if v.TrackerName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("TrackerName"))
+ }
+ if len(v.PricingPlan) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("PricingPlan"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpDeleteGeofenceCollectionInput(v *DeleteGeofenceCollectionInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DeleteGeofenceCollectionInput"}
+ if v.CollectionName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("CollectionName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpDeleteMapInput(v *DeleteMapInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DeleteMapInput"}
+ if v.MapName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MapName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpDeletePlaceIndexInput(v *DeletePlaceIndexInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DeletePlaceIndexInput"}
+ if v.IndexName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("IndexName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpDeleteTrackerInput(v *DeleteTrackerInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DeleteTrackerInput"}
+ if v.TrackerName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("TrackerName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpDescribeGeofenceCollectionInput(v *DescribeGeofenceCollectionInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DescribeGeofenceCollectionInput"}
+ if v.CollectionName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("CollectionName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpDescribeMapInput(v *DescribeMapInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DescribeMapInput"}
+ if v.MapName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MapName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpDescribePlaceIndexInput(v *DescribePlaceIndexInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DescribePlaceIndexInput"}
+ if v.IndexName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("IndexName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpDescribeTrackerInput(v *DescribeTrackerInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DescribeTrackerInput"}
+ if v.TrackerName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("TrackerName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpDisassociateTrackerConsumerInput(v *DisassociateTrackerConsumerInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DisassociateTrackerConsumerInput"}
+ if v.TrackerName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("TrackerName"))
+ }
+ if v.ConsumerArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("ConsumerArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpGetDevicePositionHistoryInput(v *GetDevicePositionHistoryInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "GetDevicePositionHistoryInput"}
+ if v.TrackerName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("TrackerName"))
+ }
+ if v.DeviceId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("DeviceId"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpGetDevicePositionInput(v *GetDevicePositionInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "GetDevicePositionInput"}
+ if v.TrackerName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("TrackerName"))
+ }
+ if v.DeviceId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("DeviceId"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpGetGeofenceInput(v *GetGeofenceInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "GetGeofenceInput"}
+ if v.CollectionName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("CollectionName"))
+ }
+ if v.GeofenceId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("GeofenceId"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpGetMapGlyphsInput(v *GetMapGlyphsInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "GetMapGlyphsInput"}
+ if v.MapName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MapName"))
+ }
+ if v.FontStack == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("FontStack"))
+ }
+ if v.FontUnicodeRange == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("FontUnicodeRange"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpGetMapSpritesInput(v *GetMapSpritesInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "GetMapSpritesInput"}
+ if v.MapName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MapName"))
+ }
+ if v.FileName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("FileName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpGetMapStyleDescriptorInput(v *GetMapStyleDescriptorInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "GetMapStyleDescriptorInput"}
+ if v.MapName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MapName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpGetMapTileInput(v *GetMapTileInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "GetMapTileInput"}
+ if v.MapName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MapName"))
+ }
+ if v.Z == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Z"))
+ }
+ if v.X == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("X"))
+ }
+ if v.Y == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Y"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpListGeofencesInput(v *ListGeofencesInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "ListGeofencesInput"}
+ if v.CollectionName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("CollectionName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpListTrackerConsumersInput(v *ListTrackerConsumersInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "ListTrackerConsumersInput"}
+ if v.TrackerName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("TrackerName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpPutGeofenceInput(v *PutGeofenceInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "PutGeofenceInput"}
+ if v.CollectionName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("CollectionName"))
+ }
+ if v.GeofenceId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("GeofenceId"))
+ }
+ if v.Geometry == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Geometry"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpSearchPlaceIndexForPositionInput(v *SearchPlaceIndexForPositionInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "SearchPlaceIndexForPositionInput"}
+ if v.IndexName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("IndexName"))
+ }
+ if v.Position == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Position"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpSearchPlaceIndexForTextInput(v *SearchPlaceIndexForTextInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "SearchPlaceIndexForTextInput"}
+ if v.IndexName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("IndexName"))
+ }
+ if v.Text == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Text"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
diff --git a/service/lookoutmetrics/LICENSE.txt b/service/lookoutmetrics/LICENSE.txt
new file mode 100644
index 00000000000..d6456956733
--- /dev/null
+++ b/service/lookoutmetrics/LICENSE.txt
@@ -0,0 +1,202 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/service/lookoutmetrics/api_client.go b/service/lookoutmetrics/api_client.go
new file mode 100644
index 00000000000..b9c8aa0969c
--- /dev/null
+++ b/service/lookoutmetrics/api_client.go
@@ -0,0 +1,259 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+import (
+ "context"
+ "github.com/aws/aws-sdk-go-v2/aws"
+ awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
+ "github.com/aws/aws-sdk-go-v2/aws/retry"
+ "github.com/aws/aws-sdk-go-v2/aws/signer/v4"
+ awshttp "github.com/aws/aws-sdk-go-v2/aws/transport/http"
+ smithy "github.com/aws/smithy-go"
+ "github.com/aws/smithy-go/logging"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "net/http"
+ "time"
+)
+
+const ServiceID = "LookoutMetrics"
+const ServiceAPIVersion = "2017-07-25"
+
+// Client provides the API client to make operations call for Amazon Lookout for
+// Metrics.
+type Client struct {
+ options Options
+}
+
+// New returns an initialized Client based on the functional options. Provide
+// additional functional options to further configure the behavior of the client,
+// such as changing the client's endpoint or adding custom middleware behavior.
+func New(options Options, optFns ...func(*Options)) *Client {
+ options = options.Copy()
+
+ resolveDefaultLogger(&options)
+
+ resolveRetryer(&options)
+
+ resolveHTTPClient(&options)
+
+ resolveHTTPSignerV4(&options)
+
+ resolveDefaultEndpointConfiguration(&options)
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ client := &Client{
+ options: options,
+ }
+
+ return client
+}
+
+type Options struct {
+ // Set of options to modify how an operation is invoked. These apply to all
+ // operations invoked for this client. Use functional options on operation call to
+ // modify this list for per operation behavior.
+ APIOptions []func(*middleware.Stack) error
+
+ // Configures the events that will be sent to the configured logger.
+ ClientLogMode aws.ClientLogMode
+
+ // The credentials object to use when signing requests.
+ Credentials aws.CredentialsProvider
+
+ // The endpoint options to be used when attempting to resolve an endpoint.
+ EndpointOptions EndpointResolverOptions
+
+ // The service endpoint resolver.
+ EndpointResolver EndpointResolver
+
+ // Signature Version 4 (SigV4) Signer
+ HTTPSignerV4 HTTPSignerV4
+
+ // The logger writer interface to write logging messages to.
+ Logger logging.Logger
+
+ // The region to send requests to. (Required)
+ Region string
+
+ // Retryer guides how HTTP requests should be retried in case of recoverable
+ // failures. When nil the API client will use a default retryer.
+ Retryer aws.Retryer
+
+ // The HTTP client to invoke API calls with. Defaults to client's default HTTP
+ // implementation if nil.
+ HTTPClient HTTPClient
+}
+
+// WithAPIOptions returns a functional option for setting the Client's APIOptions
+// option.
+func WithAPIOptions(optFns ...func(*middleware.Stack) error) func(*Options) {
+ return func(o *Options) {
+ o.APIOptions = append(o.APIOptions, optFns...)
+ }
+}
+
+// WithEndpointResolver returns a functional option for setting the Client's
+// EndpointResolver option.
+func WithEndpointResolver(v EndpointResolver) func(*Options) {
+ return func(o *Options) {
+ o.EndpointResolver = v
+ }
+}
+
+type HTTPClient interface {
+ Do(*http.Request) (*http.Response, error)
+}
+
+// Copy creates a clone where the APIOptions list is deep copied.
+func (o Options) Copy() Options {
+ to := o
+ to.APIOptions = make([]func(*middleware.Stack) error, len(o.APIOptions))
+ copy(to.APIOptions, o.APIOptions)
+ return to
+}
+func (c *Client) invokeOperation(ctx context.Context, opID string, params interface{}, optFns []func(*Options), stackFns ...func(*middleware.Stack, Options) error) (result interface{}, metadata middleware.Metadata, err error) {
+ ctx = middleware.ClearStackValues(ctx)
+ stack := middleware.NewStack(opID, smithyhttp.NewStackRequest)
+ options := c.options.Copy()
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ for _, fn := range stackFns {
+ if err := fn(stack, options); err != nil {
+ return nil, metadata, err
+ }
+ }
+
+ for _, fn := range options.APIOptions {
+ if err := fn(stack); err != nil {
+ return nil, metadata, err
+ }
+ }
+
+ handler := middleware.DecorateHandler(smithyhttp.NewClientHandler(options.HTTPClient), stack)
+ result, metadata, err = handler.Handle(ctx, params)
+ if err != nil {
+ err = &smithy.OperationError{
+ ServiceID: ServiceID,
+ OperationName: opID,
+ Err: err,
+ }
+ }
+ return result, metadata, err
+}
+
+func resolveDefaultLogger(o *Options) {
+ if o.Logger != nil {
+ return
+ }
+ o.Logger = logging.Nop{}
+}
+
+func addSetLoggerMiddleware(stack *middleware.Stack, o Options) error {
+ return middleware.AddSetLoggerMiddleware(stack, o.Logger)
+}
+
+// NewFromConfig returns a new client from the provided config.
+func NewFromConfig(cfg aws.Config, optFns ...func(*Options)) *Client {
+ opts := Options{
+ Region: cfg.Region,
+ HTTPClient: cfg.HTTPClient,
+ Credentials: cfg.Credentials,
+ APIOptions: cfg.APIOptions,
+ Logger: cfg.Logger,
+ ClientLogMode: cfg.ClientLogMode,
+ }
+ resolveAWSRetryerProvider(cfg, &opts)
+ resolveAWSEndpointResolver(cfg, &opts)
+ return New(opts, optFns...)
+}
+
+func resolveHTTPClient(o *Options) {
+ if o.HTTPClient != nil {
+ return
+ }
+ o.HTTPClient = awshttp.NewBuildableClient()
+}
+
+func resolveRetryer(o *Options) {
+ if o.Retryer != nil {
+ return
+ }
+ o.Retryer = retry.NewStandard()
+}
+
+func resolveAWSRetryerProvider(cfg aws.Config, o *Options) {
+ if cfg.Retryer == nil {
+ return
+ }
+ o.Retryer = cfg.Retryer()
+}
+
+func resolveAWSEndpointResolver(cfg aws.Config, o *Options) {
+ if cfg.EndpointResolver == nil {
+ return
+ }
+ o.EndpointResolver = withEndpointResolver(cfg.EndpointResolver, NewDefaultEndpointResolver())
+}
+
+func addClientUserAgent(stack *middleware.Stack) error {
+ return awsmiddleware.AddRequestUserAgentMiddleware(stack)
+}
+
+func addHTTPSignerV4Middleware(stack *middleware.Stack, o Options) error {
+ mw := v4.NewSignHTTPRequestMiddleware(v4.SignHTTPRequestMiddlewareOptions{
+ CredentialsProvider: o.Credentials,
+ Signer: o.HTTPSignerV4,
+ LogSigning: o.ClientLogMode.IsSigning(),
+ })
+ return stack.Finalize.Add(mw, middleware.After)
+}
+
+type HTTPSignerV4 interface {
+ SignHTTP(ctx context.Context, credentials aws.Credentials, r *http.Request, payloadHash string, service string, region string, signingTime time.Time, optFns ...func(*v4.SignerOptions)) error
+}
+
+func resolveHTTPSignerV4(o *Options) {
+ if o.HTTPSignerV4 != nil {
+ return
+ }
+ o.HTTPSignerV4 = newDefaultV4Signer(*o)
+}
+
+func newDefaultV4Signer(o Options) *v4.Signer {
+ return v4.NewSigner(func(so *v4.SignerOptions) {
+ so.Logger = o.Logger
+ so.LogSigning = o.ClientLogMode.IsSigning()
+ })
+}
+
+func addRetryMiddlewares(stack *middleware.Stack, o Options) error {
+ mo := retry.AddRetryMiddlewaresOptions{
+ Retryer: o.Retryer,
+ LogRetryAttempts: o.ClientLogMode.IsRetries(),
+ }
+ return retry.AddRetryMiddlewares(stack, mo)
+}
+
+func addRequestIDRetrieverMiddleware(stack *middleware.Stack) error {
+ return awsmiddleware.AddRequestIDRetrieverMiddleware(stack)
+}
+
+func addResponseErrorMiddleware(stack *middleware.Stack) error {
+ return awshttp.AddResponseErrorMiddleware(stack)
+}
+
+func addRequestResponseLogging(stack *middleware.Stack, o Options) error {
+ return stack.Deserialize.Add(&smithyhttp.RequestResponseLogger{
+ LogRequest: o.ClientLogMode.IsRequest(),
+ LogRequestWithBody: o.ClientLogMode.IsRequestWithBody(),
+ LogResponse: o.ClientLogMode.IsResponse(),
+ LogResponseWithBody: o.ClientLogMode.IsResponseWithBody(),
+ }, middleware.After)
+}
diff --git a/service/lookoutmetrics/api_op_ActivateAnomalyDetector.go b/service/lookoutmetrics/api_op_ActivateAnomalyDetector.go
new file mode 100644
index 00000000000..5d153d030ab
--- /dev/null
+++ b/service/lookoutmetrics/api_op_ActivateAnomalyDetector.go
@@ -0,0 +1,112 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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"
+)
+
+// Activates an anomaly detector.
+func (c *Client) ActivateAnomalyDetector(ctx context.Context, params *ActivateAnomalyDetectorInput, optFns ...func(*Options)) (*ActivateAnomalyDetectorOutput, error) {
+ if params == nil {
+ params = &ActivateAnomalyDetectorInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "ActivateAnomalyDetector", params, optFns, addOperationActivateAnomalyDetectorMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ActivateAnomalyDetectorOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ActivateAnomalyDetectorInput struct {
+
+ // The ARN of the anomaly detector.
+ //
+ // This member is required.
+ AnomalyDetectorArn *string
+}
+
+type ActivateAnomalyDetectorOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationActivateAnomalyDetectorMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpActivateAnomalyDetector{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpActivateAnomalyDetector{}, 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 = addOpActivateAnomalyDetectorValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opActivateAnomalyDetector(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_opActivateAnomalyDetector(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "ActivateAnomalyDetector",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_BackTestAnomalyDetector.go b/service/lookoutmetrics/api_op_BackTestAnomalyDetector.go
new file mode 100644
index 00000000000..e5aa45d506d
--- /dev/null
+++ b/service/lookoutmetrics/api_op_BackTestAnomalyDetector.go
@@ -0,0 +1,112 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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"
+)
+
+// Runs a backtest for anomaly detection for the specified resource.
+func (c *Client) BackTestAnomalyDetector(ctx context.Context, params *BackTestAnomalyDetectorInput, optFns ...func(*Options)) (*BackTestAnomalyDetectorOutput, error) {
+ if params == nil {
+ params = &BackTestAnomalyDetectorInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "BackTestAnomalyDetector", params, optFns, addOperationBackTestAnomalyDetectorMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*BackTestAnomalyDetectorOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type BackTestAnomalyDetectorInput struct {
+
+ // The Amazon Resource Name (ARN) of the anomaly detector.
+ //
+ // This member is required.
+ AnomalyDetectorArn *string
+}
+
+type BackTestAnomalyDetectorOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationBackTestAnomalyDetectorMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpBackTestAnomalyDetector{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpBackTestAnomalyDetector{}, 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 = addOpBackTestAnomalyDetectorValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opBackTestAnomalyDetector(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_opBackTestAnomalyDetector(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "BackTestAnomalyDetector",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_CreateAlert.go b/service/lookoutmetrics/api_op_CreateAlert.go
new file mode 100644
index 00000000000..d4967f24c59
--- /dev/null
+++ b/service/lookoutmetrics/api_op_CreateAlert.go
@@ -0,0 +1,140 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Creates an alert for an anomaly detector.
+func (c *Client) CreateAlert(ctx context.Context, params *CreateAlertInput, optFns ...func(*Options)) (*CreateAlertOutput, error) {
+ if params == nil {
+ params = &CreateAlertInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "CreateAlert", params, optFns, addOperationCreateAlertMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*CreateAlertOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type CreateAlertInput struct {
+
+ // Action that will be triggered when there is an alert.
+ //
+ // This member is required.
+ Action *types.Action
+
+ // The name of the alert.
+ //
+ // This member is required.
+ AlertName *string
+
+ // An integer from 0 to 100 specifying the alert sensitivity threshold.
+ //
+ // This member is required.
+ AlertSensitivityThreshold int32
+
+ // The ARN of the detector to which the alert is attached.
+ //
+ // This member is required.
+ AnomalyDetectorArn *string
+
+ // A description of the alert.
+ AlertDescription *string
+
+ // A list of tags
+ // (https://docs.aws.amazon.com/lookoutmetrics/latest/dev/detectors-tags.html) to
+ // apply to the alert.
+ Tags map[string]string
+}
+
+type CreateAlertOutput struct {
+
+ // The ARN of the alert.
+ AlertArn *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationCreateAlertMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpCreateAlert{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpCreateAlert{}, 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 = addOpCreateAlertValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateAlert(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_opCreateAlert(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "CreateAlert",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_CreateAnomalyDetector.go b/service/lookoutmetrics/api_op_CreateAnomalyDetector.go
new file mode 100644
index 00000000000..3668e603eab
--- /dev/null
+++ b/service/lookoutmetrics/api_op_CreateAnomalyDetector.go
@@ -0,0 +1,133 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Creates an anomaly detector.
+func (c *Client) CreateAnomalyDetector(ctx context.Context, params *CreateAnomalyDetectorInput, optFns ...func(*Options)) (*CreateAnomalyDetectorOutput, error) {
+ if params == nil {
+ params = &CreateAnomalyDetectorInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "CreateAnomalyDetector", params, optFns, addOperationCreateAnomalyDetectorMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*CreateAnomalyDetectorOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type CreateAnomalyDetectorInput struct {
+
+ // Contains information about the configuration of the anomaly detector.
+ //
+ // This member is required.
+ AnomalyDetectorConfig *types.AnomalyDetectorConfig
+
+ // The name of the detector.
+ //
+ // This member is required.
+ AnomalyDetectorName *string
+
+ // A description of the detector.
+ AnomalyDetectorDescription *string
+
+ // The ARN of the KMS key to use to encrypt your data.
+ KmsKeyArn *string
+
+ // A list of tags
+ // (https://docs.aws.amazon.com/lookoutmetrics/latest/dev/detectors-tags.html) to
+ // apply to the anomaly detector.
+ Tags map[string]string
+}
+
+type CreateAnomalyDetectorOutput struct {
+
+ // The ARN of the detector.
+ AnomalyDetectorArn *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationCreateAnomalyDetectorMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpCreateAnomalyDetector{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpCreateAnomalyDetector{}, 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 = addOpCreateAnomalyDetectorValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateAnomalyDetector(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_opCreateAnomalyDetector(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "CreateAnomalyDetector",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_CreateMetricSet.go b/service/lookoutmetrics/api_op_CreateMetricSet.go
new file mode 100644
index 00000000000..cf5badecd6b
--- /dev/null
+++ b/service/lookoutmetrics/api_op_CreateMetricSet.go
@@ -0,0 +1,157 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Creates a dataset.
+func (c *Client) CreateMetricSet(ctx context.Context, params *CreateMetricSetInput, optFns ...func(*Options)) (*CreateMetricSetOutput, error) {
+ if params == nil {
+ params = &CreateMetricSetInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "CreateMetricSet", params, optFns, addOperationCreateMetricSetMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*CreateMetricSetOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type CreateMetricSetInput struct {
+
+ // The ARN of the anomaly detector that will use the dataset.
+ //
+ // This member is required.
+ AnomalyDetectorArn *string
+
+ // A list of metrics that the dataset will contain.
+ //
+ // This member is required.
+ MetricList []types.Metric
+
+ // The name of the dataset.
+ //
+ // This member is required.
+ MetricSetName *string
+
+ // Contains information about how the source data should be interpreted.
+ //
+ // This member is required.
+ MetricSource *types.MetricSource
+
+ // A list of the fields you want to treat as dimensions.
+ DimensionList []string
+
+ // A description of the dataset you are creating.
+ MetricSetDescription *string
+
+ // The frequency with which the source data will be analyzed for anomalies.
+ MetricSetFrequency types.Frequency
+
+ // After an interval ends, the amount of time that the detector waits before
+ // importing data.
+ Offset int32
+
+ // A list of tags
+ // (https://docs.aws.amazon.com/lookoutmetrics/latest/dev/detectors-tags.html) to
+ // apply to the dataset.
+ Tags map[string]string
+
+ // Contains information about the column used for tracking time in your source
+ // data.
+ TimestampColumn *types.TimestampColumn
+
+ // The time zone in which your source data was recorded.
+ Timezone *string
+}
+
+type CreateMetricSetOutput struct {
+
+ // The ARN of the dataset.
+ MetricSetArn *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationCreateMetricSetMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpCreateMetricSet{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpCreateMetricSet{}, 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 = addOpCreateMetricSetValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateMetricSet(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_opCreateMetricSet(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "CreateMetricSet",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_DeleteAlert.go b/service/lookoutmetrics/api_op_DeleteAlert.go
new file mode 100644
index 00000000000..e003b5b4ea0
--- /dev/null
+++ b/service/lookoutmetrics/api_op_DeleteAlert.go
@@ -0,0 +1,112 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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 an alert.
+func (c *Client) DeleteAlert(ctx context.Context, params *DeleteAlertInput, optFns ...func(*Options)) (*DeleteAlertOutput, error) {
+ if params == nil {
+ params = &DeleteAlertInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DeleteAlert", params, optFns, addOperationDeleteAlertMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DeleteAlertOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DeleteAlertInput struct {
+
+ // The ARN of the alert to delete.
+ //
+ // This member is required.
+ AlertArn *string
+}
+
+type DeleteAlertOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDeleteAlertMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpDeleteAlert{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDeleteAlert{}, 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 = addOpDeleteAlertValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteAlert(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_opDeleteAlert(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "DeleteAlert",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_DeleteAnomalyDetector.go b/service/lookoutmetrics/api_op_DeleteAnomalyDetector.go
new file mode 100644
index 00000000000..163c18b0e85
--- /dev/null
+++ b/service/lookoutmetrics/api_op_DeleteAnomalyDetector.go
@@ -0,0 +1,113 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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 detector. Deleting an anomaly detector will delete all of its
+// corresponding resources including any configured datasets and alerts.
+func (c *Client) DeleteAnomalyDetector(ctx context.Context, params *DeleteAnomalyDetectorInput, optFns ...func(*Options)) (*DeleteAnomalyDetectorOutput, error) {
+ if params == nil {
+ params = &DeleteAnomalyDetectorInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DeleteAnomalyDetector", params, optFns, addOperationDeleteAnomalyDetectorMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DeleteAnomalyDetectorOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DeleteAnomalyDetectorInput struct {
+
+ // The ARN of the detector to delete.
+ //
+ // This member is required.
+ AnomalyDetectorArn *string
+}
+
+type DeleteAnomalyDetectorOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDeleteAnomalyDetectorMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpDeleteAnomalyDetector{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDeleteAnomalyDetector{}, 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 = addOpDeleteAnomalyDetectorValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteAnomalyDetector(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_opDeleteAnomalyDetector(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "DeleteAnomalyDetector",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_DescribeAlert.go b/service/lookoutmetrics/api_op_DescribeAlert.go
new file mode 100644
index 00000000000..66028621837
--- /dev/null
+++ b/service/lookoutmetrics/api_op_DescribeAlert.go
@@ -0,0 +1,117 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Describes an alert.
+func (c *Client) DescribeAlert(ctx context.Context, params *DescribeAlertInput, optFns ...func(*Options)) (*DescribeAlertOutput, error) {
+ if params == nil {
+ params = &DescribeAlertInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DescribeAlert", params, optFns, addOperationDescribeAlertMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DescribeAlertOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DescribeAlertInput struct {
+
+ // The ARN of the alert to describe.
+ //
+ // This member is required.
+ AlertArn *string
+}
+
+type DescribeAlertOutput struct {
+
+ // Contains information about an alert.
+ Alert *types.Alert
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDescribeAlertMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpDescribeAlert{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDescribeAlert{}, 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 = addOpDescribeAlertValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDescribeAlert(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_opDescribeAlert(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "DescribeAlert",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_DescribeAnomalyDetectionExecutions.go b/service/lookoutmetrics/api_op_DescribeAnomalyDetectionExecutions.go
new file mode 100644
index 00000000000..7e35a2683c6
--- /dev/null
+++ b/service/lookoutmetrics/api_op_DescribeAnomalyDetectionExecutions.go
@@ -0,0 +1,216 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Returns information about the status of the specified anomaly detection jobs.
+func (c *Client) DescribeAnomalyDetectionExecutions(ctx context.Context, params *DescribeAnomalyDetectionExecutionsInput, optFns ...func(*Options)) (*DescribeAnomalyDetectionExecutionsOutput, error) {
+ if params == nil {
+ params = &DescribeAnomalyDetectionExecutionsInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DescribeAnomalyDetectionExecutions", params, optFns, addOperationDescribeAnomalyDetectionExecutionsMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DescribeAnomalyDetectionExecutionsOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DescribeAnomalyDetectionExecutionsInput struct {
+
+ // The Amazon Resource Name (ARN) of the anomaly detector.
+ //
+ // This member is required.
+ AnomalyDetectorArn *string
+
+ // The number of items to return in the response.
+ MaxResults int32
+
+ // Specify the pagination token that's returned by a previous request to retrieve
+ // the next page of results.
+ NextToken *string
+
+ // The timestamp of the anomaly detection job.
+ Timestamp *string
+}
+
+type DescribeAnomalyDetectionExecutionsOutput struct {
+
+ // A list of detection jobs.
+ ExecutionList []types.ExecutionStatus
+
+ // The pagination token that's included if more results are available.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDescribeAnomalyDetectionExecutionsMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpDescribeAnomalyDetectionExecutions{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDescribeAnomalyDetectionExecutions{}, 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 = addOpDescribeAnomalyDetectionExecutionsValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDescribeAnomalyDetectionExecutions(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
+}
+
+// DescribeAnomalyDetectionExecutionsAPIClient is a client that implements the
+// DescribeAnomalyDetectionExecutions operation.
+type DescribeAnomalyDetectionExecutionsAPIClient interface {
+ DescribeAnomalyDetectionExecutions(context.Context, *DescribeAnomalyDetectionExecutionsInput, ...func(*Options)) (*DescribeAnomalyDetectionExecutionsOutput, error)
+}
+
+var _ DescribeAnomalyDetectionExecutionsAPIClient = (*Client)(nil)
+
+// DescribeAnomalyDetectionExecutionsPaginatorOptions is the paginator options for
+// DescribeAnomalyDetectionExecutions
+type DescribeAnomalyDetectionExecutionsPaginatorOptions struct {
+ // The number of items to return in the response.
+ 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
+}
+
+// DescribeAnomalyDetectionExecutionsPaginator is a paginator for
+// DescribeAnomalyDetectionExecutions
+type DescribeAnomalyDetectionExecutionsPaginator struct {
+ options DescribeAnomalyDetectionExecutionsPaginatorOptions
+ client DescribeAnomalyDetectionExecutionsAPIClient
+ params *DescribeAnomalyDetectionExecutionsInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewDescribeAnomalyDetectionExecutionsPaginator returns a new
+// DescribeAnomalyDetectionExecutionsPaginator
+func NewDescribeAnomalyDetectionExecutionsPaginator(client DescribeAnomalyDetectionExecutionsAPIClient, params *DescribeAnomalyDetectionExecutionsInput, optFns ...func(*DescribeAnomalyDetectionExecutionsPaginatorOptions)) *DescribeAnomalyDetectionExecutionsPaginator {
+ if params == nil {
+ params = &DescribeAnomalyDetectionExecutionsInput{}
+ }
+
+ options := DescribeAnomalyDetectionExecutionsPaginatorOptions{}
+ if params.MaxResults != 0 {
+ options.Limit = params.MaxResults
+ }
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &DescribeAnomalyDetectionExecutionsPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *DescribeAnomalyDetectionExecutionsPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next DescribeAnomalyDetectionExecutions page.
+func (p *DescribeAnomalyDetectionExecutionsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*DescribeAnomalyDetectionExecutionsOutput, 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.DescribeAnomalyDetectionExecutions(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_opDescribeAnomalyDetectionExecutions(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "DescribeAnomalyDetectionExecutions",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_DescribeAnomalyDetector.go b/service/lookoutmetrics/api_op_DescribeAnomalyDetector.go
new file mode 100644
index 00000000000..eb41f5ff3a2
--- /dev/null
+++ b/service/lookoutmetrics/api_op_DescribeAnomalyDetector.go
@@ -0,0 +1,142 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Describes a detector.
+func (c *Client) DescribeAnomalyDetector(ctx context.Context, params *DescribeAnomalyDetectorInput, optFns ...func(*Options)) (*DescribeAnomalyDetectorOutput, error) {
+ if params == nil {
+ params = &DescribeAnomalyDetectorInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DescribeAnomalyDetector", params, optFns, addOperationDescribeAnomalyDetectorMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DescribeAnomalyDetectorOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DescribeAnomalyDetectorInput struct {
+
+ // The ARN of the detector to describe.
+ //
+ // This member is required.
+ AnomalyDetectorArn *string
+}
+
+type DescribeAnomalyDetectorOutput struct {
+
+ // The ARN of the detector.
+ AnomalyDetectorArn *string
+
+ // Contains information about the detector's configuration.
+ AnomalyDetectorConfig *types.AnomalyDetectorConfigSummary
+
+ // A description of the detector.
+ AnomalyDetectorDescription *string
+
+ // The name of the detector.
+ AnomalyDetectorName *string
+
+ // The time at which the detector was created.
+ CreationTime *time.Time
+
+ // The reason that the detector failed, if any.
+ FailureReason *string
+
+ // The ARN of the KMS key to use to encrypt your data.
+ KmsKeyArn *string
+
+ // The time at which the detector was last modified.
+ LastModificationTime *time.Time
+
+ // The status of the detector.
+ Status types.AnomalyDetectorStatus
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDescribeAnomalyDetectorMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpDescribeAnomalyDetector{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDescribeAnomalyDetector{}, 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 = addOpDescribeAnomalyDetectorValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDescribeAnomalyDetector(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_opDescribeAnomalyDetector(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "DescribeAnomalyDetector",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_DescribeMetricSet.go b/service/lookoutmetrics/api_op_DescribeMetricSet.go
new file mode 100644
index 00000000000..ad5584db083
--- /dev/null
+++ b/service/lookoutmetrics/api_op_DescribeMetricSet.go
@@ -0,0 +1,155 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Describes a dataset.
+func (c *Client) DescribeMetricSet(ctx context.Context, params *DescribeMetricSetInput, optFns ...func(*Options)) (*DescribeMetricSetOutput, error) {
+ if params == nil {
+ params = &DescribeMetricSetInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DescribeMetricSet", params, optFns, addOperationDescribeMetricSetMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DescribeMetricSetOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DescribeMetricSetInput struct {
+
+ // The ARN of the dataset.
+ //
+ // This member is required.
+ MetricSetArn *string
+}
+
+type DescribeMetricSetOutput struct {
+
+ // The ARN of the detector that contains the dataset.
+ AnomalyDetectorArn *string
+
+ // The time at which the dataset was created.
+ CreationTime *time.Time
+
+ // A list of the dimensions chosen for analysis.
+ DimensionList []string
+
+ // The time at which the dataset was last modified.
+ LastModificationTime *time.Time
+
+ // A list of the metrics defined by the dataset.
+ MetricList []types.Metric
+
+ // The ARN of the dataset.
+ MetricSetArn *string
+
+ // The dataset's description.
+ MetricSetDescription *string
+
+ // The interval at which the data will be analyzed for anomalies.
+ MetricSetFrequency types.Frequency
+
+ // The name of the dataset.
+ MetricSetName *string
+
+ // Contains information about the dataset's source data.
+ MetricSource *types.MetricSource
+
+ // The offset for the dataset.
+ Offset int32
+
+ // Contains information about the column used for tracking time in your source
+ // data.
+ TimestampColumn *types.TimestampColumn
+
+ // The time zone in which the dataset's data was recorded.
+ Timezone *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDescribeMetricSetMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpDescribeMetricSet{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpDescribeMetricSet{}, 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 = addOpDescribeMetricSetValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDescribeMetricSet(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_opDescribeMetricSet(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "DescribeMetricSet",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_GetAnomalyGroup.go b/service/lookoutmetrics/api_op_GetAnomalyGroup.go
new file mode 100644
index 00000000000..ecb8071eae9
--- /dev/null
+++ b/service/lookoutmetrics/api_op_GetAnomalyGroup.go
@@ -0,0 +1,122 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Returns details about a group of anomalous metrics.
+func (c *Client) GetAnomalyGroup(ctx context.Context, params *GetAnomalyGroupInput, optFns ...func(*Options)) (*GetAnomalyGroupOutput, error) {
+ if params == nil {
+ params = &GetAnomalyGroupInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetAnomalyGroup", params, optFns, addOperationGetAnomalyGroupMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetAnomalyGroupOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetAnomalyGroupInput struct {
+
+ // The Amazon Resource Name (ARN) of the anomaly detector.
+ //
+ // This member is required.
+ AnomalyDetectorArn *string
+
+ // The ID of the anomaly group.
+ //
+ // This member is required.
+ AnomalyGroupId *string
+}
+
+type GetAnomalyGroupOutput struct {
+
+ // Details about the anomaly group.
+ AnomalyGroup *types.AnomalyGroup
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetAnomalyGroupMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpGetAnomalyGroup{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetAnomalyGroup{}, 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 = addOpGetAnomalyGroupValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetAnomalyGroup(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_opGetAnomalyGroup(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "GetAnomalyGroup",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_GetFeedback.go b/service/lookoutmetrics/api_op_GetFeedback.go
new file mode 100644
index 00000000000..252fe48c523
--- /dev/null
+++ b/service/lookoutmetrics/api_op_GetFeedback.go
@@ -0,0 +1,214 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Get feedback for an anomaly group.
+func (c *Client) GetFeedback(ctx context.Context, params *GetFeedbackInput, optFns ...func(*Options)) (*GetFeedbackOutput, error) {
+ if params == nil {
+ params = &GetFeedbackInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetFeedback", params, optFns, addOperationGetFeedbackMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetFeedbackOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetFeedbackInput struct {
+
+ // The Amazon Resource Name (ARN) of the anomaly detector.
+ //
+ // This member is required.
+ AnomalyDetectorArn *string
+
+ // The anomalous metric and group ID.
+ //
+ // This member is required.
+ AnomalyGroupTimeSeriesFeedback *types.AnomalyGroupTimeSeries
+
+ // The maximum number of results to return.
+ MaxResults int32
+
+ // Specify the pagination token that's returned by a previous request to retrieve
+ // the next page of results.
+ NextToken *string
+}
+
+type GetFeedbackOutput struct {
+
+ // Feedback for an anomalous metric.
+ AnomalyGroupTimeSeriesFeedback []types.TimeSeriesFeedback
+
+ // The pagination token that's included if more results are available.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetFeedbackMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpGetFeedback{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetFeedback{}, 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 = addOpGetFeedbackValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetFeedback(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
+}
+
+// GetFeedbackAPIClient is a client that implements the GetFeedback operation.
+type GetFeedbackAPIClient interface {
+ GetFeedback(context.Context, *GetFeedbackInput, ...func(*Options)) (*GetFeedbackOutput, error)
+}
+
+var _ GetFeedbackAPIClient = (*Client)(nil)
+
+// GetFeedbackPaginatorOptions is the paginator options for GetFeedback
+type GetFeedbackPaginatorOptions struct {
+ // The maximum number of results to return.
+ 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
+}
+
+// GetFeedbackPaginator is a paginator for GetFeedback
+type GetFeedbackPaginator struct {
+ options GetFeedbackPaginatorOptions
+ client GetFeedbackAPIClient
+ params *GetFeedbackInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewGetFeedbackPaginator returns a new GetFeedbackPaginator
+func NewGetFeedbackPaginator(client GetFeedbackAPIClient, params *GetFeedbackInput, optFns ...func(*GetFeedbackPaginatorOptions)) *GetFeedbackPaginator {
+ if params == nil {
+ params = &GetFeedbackInput{}
+ }
+
+ options := GetFeedbackPaginatorOptions{}
+ if params.MaxResults != 0 {
+ options.Limit = params.MaxResults
+ }
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &GetFeedbackPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *GetFeedbackPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next GetFeedback page.
+func (p *GetFeedbackPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*GetFeedbackOutput, 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.GetFeedback(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_opGetFeedback(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "GetFeedback",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_GetSampleData.go b/service/lookoutmetrics/api_op_GetSampleData.go
new file mode 100644
index 00000000000..9773a46a339
--- /dev/null
+++ b/service/lookoutmetrics/api_op_GetSampleData.go
@@ -0,0 +1,118 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Returns a selection of sample records from an Amazon S3 datasource.
+func (c *Client) GetSampleData(ctx context.Context, params *GetSampleDataInput, optFns ...func(*Options)) (*GetSampleDataOutput, error) {
+ if params == nil {
+ params = &GetSampleDataInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetSampleData", params, optFns, addOperationGetSampleDataMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetSampleDataOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetSampleDataInput struct {
+
+ // A datasource bucket in Amazon S3.
+ S3SourceConfig *types.SampleDataS3SourceConfig
+}
+
+type GetSampleDataOutput struct {
+
+ // A list of header labels for the records.
+ HeaderValues []string
+
+ // A list of records.
+ SampleRows [][]string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetSampleDataMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpGetSampleData{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetSampleData{}, 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 = addOpGetSampleDataValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetSampleData(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_opGetSampleData(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "GetSampleData",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_ListAlerts.go b/service/lookoutmetrics/api_op_ListAlerts.go
new file mode 100644
index 00000000000..b41ec6a6aa7
--- /dev/null
+++ b/service/lookoutmetrics/api_op_ListAlerts.go
@@ -0,0 +1,206 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Lists the alerts attached to a detector.
+func (c *Client) ListAlerts(ctx context.Context, params *ListAlertsInput, optFns ...func(*Options)) (*ListAlertsOutput, error) {
+ if params == nil {
+ params = &ListAlertsInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "ListAlerts", params, optFns, addOperationListAlertsMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ListAlertsOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ListAlertsInput struct {
+
+ // The ARN of the alert's detector.
+ AnomalyDetectorArn *string
+
+ // The maximum number of results that will be displayed by the request.
+ MaxResults int32
+
+ // If the result of the previous request is truncated, the response includes a
+ // NextToken. To retrieve the next set of results, use the token in the next
+ // request. Tokens expire after 24 hours.
+ NextToken *string
+}
+
+type ListAlertsOutput struct {
+
+ // Contains information about an alert.
+ AlertSummaryList []types.AlertSummary
+
+ // If the response is truncated, the service returns this token. To retrieve the
+ // next set of results, use this token in the next request.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationListAlertsMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpListAlerts{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListAlerts{}, 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_opListAlerts(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
+}
+
+// ListAlertsAPIClient is a client that implements the ListAlerts operation.
+type ListAlertsAPIClient interface {
+ ListAlerts(context.Context, *ListAlertsInput, ...func(*Options)) (*ListAlertsOutput, error)
+}
+
+var _ ListAlertsAPIClient = (*Client)(nil)
+
+// ListAlertsPaginatorOptions is the paginator options for ListAlerts
+type ListAlertsPaginatorOptions struct {
+ // The maximum number of results that will be displayed by the request.
+ 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
+}
+
+// ListAlertsPaginator is a paginator for ListAlerts
+type ListAlertsPaginator struct {
+ options ListAlertsPaginatorOptions
+ client ListAlertsAPIClient
+ params *ListAlertsInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewListAlertsPaginator returns a new ListAlertsPaginator
+func NewListAlertsPaginator(client ListAlertsAPIClient, params *ListAlertsInput, optFns ...func(*ListAlertsPaginatorOptions)) *ListAlertsPaginator {
+ if params == nil {
+ params = &ListAlertsInput{}
+ }
+
+ options := ListAlertsPaginatorOptions{}
+ if params.MaxResults != 0 {
+ options.Limit = params.MaxResults
+ }
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &ListAlertsPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *ListAlertsPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next ListAlerts page.
+func (p *ListAlertsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListAlertsOutput, 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.ListAlerts(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_opListAlerts(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "ListAlerts",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_ListAnomalyDetectors.go b/service/lookoutmetrics/api_op_ListAnomalyDetectors.go
new file mode 100644
index 00000000000..cf47905fe7c
--- /dev/null
+++ b/service/lookoutmetrics/api_op_ListAnomalyDetectors.go
@@ -0,0 +1,205 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Lists the detectors in the current AWS Region.
+func (c *Client) ListAnomalyDetectors(ctx context.Context, params *ListAnomalyDetectorsInput, optFns ...func(*Options)) (*ListAnomalyDetectorsOutput, error) {
+ if params == nil {
+ params = &ListAnomalyDetectorsInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "ListAnomalyDetectors", params, optFns, addOperationListAnomalyDetectorsMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ListAnomalyDetectorsOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ListAnomalyDetectorsInput struct {
+
+ // The maximum number of results to return.
+ MaxResults int32
+
+ // If the result of the previous request was truncated, the response includes a
+ // NextToken. To retrieve the next set of results, use the token in the next
+ // request. Tokens expire after 24 hours.
+ NextToken *string
+}
+
+type ListAnomalyDetectorsOutput struct {
+
+ // A list of anomaly detectors in the account in the current region.
+ AnomalyDetectorSummaryList []types.AnomalyDetectorSummary
+
+ // If the response is truncated, the service returns this token. To retrieve the
+ // next set of results, use the token in the next request.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationListAnomalyDetectorsMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpListAnomalyDetectors{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListAnomalyDetectors{}, 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_opListAnomalyDetectors(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
+}
+
+// ListAnomalyDetectorsAPIClient is a client that implements the
+// ListAnomalyDetectors operation.
+type ListAnomalyDetectorsAPIClient interface {
+ ListAnomalyDetectors(context.Context, *ListAnomalyDetectorsInput, ...func(*Options)) (*ListAnomalyDetectorsOutput, error)
+}
+
+var _ ListAnomalyDetectorsAPIClient = (*Client)(nil)
+
+// ListAnomalyDetectorsPaginatorOptions is the paginator options for
+// ListAnomalyDetectors
+type ListAnomalyDetectorsPaginatorOptions struct {
+ // The maximum number of results to return.
+ 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
+}
+
+// ListAnomalyDetectorsPaginator is a paginator for ListAnomalyDetectors
+type ListAnomalyDetectorsPaginator struct {
+ options ListAnomalyDetectorsPaginatorOptions
+ client ListAnomalyDetectorsAPIClient
+ params *ListAnomalyDetectorsInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewListAnomalyDetectorsPaginator returns a new ListAnomalyDetectorsPaginator
+func NewListAnomalyDetectorsPaginator(client ListAnomalyDetectorsAPIClient, params *ListAnomalyDetectorsInput, optFns ...func(*ListAnomalyDetectorsPaginatorOptions)) *ListAnomalyDetectorsPaginator {
+ if params == nil {
+ params = &ListAnomalyDetectorsInput{}
+ }
+
+ options := ListAnomalyDetectorsPaginatorOptions{}
+ if params.MaxResults != 0 {
+ options.Limit = params.MaxResults
+ }
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &ListAnomalyDetectorsPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *ListAnomalyDetectorsPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next ListAnomalyDetectors page.
+func (p *ListAnomalyDetectorsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListAnomalyDetectorsOutput, 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.ListAnomalyDetectors(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_opListAnomalyDetectors(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "ListAnomalyDetectors",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_ListAnomalyGroupSummaries.go b/service/lookoutmetrics/api_op_ListAnomalyGroupSummaries.go
new file mode 100644
index 00000000000..4cd37bf4119
--- /dev/null
+++ b/service/lookoutmetrics/api_op_ListAnomalyGroupSummaries.go
@@ -0,0 +1,220 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Returns a list of anomaly groups.
+func (c *Client) ListAnomalyGroupSummaries(ctx context.Context, params *ListAnomalyGroupSummariesInput, optFns ...func(*Options)) (*ListAnomalyGroupSummariesOutput, error) {
+ if params == nil {
+ params = &ListAnomalyGroupSummariesInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "ListAnomalyGroupSummaries", params, optFns, addOperationListAnomalyGroupSummariesMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ListAnomalyGroupSummariesOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ListAnomalyGroupSummariesInput struct {
+
+ // The Amazon Resource Name (ARN) of the anomaly detector.
+ //
+ // This member is required.
+ AnomalyDetectorArn *string
+
+ // The minimum severity score for inclusion in the output.
+ //
+ // This member is required.
+ SensitivityThreshold int32
+
+ // The maximum number of results to return.
+ MaxResults int32
+
+ // Specify the pagination token that's returned by a previous request to retrieve
+ // the next page of results.
+ NextToken *string
+}
+
+type ListAnomalyGroupSummariesOutput struct {
+
+ // Aggregated details about the anomaly groups.
+ AnomalyGroupStatistics *types.AnomalyGroupStatistics
+
+ // A list of anomaly group summaries.
+ AnomalyGroupSummaryList []types.AnomalyGroupSummary
+
+ // The pagination token that's included if more results are available.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationListAnomalyGroupSummariesMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpListAnomalyGroupSummaries{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListAnomalyGroupSummaries{}, 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 = addOpListAnomalyGroupSummariesValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListAnomalyGroupSummaries(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
+}
+
+// ListAnomalyGroupSummariesAPIClient is a client that implements the
+// ListAnomalyGroupSummaries operation.
+type ListAnomalyGroupSummariesAPIClient interface {
+ ListAnomalyGroupSummaries(context.Context, *ListAnomalyGroupSummariesInput, ...func(*Options)) (*ListAnomalyGroupSummariesOutput, error)
+}
+
+var _ ListAnomalyGroupSummariesAPIClient = (*Client)(nil)
+
+// ListAnomalyGroupSummariesPaginatorOptions is the paginator options for
+// ListAnomalyGroupSummaries
+type ListAnomalyGroupSummariesPaginatorOptions struct {
+ // The maximum number of results to return.
+ 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
+}
+
+// ListAnomalyGroupSummariesPaginator is a paginator for ListAnomalyGroupSummaries
+type ListAnomalyGroupSummariesPaginator struct {
+ options ListAnomalyGroupSummariesPaginatorOptions
+ client ListAnomalyGroupSummariesAPIClient
+ params *ListAnomalyGroupSummariesInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewListAnomalyGroupSummariesPaginator returns a new
+// ListAnomalyGroupSummariesPaginator
+func NewListAnomalyGroupSummariesPaginator(client ListAnomalyGroupSummariesAPIClient, params *ListAnomalyGroupSummariesInput, optFns ...func(*ListAnomalyGroupSummariesPaginatorOptions)) *ListAnomalyGroupSummariesPaginator {
+ if params == nil {
+ params = &ListAnomalyGroupSummariesInput{}
+ }
+
+ options := ListAnomalyGroupSummariesPaginatorOptions{}
+ if params.MaxResults != 0 {
+ options.Limit = params.MaxResults
+ }
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &ListAnomalyGroupSummariesPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *ListAnomalyGroupSummariesPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next ListAnomalyGroupSummaries page.
+func (p *ListAnomalyGroupSummariesPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListAnomalyGroupSummariesOutput, 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.ListAnomalyGroupSummaries(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_opListAnomalyGroupSummaries(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "ListAnomalyGroupSummaries",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_ListAnomalyGroupTimeSeries.go b/service/lookoutmetrics/api_op_ListAnomalyGroupTimeSeries.go
new file mode 100644
index 00000000000..74ee4356e89
--- /dev/null
+++ b/service/lookoutmetrics/api_op_ListAnomalyGroupTimeSeries.go
@@ -0,0 +1,232 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Gets a list of anomalous metrics for a measure in an anomaly group.
+func (c *Client) ListAnomalyGroupTimeSeries(ctx context.Context, params *ListAnomalyGroupTimeSeriesInput, optFns ...func(*Options)) (*ListAnomalyGroupTimeSeriesOutput, error) {
+ if params == nil {
+ params = &ListAnomalyGroupTimeSeriesInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "ListAnomalyGroupTimeSeries", params, optFns, addOperationListAnomalyGroupTimeSeriesMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ListAnomalyGroupTimeSeriesOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ListAnomalyGroupTimeSeriesInput struct {
+
+ // The Amazon Resource Name (ARN) of the anomaly detector.
+ //
+ // This member is required.
+ AnomalyDetectorArn *string
+
+ // The ID of the anomaly group.
+ //
+ // This member is required.
+ AnomalyGroupId *string
+
+ // The name of the measure field.
+ //
+ // This member is required.
+ MetricName *string
+
+ // The maximum number of results to return.
+ MaxResults int32
+
+ // Specify the pagination token that's returned by a previous request to retrieve
+ // the next page of results.
+ NextToken *string
+}
+
+type ListAnomalyGroupTimeSeriesOutput struct {
+
+ // The ID of the anomaly group.
+ AnomalyGroupId *string
+
+ // The name of the measure field.
+ MetricName *string
+
+ // The pagination token that's included if more results are available.
+ NextToken *string
+
+ // A list of anomalous metrics.
+ TimeSeriesList []types.TimeSeries
+
+ // Timestamps for the anomalous metrics.
+ TimestampList []string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationListAnomalyGroupTimeSeriesMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpListAnomalyGroupTimeSeries{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListAnomalyGroupTimeSeries{}, 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 = addOpListAnomalyGroupTimeSeriesValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListAnomalyGroupTimeSeries(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
+}
+
+// ListAnomalyGroupTimeSeriesAPIClient is a client that implements the
+// ListAnomalyGroupTimeSeries operation.
+type ListAnomalyGroupTimeSeriesAPIClient interface {
+ ListAnomalyGroupTimeSeries(context.Context, *ListAnomalyGroupTimeSeriesInput, ...func(*Options)) (*ListAnomalyGroupTimeSeriesOutput, error)
+}
+
+var _ ListAnomalyGroupTimeSeriesAPIClient = (*Client)(nil)
+
+// ListAnomalyGroupTimeSeriesPaginatorOptions is the paginator options for
+// ListAnomalyGroupTimeSeries
+type ListAnomalyGroupTimeSeriesPaginatorOptions struct {
+ // The maximum number of results to return.
+ 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
+}
+
+// ListAnomalyGroupTimeSeriesPaginator is a paginator for
+// ListAnomalyGroupTimeSeries
+type ListAnomalyGroupTimeSeriesPaginator struct {
+ options ListAnomalyGroupTimeSeriesPaginatorOptions
+ client ListAnomalyGroupTimeSeriesAPIClient
+ params *ListAnomalyGroupTimeSeriesInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewListAnomalyGroupTimeSeriesPaginator returns a new
+// ListAnomalyGroupTimeSeriesPaginator
+func NewListAnomalyGroupTimeSeriesPaginator(client ListAnomalyGroupTimeSeriesAPIClient, params *ListAnomalyGroupTimeSeriesInput, optFns ...func(*ListAnomalyGroupTimeSeriesPaginatorOptions)) *ListAnomalyGroupTimeSeriesPaginator {
+ if params == nil {
+ params = &ListAnomalyGroupTimeSeriesInput{}
+ }
+
+ options := ListAnomalyGroupTimeSeriesPaginatorOptions{}
+ if params.MaxResults != 0 {
+ options.Limit = params.MaxResults
+ }
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &ListAnomalyGroupTimeSeriesPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *ListAnomalyGroupTimeSeriesPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next ListAnomalyGroupTimeSeries page.
+func (p *ListAnomalyGroupTimeSeriesPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListAnomalyGroupTimeSeriesOutput, 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.ListAnomalyGroupTimeSeries(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_opListAnomalyGroupTimeSeries(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "ListAnomalyGroupTimeSeries",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_ListMetricSets.go b/service/lookoutmetrics/api_op_ListMetricSets.go
new file mode 100644
index 00000000000..51a1731e841
--- /dev/null
+++ b/service/lookoutmetrics/api_op_ListMetricSets.go
@@ -0,0 +1,207 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Lists the datasets in the current AWS Region.
+func (c *Client) ListMetricSets(ctx context.Context, params *ListMetricSetsInput, optFns ...func(*Options)) (*ListMetricSetsOutput, error) {
+ if params == nil {
+ params = &ListMetricSetsInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "ListMetricSets", params, optFns, addOperationListMetricSetsMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ListMetricSetsOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ListMetricSetsInput struct {
+
+ // The ARN of the anomaly detector containing the metrics sets to list.
+ AnomalyDetectorArn *string
+
+ // The maximum number of results to return.
+ MaxResults int32
+
+ // If the result of the previous request was truncated, the response includes a
+ // NextToken. To retrieve the next set of results, use the token in the next
+ // request. Tokens expire after 24 hours.
+ NextToken *string
+}
+
+type ListMetricSetsOutput struct {
+
+ // A list of the datasets in the AWS Region, with configuration details for each.
+ MetricSetSummaryList []types.MetricSetSummary
+
+ // If the response is truncated, the list call returns this token. To retrieve the
+ // next set of results, use the token in the next list request.
+ NextToken *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationListMetricSetsMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpListMetricSets{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpListMetricSets{}, 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_opListMetricSets(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
+}
+
+// ListMetricSetsAPIClient is a client that implements the ListMetricSets
+// operation.
+type ListMetricSetsAPIClient interface {
+ ListMetricSets(context.Context, *ListMetricSetsInput, ...func(*Options)) (*ListMetricSetsOutput, error)
+}
+
+var _ ListMetricSetsAPIClient = (*Client)(nil)
+
+// ListMetricSetsPaginatorOptions is the paginator options for ListMetricSets
+type ListMetricSetsPaginatorOptions struct {
+ // The maximum number of results to return.
+ 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
+}
+
+// ListMetricSetsPaginator is a paginator for ListMetricSets
+type ListMetricSetsPaginator struct {
+ options ListMetricSetsPaginatorOptions
+ client ListMetricSetsAPIClient
+ params *ListMetricSetsInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewListMetricSetsPaginator returns a new ListMetricSetsPaginator
+func NewListMetricSetsPaginator(client ListMetricSetsAPIClient, params *ListMetricSetsInput, optFns ...func(*ListMetricSetsPaginatorOptions)) *ListMetricSetsPaginator {
+ if params == nil {
+ params = &ListMetricSetsInput{}
+ }
+
+ options := ListMetricSetsPaginatorOptions{}
+ if params.MaxResults != 0 {
+ options.Limit = params.MaxResults
+ }
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &ListMetricSetsPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *ListMetricSetsPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next ListMetricSets page.
+func (p *ListMetricSetsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListMetricSetsOutput, 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.ListMetricSets(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_opListMetricSets(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "ListMetricSets",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_ListTagsForResource.go b/service/lookoutmetrics/api_op_ListTagsForResource.go
new file mode 100644
index 00000000000..51407a0ba25
--- /dev/null
+++ b/service/lookoutmetrics/api_op_ListTagsForResource.go
@@ -0,0 +1,118 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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"
+)
+
+// Gets a list of tags
+// (https://docs.aws.amazon.com/lookoutmetrics/latest/dev/detectors-tags.html) for
+// a detector, dataset, or alert.
+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, 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
+}
+
+type ListTagsForResourceOutput struct {
+
+ // The resource's tags.
+ Tags map[string]string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func 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: "lookoutmetrics",
+ OperationName: "ListTagsForResource",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_PutFeedback.go b/service/lookoutmetrics/api_op_PutFeedback.go
new file mode 100644
index 00000000000..e375065726b
--- /dev/null
+++ b/service/lookoutmetrics/api_op_PutFeedback.go
@@ -0,0 +1,118 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Add feedback for an anomalous metric.
+func (c *Client) PutFeedback(ctx context.Context, params *PutFeedbackInput, optFns ...func(*Options)) (*PutFeedbackOutput, error) {
+ if params == nil {
+ params = &PutFeedbackInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "PutFeedback", params, optFns, addOperationPutFeedbackMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*PutFeedbackOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type PutFeedbackInput struct {
+
+ // The Amazon Resource Name (ARN) of the anomaly detector.
+ //
+ // This member is required.
+ AnomalyDetectorArn *string
+
+ // Feedback for an anomalous metric.
+ //
+ // This member is required.
+ AnomalyGroupTimeSeriesFeedback *types.AnomalyGroupTimeSeriesFeedback
+}
+
+type PutFeedbackOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationPutFeedbackMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpPutFeedback{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpPutFeedback{}, 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 = addOpPutFeedbackValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutFeedback(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_opPutFeedback(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "PutFeedback",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_TagResource.go b/service/lookoutmetrics/api_op_TagResource.go
new file mode 100644
index 00000000000..4b2adf6b920
--- /dev/null
+++ b/service/lookoutmetrics/api_op_TagResource.go
@@ -0,0 +1,120 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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"
+)
+
+// Adds tags
+// (https://docs.aws.amazon.com/lookoutmetrics/latest/dev/detectors-tags.html) to a
+// detector, dataset, or alert.
+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, 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
+
+ // Tags to apply to the resource. Tag keys and values can contain letters, numbers,
+ // spaces, and the following symbols: _.:/=+@-
+ //
+ // This member is required.
+ Tags map[string]string
+}
+
+type TagResourceOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func 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: "lookoutmetrics",
+ OperationName: "TagResource",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_UntagResource.go b/service/lookoutmetrics/api_op_UntagResource.go
new file mode 100644
index 00000000000..b2fd78989fc
--- /dev/null
+++ b/service/lookoutmetrics/api_op_UntagResource.go
@@ -0,0 +1,119 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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"
+)
+
+// Removes tags
+// (https://docs.aws.amazon.com/lookoutmetrics/latest/dev/detectors-tags.html) from
+// a detector, dataset, or alert.
+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, 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
+
+ // Keys to remove from the resource's tags.
+ //
+ // This member is required.
+ TagKeys []string
+}
+
+type UntagResourceOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func 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: "lookoutmetrics",
+ OperationName: "UntagResource",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_UpdateAnomalyDetector.go b/service/lookoutmetrics/api_op_UpdateAnomalyDetector.go
new file mode 100644
index 00000000000..fd01df1fb31
--- /dev/null
+++ b/service/lookoutmetrics/api_op_UpdateAnomalyDetector.go
@@ -0,0 +1,128 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Updates a detector. After activation, you can only change a detector's ingestion
+// delay and description.
+func (c *Client) UpdateAnomalyDetector(ctx context.Context, params *UpdateAnomalyDetectorInput, optFns ...func(*Options)) (*UpdateAnomalyDetectorOutput, error) {
+ if params == nil {
+ params = &UpdateAnomalyDetectorInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "UpdateAnomalyDetector", params, optFns, addOperationUpdateAnomalyDetectorMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*UpdateAnomalyDetectorOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type UpdateAnomalyDetectorInput struct {
+
+ // The ARN of the detector to update.
+ //
+ // This member is required.
+ AnomalyDetectorArn *string
+
+ // Contains information about the configuration to which the detector will be
+ // updated.
+ AnomalyDetectorConfig *types.AnomalyDetectorConfig
+
+ // The updated detector description.
+ AnomalyDetectorDescription *string
+
+ // The Amazon Resource Name (ARN) of an AWS KMS encryption key.
+ KmsKeyArn *string
+}
+
+type UpdateAnomalyDetectorOutput struct {
+
+ // The ARN of the updated detector.
+ AnomalyDetectorArn *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationUpdateAnomalyDetectorMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpUpdateAnomalyDetector{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpUpdateAnomalyDetector{}, 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 = addOpUpdateAnomalyDetectorValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opUpdateAnomalyDetector(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_opUpdateAnomalyDetector(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "UpdateAnomalyDetector",
+ }
+}
diff --git a/service/lookoutmetrics/api_op_UpdateMetricSet.go b/service/lookoutmetrics/api_op_UpdateMetricSet.go
new file mode 100644
index 00000000000..0c5c1e9a60f
--- /dev/null
+++ b/service/lookoutmetrics/api_op_UpdateMetricSet.go
@@ -0,0 +1,139 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+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/lookoutmetrics/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Updates a dataset.
+func (c *Client) UpdateMetricSet(ctx context.Context, params *UpdateMetricSetInput, optFns ...func(*Options)) (*UpdateMetricSetOutput, error) {
+ if params == nil {
+ params = &UpdateMetricSetInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "UpdateMetricSet", params, optFns, addOperationUpdateMetricSetMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*UpdateMetricSetOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type UpdateMetricSetInput struct {
+
+ // The ARN of the dataset to update.
+ //
+ // This member is required.
+ MetricSetArn *string
+
+ // The dimension list.
+ DimensionList []string
+
+ // The metric list.
+ MetricList []types.Metric
+
+ // The dataset's description.
+ MetricSetDescription *string
+
+ // The dataset's interval.
+ MetricSetFrequency types.Frequency
+
+ // Contains information about source data used to generate a metric.
+ MetricSource *types.MetricSource
+
+ // After an interval ends, the amount of time that the detector waits before
+ // importing data.
+ Offset int32
+
+ // The timestamp column.
+ TimestampColumn *types.TimestampColumn
+}
+
+type UpdateMetricSetOutput struct {
+
+ // The ARN of the dataset.
+ MetricSetArn *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationUpdateMetricSetMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpUpdateMetricSet{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpUpdateMetricSet{}, 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 = addOpUpdateMetricSetValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opUpdateMetricSet(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_opUpdateMetricSet(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "lookoutmetrics",
+ OperationName: "UpdateMetricSet",
+ }
+}
diff --git a/service/lookoutmetrics/deserializers.go b/service/lookoutmetrics/deserializers.go
new file mode 100644
index 00000000000..d7bd627216d
--- /dev/null
+++ b/service/lookoutmetrics/deserializers.go
@@ -0,0 +1,7452 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+import (
+ "bytes"
+ "context"
+ "encoding/json"
+ "fmt"
+ "github.com/aws/aws-sdk-go-v2/aws/protocol/restjson"
+ "github.com/aws/aws-sdk-go-v2/service/lookoutmetrics/types"
+ smithy "github.com/aws/smithy-go"
+ smithyio "github.com/aws/smithy-go/io"
+ "github.com/aws/smithy-go/middleware"
+ "github.com/aws/smithy-go/ptr"
+ smithytime "github.com/aws/smithy-go/time"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "io"
+ "strings"
+)
+
+type awsRestjson1_deserializeOpActivateAnomalyDetector struct {
+}
+
+func (*awsRestjson1_deserializeOpActivateAnomalyDetector) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpActivateAnomalyDetector) 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_deserializeOpErrorActivateAnomalyDetector(response, &metadata)
+ }
+ output := &ActivateAnomalyDetectorOutput{}
+ out.Result = output
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorActivateAnomalyDetector(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("ConflictException", errorCode):
+ return awsRestjson1_deserializeErrorConflictException(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsRestjson1_deserializeOpBackTestAnomalyDetector struct {
+}
+
+func (*awsRestjson1_deserializeOpBackTestAnomalyDetector) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpBackTestAnomalyDetector) 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_deserializeOpErrorBackTestAnomalyDetector(response, &metadata)
+ }
+ output := &BackTestAnomalyDetectorOutput{}
+ out.Result = output
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorBackTestAnomalyDetector(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsRestjson1_deserializeOpCreateAlert struct {
+}
+
+func (*awsRestjson1_deserializeOpCreateAlert) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpCreateAlert) 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_deserializeOpErrorCreateAlert(response, &metadata)
+ }
+ output := &CreateAlertOutput{}
+ 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_deserializeOpDocumentCreateAlertOutput(&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_deserializeOpErrorCreateAlert(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("ConflictException", errorCode):
+ return awsRestjson1_deserializeErrorConflictException(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("ServiceQuotaExceededException", errorCode):
+ return awsRestjson1_deserializeErrorServiceQuotaExceededException(response, errorBody)
+
+ case strings.EqualFold("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentCreateAlertOutput(v **CreateAlertOutput, 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 *CreateAlertOutput
+ if *v == nil {
+ sv = &CreateAlertOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AlertArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.AlertArn = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpCreateAnomalyDetector struct {
+}
+
+func (*awsRestjson1_deserializeOpCreateAnomalyDetector) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpCreateAnomalyDetector) 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_deserializeOpErrorCreateAnomalyDetector(response, &metadata)
+ }
+ output := &CreateAnomalyDetectorOutput{}
+ 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_deserializeOpDocumentCreateAnomalyDetectorOutput(&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_deserializeOpErrorCreateAnomalyDetector(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("ConflictException", errorCode):
+ return awsRestjson1_deserializeErrorConflictException(response, errorBody)
+
+ case strings.EqualFold("InternalServerException", errorCode):
+ return awsRestjson1_deserializeErrorInternalServerException(response, errorBody)
+
+ case strings.EqualFold("ServiceQuotaExceededException", errorCode):
+ return awsRestjson1_deserializeErrorServiceQuotaExceededException(response, errorBody)
+
+ case strings.EqualFold("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentCreateAnomalyDetectorOutput(v **CreateAnomalyDetectorOutput, 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 *CreateAnomalyDetectorOutput
+ if *v == nil {
+ sv = &CreateAnomalyDetectorOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AnomalyDetectorArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.AnomalyDetectorArn = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpCreateMetricSet struct {
+}
+
+func (*awsRestjson1_deserializeOpCreateMetricSet) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpCreateMetricSet) 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_deserializeOpErrorCreateMetricSet(response, &metadata)
+ }
+ output := &CreateMetricSetOutput{}
+ 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_deserializeOpDocumentCreateMetricSetOutput(&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_deserializeOpErrorCreateMetricSet(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("ConflictException", errorCode):
+ return awsRestjson1_deserializeErrorConflictException(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("ServiceQuotaExceededException", errorCode):
+ return awsRestjson1_deserializeErrorServiceQuotaExceededException(response, errorBody)
+
+ case strings.EqualFold("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentCreateMetricSetOutput(v **CreateMetricSetOutput, 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 *CreateMetricSetOutput
+ if *v == nil {
+ sv = &CreateMetricSetOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "MetricSetArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.MetricSetArn = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpDeleteAlert struct {
+}
+
+func (*awsRestjson1_deserializeOpDeleteAlert) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpDeleteAlert) 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_deserializeOpErrorDeleteAlert(response, &metadata)
+ }
+ output := &DeleteAlertOutput{}
+ out.Result = output
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorDeleteAlert(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsRestjson1_deserializeOpDeleteAnomalyDetector struct {
+}
+
+func (*awsRestjson1_deserializeOpDeleteAnomalyDetector) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpDeleteAnomalyDetector) 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_deserializeOpErrorDeleteAnomalyDetector(response, &metadata)
+ }
+ output := &DeleteAnomalyDetectorOutput{}
+ out.Result = output
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorDeleteAnomalyDetector(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("ConflictException", errorCode):
+ return awsRestjson1_deserializeErrorConflictException(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsRestjson1_deserializeOpDescribeAlert struct {
+}
+
+func (*awsRestjson1_deserializeOpDescribeAlert) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpDescribeAlert) 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_deserializeOpErrorDescribeAlert(response, &metadata)
+ }
+ output := &DescribeAlertOutput{}
+ 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_deserializeOpDocumentDescribeAlertOutput(&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_deserializeOpErrorDescribeAlert(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentDescribeAlertOutput(v **DescribeAlertOutput, 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 *DescribeAlertOutput
+ if *v == nil {
+ sv = &DescribeAlertOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Alert":
+ if err := awsRestjson1_deserializeDocumentAlert(&sv.Alert, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpDescribeAnomalyDetectionExecutions struct {
+}
+
+func (*awsRestjson1_deserializeOpDescribeAnomalyDetectionExecutions) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpDescribeAnomalyDetectionExecutions) 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_deserializeOpErrorDescribeAnomalyDetectionExecutions(response, &metadata)
+ }
+ output := &DescribeAnomalyDetectionExecutionsOutput{}
+ 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_deserializeOpDocumentDescribeAnomalyDetectionExecutionsOutput(&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_deserializeOpErrorDescribeAnomalyDetectionExecutions(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentDescribeAnomalyDetectionExecutionsOutput(v **DescribeAnomalyDetectionExecutionsOutput, 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 *DescribeAnomalyDetectionExecutionsOutput
+ if *v == nil {
+ sv = &DescribeAnomalyDetectionExecutionsOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "ExecutionList":
+ if err := awsRestjson1_deserializeDocumentExecutionList(&sv.ExecutionList, 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_deserializeOpDescribeAnomalyDetector struct {
+}
+
+func (*awsRestjson1_deserializeOpDescribeAnomalyDetector) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpDescribeAnomalyDetector) 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_deserializeOpErrorDescribeAnomalyDetector(response, &metadata)
+ }
+ output := &DescribeAnomalyDetectorOutput{}
+ 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_deserializeOpDocumentDescribeAnomalyDetectorOutput(&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_deserializeOpErrorDescribeAnomalyDetector(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentDescribeAnomalyDetectorOutput(v **DescribeAnomalyDetectorOutput, 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 *DescribeAnomalyDetectorOutput
+ if *v == nil {
+ sv = &DescribeAnomalyDetectorOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AnomalyDetectorArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.AnomalyDetectorArn = ptr.String(jtv)
+ }
+
+ case "AnomalyDetectorConfig":
+ if err := awsRestjson1_deserializeDocumentAnomalyDetectorConfigSummary(&sv.AnomalyDetectorConfig, value); err != nil {
+ return err
+ }
+
+ case "AnomalyDetectorDescription":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AnomalyDetectorDescription to be of type string, got %T instead", value)
+ }
+ sv.AnomalyDetectorDescription = ptr.String(jtv)
+ }
+
+ case "AnomalyDetectorName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AnomalyDetectorName to be of type string, got %T instead", value)
+ }
+ sv.AnomalyDetectorName = ptr.String(jtv)
+ }
+
+ case "CreationTime":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.CreationTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ }
+
+ case "FailureReason":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
+ }
+ sv.FailureReason = ptr.String(jtv)
+ }
+
+ case "KmsKeyArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected KmsKeyArn to be of type string, got %T instead", value)
+ }
+ sv.KmsKeyArn = ptr.String(jtv)
+ }
+
+ case "LastModificationTime":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.LastModificationTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ }
+
+ case "Status":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AnomalyDetectorStatus to be of type string, got %T instead", value)
+ }
+ sv.Status = types.AnomalyDetectorStatus(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpDescribeMetricSet struct {
+}
+
+func (*awsRestjson1_deserializeOpDescribeMetricSet) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpDescribeMetricSet) 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_deserializeOpErrorDescribeMetricSet(response, &metadata)
+ }
+ output := &DescribeMetricSetOutput{}
+ 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_deserializeOpDocumentDescribeMetricSetOutput(&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_deserializeOpErrorDescribeMetricSet(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentDescribeMetricSetOutput(v **DescribeMetricSetOutput, 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 *DescribeMetricSetOutput
+ if *v == nil {
+ sv = &DescribeMetricSetOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AnomalyDetectorArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.AnomalyDetectorArn = ptr.String(jtv)
+ }
+
+ case "CreationTime":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.CreationTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ }
+
+ case "DimensionList":
+ if err := awsRestjson1_deserializeDocumentDimensionList(&sv.DimensionList, value); err != nil {
+ return err
+ }
+
+ case "LastModificationTime":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.LastModificationTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ }
+
+ case "MetricList":
+ if err := awsRestjson1_deserializeDocumentMetricList(&sv.MetricList, value); err != nil {
+ return err
+ }
+
+ case "MetricSetArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.MetricSetArn = ptr.String(jtv)
+ }
+
+ case "MetricSetDescription":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected MetricSetDescription to be of type string, got %T instead", value)
+ }
+ sv.MetricSetDescription = ptr.String(jtv)
+ }
+
+ case "MetricSetFrequency":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Frequency to be of type string, got %T instead", value)
+ }
+ sv.MetricSetFrequency = types.Frequency(jtv)
+ }
+
+ case "MetricSetName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected MetricSetName to be of type string, got %T instead", value)
+ }
+ sv.MetricSetName = ptr.String(jtv)
+ }
+
+ case "MetricSource":
+ if err := awsRestjson1_deserializeDocumentMetricSource(&sv.MetricSource, value); err != nil {
+ return err
+ }
+
+ case "Offset":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Offset to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.Offset = int32(i64)
+ }
+
+ case "TimestampColumn":
+ if err := awsRestjson1_deserializeDocumentTimestampColumn(&sv.TimestampColumn, value); err != nil {
+ return err
+ }
+
+ case "Timezone":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Timezone to be of type string, got %T instead", value)
+ }
+ sv.Timezone = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpGetAnomalyGroup struct {
+}
+
+func (*awsRestjson1_deserializeOpGetAnomalyGroup) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpGetAnomalyGroup) 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_deserializeOpErrorGetAnomalyGroup(response, &metadata)
+ }
+ output := &GetAnomalyGroupOutput{}
+ 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_deserializeOpDocumentGetAnomalyGroupOutput(&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_deserializeOpErrorGetAnomalyGroup(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentGetAnomalyGroupOutput(v **GetAnomalyGroupOutput, 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 *GetAnomalyGroupOutput
+ if *v == nil {
+ sv = &GetAnomalyGroupOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AnomalyGroup":
+ if err := awsRestjson1_deserializeDocumentAnomalyGroup(&sv.AnomalyGroup, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpGetFeedback struct {
+}
+
+func (*awsRestjson1_deserializeOpGetFeedback) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpGetFeedback) 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_deserializeOpErrorGetFeedback(response, &metadata)
+ }
+ output := &GetFeedbackOutput{}
+ 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_deserializeOpDocumentGetFeedbackOutput(&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_deserializeOpErrorGetFeedback(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentGetFeedbackOutput(v **GetFeedbackOutput, 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 *GetFeedbackOutput
+ if *v == nil {
+ sv = &GetFeedbackOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AnomalyGroupTimeSeriesFeedback":
+ if err := awsRestjson1_deserializeDocumentTimeSeriesFeedbackList(&sv.AnomalyGroupTimeSeriesFeedback, 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_deserializeOpGetSampleData struct {
+}
+
+func (*awsRestjson1_deserializeOpGetSampleData) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpGetSampleData) 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_deserializeOpErrorGetSampleData(response, &metadata)
+ }
+ output := &GetSampleDataOutput{}
+ 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_deserializeOpDocumentGetSampleDataOutput(&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_deserializeOpErrorGetSampleData(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentGetSampleDataOutput(v **GetSampleDataOutput, 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 *GetSampleDataOutput
+ if *v == nil {
+ sv = &GetSampleDataOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "HeaderValues":
+ if err := awsRestjson1_deserializeDocumentHeaderValueList(&sv.HeaderValues, value); err != nil {
+ return err
+ }
+
+ case "SampleRows":
+ if err := awsRestjson1_deserializeDocumentSampleRows(&sv.SampleRows, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpListAlerts struct {
+}
+
+func (*awsRestjson1_deserializeOpListAlerts) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpListAlerts) 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_deserializeOpErrorListAlerts(response, &metadata)
+ }
+ output := &ListAlertsOutput{}
+ 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_deserializeOpDocumentListAlertsOutput(&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_deserializeOpErrorListAlerts(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentListAlertsOutput(v **ListAlertsOutput, 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 *ListAlertsOutput
+ if *v == nil {
+ sv = &ListAlertsOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AlertSummaryList":
+ if err := awsRestjson1_deserializeDocumentAlertSummaryList(&sv.AlertSummaryList, 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_deserializeOpListAnomalyDetectors struct {
+}
+
+func (*awsRestjson1_deserializeOpListAnomalyDetectors) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpListAnomalyDetectors) 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_deserializeOpErrorListAnomalyDetectors(response, &metadata)
+ }
+ output := &ListAnomalyDetectorsOutput{}
+ 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_deserializeOpDocumentListAnomalyDetectorsOutput(&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_deserializeOpErrorListAnomalyDetectors(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentListAnomalyDetectorsOutput(v **ListAnomalyDetectorsOutput, 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 *ListAnomalyDetectorsOutput
+ if *v == nil {
+ sv = &ListAnomalyDetectorsOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AnomalyDetectorSummaryList":
+ if err := awsRestjson1_deserializeDocumentAnomalyDetectorSummaryList(&sv.AnomalyDetectorSummaryList, 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_deserializeOpListAnomalyGroupSummaries struct {
+}
+
+func (*awsRestjson1_deserializeOpListAnomalyGroupSummaries) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpListAnomalyGroupSummaries) 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_deserializeOpErrorListAnomalyGroupSummaries(response, &metadata)
+ }
+ output := &ListAnomalyGroupSummariesOutput{}
+ 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_deserializeOpDocumentListAnomalyGroupSummariesOutput(&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_deserializeOpErrorListAnomalyGroupSummaries(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentListAnomalyGroupSummariesOutput(v **ListAnomalyGroupSummariesOutput, 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 *ListAnomalyGroupSummariesOutput
+ if *v == nil {
+ sv = &ListAnomalyGroupSummariesOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AnomalyGroupStatistics":
+ if err := awsRestjson1_deserializeDocumentAnomalyGroupStatistics(&sv.AnomalyGroupStatistics, value); err != nil {
+ return err
+ }
+
+ case "AnomalyGroupSummaryList":
+ if err := awsRestjson1_deserializeDocumentAnomalyGroupSummaryList(&sv.AnomalyGroupSummaryList, 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_deserializeOpListAnomalyGroupTimeSeries struct {
+}
+
+func (*awsRestjson1_deserializeOpListAnomalyGroupTimeSeries) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpListAnomalyGroupTimeSeries) 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_deserializeOpErrorListAnomalyGroupTimeSeries(response, &metadata)
+ }
+ output := &ListAnomalyGroupTimeSeriesOutput{}
+ 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_deserializeOpDocumentListAnomalyGroupTimeSeriesOutput(&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_deserializeOpErrorListAnomalyGroupTimeSeries(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentListAnomalyGroupTimeSeriesOutput(v **ListAnomalyGroupTimeSeriesOutput, 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 *ListAnomalyGroupTimeSeriesOutput
+ if *v == nil {
+ sv = &ListAnomalyGroupTimeSeriesOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AnomalyGroupId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected UUID to be of type string, got %T instead", value)
+ }
+ sv.AnomalyGroupId = ptr.String(jtv)
+ }
+
+ case "MetricName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected MetricName to be of type string, got %T instead", value)
+ }
+ sv.MetricName = ptr.String(jtv)
+ }
+
+ 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)
+ }
+
+ case "TimeSeriesList":
+ if err := awsRestjson1_deserializeDocumentTimeSeriesList(&sv.TimeSeriesList, value); err != nil {
+ return err
+ }
+
+ case "TimestampList":
+ if err := awsRestjson1_deserializeDocumentTimestampList(&sv.TimestampList, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpListMetricSets struct {
+}
+
+func (*awsRestjson1_deserializeOpListMetricSets) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpListMetricSets) 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_deserializeOpErrorListMetricSets(response, &metadata)
+ }
+ output := &ListMetricSetsOutput{}
+ 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_deserializeOpDocumentListMetricSetsOutput(&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_deserializeOpErrorListMetricSets(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentListMetricSetsOutput(v **ListMetricSetsOutput, 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 *ListMetricSetsOutput
+ if *v == nil {
+ sv = &ListMetricSetsOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "MetricSetSummaryList":
+ if err := awsRestjson1_deserializeDocumentMetricSetSummaryList(&sv.MetricSetSummaryList, 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_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("InternalServerException", errorCode):
+ return awsRestjson1_deserializeErrorInternalServerException(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsRestjson1_deserializeErrorResourceNotFoundException(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_deserializeDocumentTagMap(&sv.Tags, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpPutFeedback struct {
+}
+
+func (*awsRestjson1_deserializeOpPutFeedback) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpPutFeedback) 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_deserializeOpErrorPutFeedback(response, &metadata)
+ }
+ output := &PutFeedbackOutput{}
+ out.Result = output
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorPutFeedback(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+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("InternalServerException", errorCode):
+ return awsRestjson1_deserializeErrorInternalServerException(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsRestjson1_deserializeErrorResourceNotFoundException(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("InternalServerException", errorCode):
+ return awsRestjson1_deserializeErrorInternalServerException(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsRestjson1_deserializeErrorResourceNotFoundException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsRestjson1_deserializeOpUpdateAnomalyDetector struct {
+}
+
+func (*awsRestjson1_deserializeOpUpdateAnomalyDetector) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpUpdateAnomalyDetector) 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_deserializeOpErrorUpdateAnomalyDetector(response, &metadata)
+ }
+ output := &UpdateAnomalyDetectorOutput{}
+ 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_deserializeOpDocumentUpdateAnomalyDetectorOutput(&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_deserializeOpErrorUpdateAnomalyDetector(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentUpdateAnomalyDetectorOutput(v **UpdateAnomalyDetectorOutput, 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 *UpdateAnomalyDetectorOutput
+ if *v == nil {
+ sv = &UpdateAnomalyDetectorOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AnomalyDetectorArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.AnomalyDetectorArn = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+type awsRestjson1_deserializeOpUpdateMetricSet struct {
+}
+
+func (*awsRestjson1_deserializeOpUpdateMetricSet) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpUpdateMetricSet) 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_deserializeOpErrorUpdateMetricSet(response, &metadata)
+ }
+ output := &UpdateMetricSetOutput{}
+ 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_deserializeOpDocumentUpdateMetricSetOutput(&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_deserializeOpErrorUpdateMetricSet(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("TooManyRequestsException", errorCode):
+ return awsRestjson1_deserializeErrorTooManyRequestsException(response, errorBody)
+
+ case strings.EqualFold("ValidationException", errorCode):
+ return awsRestjson1_deserializeErrorValidationException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+func awsRestjson1_deserializeOpDocumentUpdateMetricSetOutput(v **UpdateMetricSetOutput, 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 *UpdateMetricSetOutput
+ if *v == nil {
+ sv = &UpdateMetricSetOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "MetricSetArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.MetricSetArn = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeErrorAccessDeniedException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.AccessDeniedException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ err := awsRestjson1_deserializeDocumentAccessDeniedException(&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 awsRestjson1_deserializeErrorConflictException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ConflictException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ err := awsRestjson1_deserializeDocumentConflictException(&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 awsRestjson1_deserializeErrorInternalServerException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InternalServerException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ err := awsRestjson1_deserializeDocumentInternalServerException(&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 awsRestjson1_deserializeErrorResourceNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ResourceNotFoundException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ err := awsRestjson1_deserializeDocumentResourceNotFoundException(&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 awsRestjson1_deserializeErrorServiceQuotaExceededException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ServiceQuotaExceededException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ err := awsRestjson1_deserializeDocumentServiceQuotaExceededException(&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 awsRestjson1_deserializeErrorTooManyRequestsException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.TooManyRequestsException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ err := awsRestjson1_deserializeDocumentTooManyRequestsException(&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 awsRestjson1_deserializeErrorValidationException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ValidationException{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+
+ body := io.TeeReader(errorBody, 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 err
+ }
+
+ err := awsRestjson1_deserializeDocumentValidationException(&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 awsRestjson1_deserializeDocumentAccessDeniedException(v **types.AccessDeniedException, 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.AccessDeniedException
+ if *v == nil {
+ sv = &types.AccessDeniedException{}
+ } 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 Message to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentAction(v **types.Action, 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.Action
+ if *v == nil {
+ sv = &types.Action{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "LambdaConfiguration":
+ if err := awsRestjson1_deserializeDocumentLambdaConfiguration(&sv.LambdaConfiguration, value); err != nil {
+ return err
+ }
+
+ case "SNSConfiguration":
+ if err := awsRestjson1_deserializeDocumentSNSConfiguration(&sv.SNSConfiguration, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentAlert(v **types.Alert, 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.Alert
+ if *v == nil {
+ sv = &types.Alert{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Action":
+ if err := awsRestjson1_deserializeDocumentAction(&sv.Action, value); err != nil {
+ return err
+ }
+
+ case "AlertArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.AlertArn = ptr.String(jtv)
+ }
+
+ case "AlertDescription":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AlertDescription to be of type string, got %T instead", value)
+ }
+ sv.AlertDescription = ptr.String(jtv)
+ }
+
+ case "AlertName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AlertName to be of type string, got %T instead", value)
+ }
+ sv.AlertName = ptr.String(jtv)
+ }
+
+ case "AlertSensitivityThreshold":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected SensitivityThreshold to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.AlertSensitivityThreshold = int32(i64)
+ }
+
+ case "AlertStatus":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AlertStatus to be of type string, got %T instead", value)
+ }
+ sv.AlertStatus = types.AlertStatus(jtv)
+ }
+
+ case "AlertType":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AlertType to be of type string, got %T instead", value)
+ }
+ sv.AlertType = types.AlertType(jtv)
+ }
+
+ case "AnomalyDetectorArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.AnomalyDetectorArn = ptr.String(jtv)
+ }
+
+ case "CreationTime":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.CreationTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ }
+
+ case "LastModificationTime":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.LastModificationTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentAlertSummary(v **types.AlertSummary, 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.AlertSummary
+ if *v == nil {
+ sv = &types.AlertSummary{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AlertArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.AlertArn = ptr.String(jtv)
+ }
+
+ case "AlertName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AlertName to be of type string, got %T instead", value)
+ }
+ sv.AlertName = ptr.String(jtv)
+ }
+
+ case "AlertSensitivityThreshold":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected SensitivityThreshold to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.AlertSensitivityThreshold = int32(i64)
+ }
+
+ case "AlertStatus":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AlertStatus to be of type string, got %T instead", value)
+ }
+ sv.AlertStatus = types.AlertStatus(jtv)
+ }
+
+ case "AlertType":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AlertType to be of type string, got %T instead", value)
+ }
+ sv.AlertType = types.AlertType(jtv)
+ }
+
+ case "AnomalyDetectorArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.AnomalyDetectorArn = ptr.String(jtv)
+ }
+
+ case "CreationTime":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.CreationTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ }
+
+ case "LastModificationTime":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.LastModificationTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ }
+
+ case "Tags":
+ if err := awsRestjson1_deserializeDocumentTagMap(&sv.Tags, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentAlertSummaryList(v *[]types.AlertSummary, 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.AlertSummary
+ if *v == nil {
+ cv = []types.AlertSummary{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.AlertSummary
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentAlertSummary(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentAnomalyDetectorConfigSummary(v **types.AnomalyDetectorConfigSummary, 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.AnomalyDetectorConfigSummary
+ if *v == nil {
+ sv = &types.AnomalyDetectorConfigSummary{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AnomalyDetectorFrequency":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Frequency to be of type string, got %T instead", value)
+ }
+ sv.AnomalyDetectorFrequency = types.Frequency(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentAnomalyDetectorSummary(v **types.AnomalyDetectorSummary, 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.AnomalyDetectorSummary
+ if *v == nil {
+ sv = &types.AnomalyDetectorSummary{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AnomalyDetectorArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.AnomalyDetectorArn = ptr.String(jtv)
+ }
+
+ case "AnomalyDetectorDescription":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AnomalyDetectorDescription to be of type string, got %T instead", value)
+ }
+ sv.AnomalyDetectorDescription = ptr.String(jtv)
+ }
+
+ case "AnomalyDetectorName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AnomalyDetectorName to be of type string, got %T instead", value)
+ }
+ sv.AnomalyDetectorName = ptr.String(jtv)
+ }
+
+ case "CreationTime":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.CreationTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ }
+
+ case "LastModificationTime":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.LastModificationTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ }
+
+ case "Status":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AnomalyDetectorStatus to be of type string, got %T instead", value)
+ }
+ sv.Status = types.AnomalyDetectorStatus(jtv)
+ }
+
+ case "Tags":
+ if err := awsRestjson1_deserializeDocumentTagMap(&sv.Tags, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentAnomalyDetectorSummaryList(v *[]types.AnomalyDetectorSummary, 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.AnomalyDetectorSummary
+ if *v == nil {
+ cv = []types.AnomalyDetectorSummary{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.AnomalyDetectorSummary
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentAnomalyDetectorSummary(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentAnomalyGroup(v **types.AnomalyGroup, 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.AnomalyGroup
+ if *v == nil {
+ sv = &types.AnomalyGroup{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AnomalyGroupId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected UUID to be of type string, got %T instead", value)
+ }
+ sv.AnomalyGroupId = ptr.String(jtv)
+ }
+
+ case "AnomalyGroupScore":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Score to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.AnomalyGroupScore = ptr.Float64(f64)
+ }
+
+ case "EndTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected TimestampString to be of type string, got %T instead", value)
+ }
+ sv.EndTime = ptr.String(jtv)
+ }
+
+ case "MetricLevelImpactList":
+ if err := awsRestjson1_deserializeDocumentMetricLevelImpactList(&sv.MetricLevelImpactList, value); err != nil {
+ return err
+ }
+
+ case "PrimaryMetricName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected MetricName to be of type string, got %T instead", value)
+ }
+ sv.PrimaryMetricName = ptr.String(jtv)
+ }
+
+ case "StartTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected TimestampString to be of type string, got %T instead", value)
+ }
+ sv.StartTime = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentAnomalyGroupStatistics(v **types.AnomalyGroupStatistics, 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.AnomalyGroupStatistics
+ if *v == nil {
+ sv = &types.AnomalyGroupStatistics{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "EvaluationStartDate":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected TimestampString to be of type string, got %T instead", value)
+ }
+ sv.EvaluationStartDate = ptr.String(jtv)
+ }
+
+ case "ItemizedMetricStatsList":
+ if err := awsRestjson1_deserializeDocumentItemizedMetricStatsList(&sv.ItemizedMetricStatsList, value); err != nil {
+ return err
+ }
+
+ case "TotalCount":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Integer to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.TotalCount = int32(i64)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentAnomalyGroupSummary(v **types.AnomalyGroupSummary, 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.AnomalyGroupSummary
+ if *v == nil {
+ sv = &types.AnomalyGroupSummary{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AnomalyGroupId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected UUID to be of type string, got %T instead", value)
+ }
+ sv.AnomalyGroupId = ptr.String(jtv)
+ }
+
+ case "AnomalyGroupScore":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Score to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.AnomalyGroupScore = ptr.Float64(f64)
+ }
+
+ case "EndTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected TimestampString to be of type string, got %T instead", value)
+ }
+ sv.EndTime = ptr.String(jtv)
+ }
+
+ case "PrimaryMetricName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected MetricName to be of type string, got %T instead", value)
+ }
+ sv.PrimaryMetricName = ptr.String(jtv)
+ }
+
+ case "StartTime":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected TimestampString to be of type string, got %T instead", value)
+ }
+ sv.StartTime = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentAnomalyGroupSummaryList(v *[]types.AnomalyGroupSummary, 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.AnomalyGroupSummary
+ if *v == nil {
+ cv = []types.AnomalyGroupSummary{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.AnomalyGroupSummary
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentAnomalyGroupSummary(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentAppFlowConfig(v **types.AppFlowConfig, 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.AppFlowConfig
+ if *v == nil {
+ sv = &types.AppFlowConfig{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "FlowName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected FlowName to be of type string, got %T instead", value)
+ }
+ sv.FlowName = ptr.String(jtv)
+ }
+
+ case "RoleArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.RoleArn = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentCloudWatchConfig(v **types.CloudWatchConfig, 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.CloudWatchConfig
+ if *v == nil {
+ sv = &types.CloudWatchConfig{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "RoleArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.RoleArn = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentConflictException(v **types.ConflictException, 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.ConflictException
+ if *v == nil {
+ sv = &types.ConflictException{}
+ } 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 Message to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ case "ResourceId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceId to be of type string, got %T instead", value)
+ }
+ sv.ResourceId = ptr.String(jtv)
+ }
+
+ case "ResourceType":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceType to be of type string, got %T instead", value)
+ }
+ sv.ResourceType = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentContributionMatrix(v **types.ContributionMatrix, 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.ContributionMatrix
+ if *v == nil {
+ sv = &types.ContributionMatrix{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DimensionContributionList":
+ if err := awsRestjson1_deserializeDocumentDimensionContributionList(&sv.DimensionContributionList, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentCsvFormatDescriptor(v **types.CsvFormatDescriptor, 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.CsvFormatDescriptor
+ if *v == nil {
+ sv = &types.CsvFormatDescriptor{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Charset":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Charset to be of type string, got %T instead", value)
+ }
+ sv.Charset = ptr.String(jtv)
+ }
+
+ case "ContainsHeader":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value)
+ }
+ sv.ContainsHeader = ptr.Bool(jtv)
+ }
+
+ case "Delimiter":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Delimiter to be of type string, got %T instead", value)
+ }
+ sv.Delimiter = ptr.String(jtv)
+ }
+
+ case "FileCompression":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected CSVFileCompression to be of type string, got %T instead", value)
+ }
+ sv.FileCompression = types.CSVFileCompression(jtv)
+ }
+
+ case "HeaderList":
+ if err := awsRestjson1_deserializeDocumentHeaderList(&sv.HeaderList, value); err != nil {
+ return err
+ }
+
+ case "QuoteSymbol":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected QuoteSymbol to be of type string, got %T instead", value)
+ }
+ sv.QuoteSymbol = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentDimensionContribution(v **types.DimensionContribution, 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.DimensionContribution
+ if *v == nil {
+ sv = &types.DimensionContribution{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DimensionName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ColumnName to be of type string, got %T instead", value)
+ }
+ sv.DimensionName = ptr.String(jtv)
+ }
+
+ case "DimensionValueContributionList":
+ if err := awsRestjson1_deserializeDocumentDimensionValueContributionList(&sv.DimensionValueContributionList, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentDimensionContributionList(v *[]types.DimensionContribution, 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.DimensionContribution
+ if *v == nil {
+ cv = []types.DimensionContribution{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.DimensionContribution
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentDimensionContribution(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentDimensionList(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 ColumnName to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentDimensionNameValue(v **types.DimensionNameValue, 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.DimensionNameValue
+ if *v == nil {
+ sv = &types.DimensionNameValue{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DimensionName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ColumnName to be of type string, got %T instead", value)
+ }
+ sv.DimensionName = ptr.String(jtv)
+ }
+
+ case "DimensionValue":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected DimensionValue to be of type string, got %T instead", value)
+ }
+ sv.DimensionValue = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentDimensionNameValueList(v *[]types.DimensionNameValue, 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.DimensionNameValue
+ if *v == nil {
+ cv = []types.DimensionNameValue{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.DimensionNameValue
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentDimensionNameValue(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentDimensionValueContribution(v **types.DimensionValueContribution, 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.DimensionValueContribution
+ if *v == nil {
+ sv = &types.DimensionValueContribution{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "ContributionScore":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Score to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.ContributionScore = ptr.Float64(f64)
+ }
+
+ case "DimensionValue":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected DimensionValue to be of type string, got %T instead", value)
+ }
+ sv.DimensionValue = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentDimensionValueContributionList(v *[]types.DimensionValueContribution, 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.DimensionValueContribution
+ if *v == nil {
+ cv = []types.DimensionValueContribution{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.DimensionValueContribution
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentDimensionValueContribution(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentExecutionList(v *[]types.ExecutionStatus, 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.ExecutionStatus
+ if *v == nil {
+ cv = []types.ExecutionStatus{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.ExecutionStatus
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentExecutionStatus(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentExecutionStatus(v **types.ExecutionStatus, 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.ExecutionStatus
+ if *v == nil {
+ sv = &types.ExecutionStatus{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "FailureReason":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AnomalyDetectionTaskStatusMessage to be of type string, got %T instead", value)
+ }
+ sv.FailureReason = ptr.String(jtv)
+ }
+
+ case "Status":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AnomalyDetectionTaskStatus to be of type string, got %T instead", value)
+ }
+ sv.Status = types.AnomalyDetectionTaskStatus(jtv)
+ }
+
+ case "Timestamp":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected TimestampString to be of type string, got %T instead", value)
+ }
+ sv.Timestamp = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentFileFormatDescriptor(v **types.FileFormatDescriptor, 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.FileFormatDescriptor
+ if *v == nil {
+ sv = &types.FileFormatDescriptor{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CsvFormatDescriptor":
+ if err := awsRestjson1_deserializeDocumentCsvFormatDescriptor(&sv.CsvFormatDescriptor, value); err != nil {
+ return err
+ }
+
+ case "JsonFormatDescriptor":
+ if err := awsRestjson1_deserializeDocumentJsonFormatDescriptor(&sv.JsonFormatDescriptor, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentHeaderList(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 ColumnName to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentHeaderValueList(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 HeaderValue to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentHistoricalDataPathList(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 HistoricalDataPath to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentInternalServerException(v **types.InternalServerException, 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.InternalServerException
+ if *v == nil {
+ sv = &types.InternalServerException{}
+ } 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 Message to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentItemizedMetricStats(v **types.ItemizedMetricStats, 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.ItemizedMetricStats
+ if *v == nil {
+ sv = &types.ItemizedMetricStats{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "MetricName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ColumnName to be of type string, got %T instead", value)
+ }
+ sv.MetricName = ptr.String(jtv)
+ }
+
+ case "OccurrenceCount":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Integer to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.OccurrenceCount = int32(i64)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentItemizedMetricStatsList(v *[]types.ItemizedMetricStats, 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.ItemizedMetricStats
+ if *v == nil {
+ cv = []types.ItemizedMetricStats{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.ItemizedMetricStats
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentItemizedMetricStats(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentJsonFormatDescriptor(v **types.JsonFormatDescriptor, 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.JsonFormatDescriptor
+ if *v == nil {
+ sv = &types.JsonFormatDescriptor{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Charset":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Charset to be of type string, got %T instead", value)
+ }
+ sv.Charset = ptr.String(jtv)
+ }
+
+ case "FileCompression":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected JsonFileCompression to be of type string, got %T instead", value)
+ }
+ sv.FileCompression = types.JsonFileCompression(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentLambdaConfiguration(v **types.LambdaConfiguration, 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.LambdaConfiguration
+ if *v == nil {
+ sv = &types.LambdaConfiguration{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "LambdaArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.LambdaArn = ptr.String(jtv)
+ }
+
+ case "RoleArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.RoleArn = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentMetric(v **types.Metric, 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.Metric
+ if *v == nil {
+ sv = &types.Metric{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AggregationFunction":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AggregationFunction to be of type string, got %T instead", value)
+ }
+ sv.AggregationFunction = types.AggregationFunction(jtv)
+ }
+
+ case "MetricName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ColumnName to be of type string, got %T instead", value)
+ }
+ sv.MetricName = ptr.String(jtv)
+ }
+
+ case "Namespace":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Namespace to be of type string, got %T instead", value)
+ }
+ sv.Namespace = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentMetricLevelImpact(v **types.MetricLevelImpact, 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.MetricLevelImpact
+ if *v == nil {
+ sv = &types.MetricLevelImpact{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "ContributionMatrix":
+ if err := awsRestjson1_deserializeDocumentContributionMatrix(&sv.ContributionMatrix, value); err != nil {
+ return err
+ }
+
+ case "MetricName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected MetricName to be of type string, got %T instead", value)
+ }
+ sv.MetricName = ptr.String(jtv)
+ }
+
+ case "NumTimeSeries":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Integer to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.NumTimeSeries = int32(i64)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentMetricLevelImpactList(v *[]types.MetricLevelImpact, 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.MetricLevelImpact
+ if *v == nil {
+ cv = []types.MetricLevelImpact{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.MetricLevelImpact
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentMetricLevelImpact(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentMetricList(v *[]types.Metric, 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.Metric
+ if *v == nil {
+ cv = []types.Metric{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.Metric
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentMetric(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentMetricSetSummary(v **types.MetricSetSummary, 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.MetricSetSummary
+ if *v == nil {
+ sv = &types.MetricSetSummary{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AnomalyDetectorArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.AnomalyDetectorArn = ptr.String(jtv)
+ }
+
+ case "CreationTime":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.CreationTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ }
+
+ case "LastModificationTime":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.LastModificationTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ }
+
+ case "MetricSetArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.MetricSetArn = ptr.String(jtv)
+ }
+
+ case "MetricSetDescription":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected MetricSetDescription to be of type string, got %T instead", value)
+ }
+ sv.MetricSetDescription = ptr.String(jtv)
+ }
+
+ case "MetricSetName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected MetricSetName to be of type string, got %T instead", value)
+ }
+ sv.MetricSetName = ptr.String(jtv)
+ }
+
+ case "Tags":
+ if err := awsRestjson1_deserializeDocumentTagMap(&sv.Tags, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentMetricSetSummaryList(v *[]types.MetricSetSummary, 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.MetricSetSummary
+ if *v == nil {
+ cv = []types.MetricSetSummary{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.MetricSetSummary
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentMetricSetSummary(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentMetricSource(v **types.MetricSource, 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.MetricSource
+ if *v == nil {
+ sv = &types.MetricSource{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "AppFlowConfig":
+ if err := awsRestjson1_deserializeDocumentAppFlowConfig(&sv.AppFlowConfig, value); err != nil {
+ return err
+ }
+
+ case "CloudWatchConfig":
+ if err := awsRestjson1_deserializeDocumentCloudWatchConfig(&sv.CloudWatchConfig, value); err != nil {
+ return err
+ }
+
+ case "RDSSourceConfig":
+ if err := awsRestjson1_deserializeDocumentRDSSourceConfig(&sv.RDSSourceConfig, value); err != nil {
+ return err
+ }
+
+ case "RedshiftSourceConfig":
+ if err := awsRestjson1_deserializeDocumentRedshiftSourceConfig(&sv.RedshiftSourceConfig, value); err != nil {
+ return err
+ }
+
+ case "S3SourceConfig":
+ if err := awsRestjson1_deserializeDocumentS3SourceConfig(&sv.S3SourceConfig, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentMetricValueList(v *[]float64, 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 []float64
+ if *v == nil {
+ cv = []float64{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col float64
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected MetricValue to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ col = f64
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentRDSSourceConfig(v **types.RDSSourceConfig, 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.RDSSourceConfig
+ if *v == nil {
+ sv = &types.RDSSourceConfig{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DatabaseHost":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected DatabaseHost to be of type string, got %T instead", value)
+ }
+ sv.DatabaseHost = ptr.String(jtv)
+ }
+
+ case "DatabaseName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected RDSDatabaseName to be of type string, got %T instead", value)
+ }
+ sv.DatabaseName = ptr.String(jtv)
+ }
+
+ case "DatabasePort":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected DatabasePort to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.DatabasePort = int32(i64)
+ }
+
+ case "DBInstanceIdentifier":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected RDSDatabaseIdentifier to be of type string, got %T instead", value)
+ }
+ sv.DBInstanceIdentifier = ptr.String(jtv)
+ }
+
+ case "RoleArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.RoleArn = ptr.String(jtv)
+ }
+
+ case "SecretManagerArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PoirotSecretManagerArn to be of type string, got %T instead", value)
+ }
+ sv.SecretManagerArn = ptr.String(jtv)
+ }
+
+ case "TableName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected TableName to be of type string, got %T instead", value)
+ }
+ sv.TableName = ptr.String(jtv)
+ }
+
+ case "VpcConfiguration":
+ if err := awsRestjson1_deserializeDocumentVpcConfiguration(&sv.VpcConfiguration, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentRedshiftSourceConfig(v **types.RedshiftSourceConfig, 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.RedshiftSourceConfig
+ if *v == nil {
+ sv = &types.RedshiftSourceConfig{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "ClusterIdentifier":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected RedshiftClusterIdentifier to be of type string, got %T instead", value)
+ }
+ sv.ClusterIdentifier = ptr.String(jtv)
+ }
+
+ case "DatabaseHost":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected DatabaseHost to be of type string, got %T instead", value)
+ }
+ sv.DatabaseHost = ptr.String(jtv)
+ }
+
+ case "DatabaseName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected RedshiftDatabaseName to be of type string, got %T instead", value)
+ }
+ sv.DatabaseName = ptr.String(jtv)
+ }
+
+ case "DatabasePort":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected DatabasePort to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.DatabasePort = int32(i64)
+ }
+
+ case "RoleArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.RoleArn = ptr.String(jtv)
+ }
+
+ case "SecretManagerArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected PoirotSecretManagerArn to be of type string, got %T instead", value)
+ }
+ sv.SecretManagerArn = ptr.String(jtv)
+ }
+
+ case "TableName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected TableName to be of type string, got %T instead", value)
+ }
+ sv.TableName = ptr.String(jtv)
+ }
+
+ case "VpcConfiguration":
+ if err := awsRestjson1_deserializeDocumentVpcConfiguration(&sv.VpcConfiguration, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentResourceNotFoundException(v **types.ResourceNotFoundException, 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.ResourceNotFoundException
+ if *v == nil {
+ sv = &types.ResourceNotFoundException{}
+ } 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 Message to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ case "ResourceId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceId to be of type string, got %T instead", value)
+ }
+ sv.ResourceId = ptr.String(jtv)
+ }
+
+ case "ResourceType":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceType to be of type string, got %T instead", value)
+ }
+ sv.ResourceType = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentS3SourceConfig(v **types.S3SourceConfig, 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.S3SourceConfig
+ if *v == nil {
+ sv = &types.S3SourceConfig{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "FileFormatDescriptor":
+ if err := awsRestjson1_deserializeDocumentFileFormatDescriptor(&sv.FileFormatDescriptor, value); err != nil {
+ return err
+ }
+
+ case "HistoricalDataPathList":
+ if err := awsRestjson1_deserializeDocumentHistoricalDataPathList(&sv.HistoricalDataPathList, value); err != nil {
+ return err
+ }
+
+ case "RoleArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.RoleArn = ptr.String(jtv)
+ }
+
+ case "TemplatedPathList":
+ if err := awsRestjson1_deserializeDocumentTemplatedPathList(&sv.TemplatedPathList, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentSampleRow(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 DataItem to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentSampleRows(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 err := awsRestjson1_deserializeDocumentSampleRow(&col, value); err != nil {
+ return err
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentSecurityGroupIdList(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 SecurityGroupId to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentServiceQuotaExceededException(v **types.ServiceQuotaExceededException, 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.ServiceQuotaExceededException
+ if *v == nil {
+ sv = &types.ServiceQuotaExceededException{}
+ } 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 Message to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ case "QuotaCode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected QuotaCode to be of type string, got %T instead", value)
+ }
+ sv.QuotaCode = ptr.String(jtv)
+ }
+
+ case "ResourceId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceId to be of type string, got %T instead", value)
+ }
+ sv.ResourceId = ptr.String(jtv)
+ }
+
+ case "ResourceType":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResourceType to be of type string, got %T instead", value)
+ }
+ sv.ResourceType = ptr.String(jtv)
+ }
+
+ case "ServiceCode":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ServiceCode to be of type string, got %T instead", value)
+ }
+ sv.ServiceCode = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentSNSConfiguration(v **types.SNSConfiguration, 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.SNSConfiguration
+ if *v == nil {
+ sv = &types.SNSConfiguration{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "RoleArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.RoleArn = ptr.String(jtv)
+ }
+
+ case "SnsTopicArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
+ }
+ sv.SnsTopicArn = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentSubnetIdList(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 SubnetId to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentTagMap(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_deserializeDocumentTemplatedPathList(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 TemplatedPath to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentTimeSeries(v **types.TimeSeries, 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.TimeSeries
+ if *v == nil {
+ sv = &types.TimeSeries{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DimensionList":
+ if err := awsRestjson1_deserializeDocumentDimensionNameValueList(&sv.DimensionList, value); err != nil {
+ return err
+ }
+
+ case "MetricValueList":
+ if err := awsRestjson1_deserializeDocumentMetricValueList(&sv.MetricValueList, value); err != nil {
+ return err
+ }
+
+ case "TimeSeriesId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected TimeSeriesId to be of type string, got %T instead", value)
+ }
+ sv.TimeSeriesId = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentTimeSeriesFeedback(v **types.TimeSeriesFeedback, 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.TimeSeriesFeedback
+ if *v == nil {
+ sv = &types.TimeSeriesFeedback{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "IsAnomaly":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value)
+ }
+ sv.IsAnomaly = ptr.Bool(jtv)
+ }
+
+ case "TimeSeriesId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected TimeSeriesId to be of type string, got %T instead", value)
+ }
+ sv.TimeSeriesId = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentTimeSeriesFeedbackList(v *[]types.TimeSeriesFeedback, 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.TimeSeriesFeedback
+ if *v == nil {
+ cv = []types.TimeSeriesFeedback{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.TimeSeriesFeedback
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentTimeSeriesFeedback(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentTimeSeriesList(v *[]types.TimeSeries, 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.TimeSeries
+ if *v == nil {
+ cv = []types.TimeSeries{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.TimeSeries
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentTimeSeries(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentTimestampColumn(v **types.TimestampColumn, 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.TimestampColumn
+ if *v == nil {
+ sv = &types.TimestampColumn{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "ColumnFormat":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected DateTimeFormat to be of type string, got %T instead", value)
+ }
+ sv.ColumnFormat = ptr.String(jtv)
+ }
+
+ case "ColumnName":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ColumnName to be of type string, got %T instead", value)
+ }
+ sv.ColumnName = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentTimestampList(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 TimestampString to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentTooManyRequestsException(v **types.TooManyRequestsException, 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.TooManyRequestsException
+ if *v == nil {
+ sv = &types.TooManyRequestsException{}
+ } 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 Message to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentValidationException(v **types.ValidationException, 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.ValidationException
+ if *v == nil {
+ sv = &types.ValidationException{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Fields":
+ if err := awsRestjson1_deserializeDocumentValidationExceptionFieldList(&sv.Fields, value); err != nil {
+ return err
+ }
+
+ case "Message":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected Message to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ case "Reason":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ValidationExceptionReason to be of type string, got %T instead", value)
+ }
+ sv.Reason = types.ValidationExceptionReason(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentValidationExceptionField(v **types.ValidationExceptionField, 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.ValidationExceptionField
+ if *v == nil {
+ sv = &types.ValidationExceptionField{}
+ } 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 Message to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ case "Name":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected FieldName to be of type string, got %T instead", value)
+ }
+ sv.Name = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentValidationExceptionFieldList(v *[]types.ValidationExceptionField, 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.ValidationExceptionField
+ if *v == nil {
+ cv = []types.ValidationExceptionField{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.ValidationExceptionField
+ destAddr := &col
+ if err := awsRestjson1_deserializeDocumentValidationExceptionField(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsRestjson1_deserializeDocumentVpcConfiguration(v **types.VpcConfiguration, 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.VpcConfiguration
+ if *v == nil {
+ sv = &types.VpcConfiguration{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "SecurityGroupIdList":
+ if err := awsRestjson1_deserializeDocumentSecurityGroupIdList(&sv.SecurityGroupIdList, value); err != nil {
+ return err
+ }
+
+ case "SubnetIdList":
+ if err := awsRestjson1_deserializeDocumentSubnetIdList(&sv.SubnetIdList, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
diff --git a/service/lookoutmetrics/doc.go b/service/lookoutmetrics/doc.go
new file mode 100644
index 00000000000..2a877c91eff
--- /dev/null
+++ b/service/lookoutmetrics/doc.go
@@ -0,0 +1,9 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+// Package lookoutmetrics provides the API client, operations, and parameter types
+// for Amazon Lookout for Metrics.
+//
+// This is the Amazon Lookout for Metrics API Reference. For an introduction to the
+// service with tutorials for getting started, visit Amazon Lookout for Metrics
+// Developer Guide (https://docs.aws.amazon.com/lookoutmetrics/latest/dev).
+package lookoutmetrics
diff --git a/service/lookoutmetrics/endpoints.go b/service/lookoutmetrics/endpoints.go
new file mode 100644
index 00000000000..756f78d1bac
--- /dev/null
+++ b/service/lookoutmetrics/endpoints.go
@@ -0,0 +1,160 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+import (
+ "context"
+ "errors"
+ "fmt"
+ "github.com/aws/aws-sdk-go-v2/aws"
+ awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
+ internalendpoints "github.com/aws/aws-sdk-go-v2/service/lookoutmetrics/internal/endpoints"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "net/url"
+)
+
+// EndpointResolverOptions is the service endpoint resolver options
+type EndpointResolverOptions = internalendpoints.Options
+
+// EndpointResolver interface for resolving service endpoints.
+type EndpointResolver interface {
+ ResolveEndpoint(region string, options EndpointResolverOptions) (aws.Endpoint, error)
+}
+
+var _ EndpointResolver = &internalendpoints.Resolver{}
+
+// NewDefaultEndpointResolver constructs a new service endpoint resolver
+func NewDefaultEndpointResolver() *internalendpoints.Resolver {
+ return internalendpoints.New()
+}
+
+// EndpointResolverFunc is a helper utility that wraps a function so it satisfies
+// the EndpointResolver interface. This is useful when you want to add additional
+// endpoint resolving logic, or stub out specific endpoints with custom values.
+type EndpointResolverFunc func(region string, options EndpointResolverOptions) (aws.Endpoint, error)
+
+func (fn EndpointResolverFunc) ResolveEndpoint(region string, options EndpointResolverOptions) (endpoint aws.Endpoint, err error) {
+ return fn(region, options)
+}
+
+func resolveDefaultEndpointConfiguration(o *Options) {
+ if o.EndpointResolver != nil {
+ return
+ }
+ o.EndpointResolver = NewDefaultEndpointResolver()
+}
+
+// EndpointResolverFromURL returns an EndpointResolver configured using the
+// provided endpoint url. By default, the resolved endpoint resolver uses the
+// client region as signing region, and the endpoint source is set to
+// EndpointSourceCustom.You can provide functional options to configure endpoint
+// values for the resolved endpoint.
+func EndpointResolverFromURL(url string, optFns ...func(*aws.Endpoint)) EndpointResolver {
+ e := aws.Endpoint{URL: url, Source: aws.EndpointSourceCustom}
+ for _, fn := range optFns {
+ fn(&e)
+ }
+
+ return EndpointResolverFunc(
+ func(region string, options EndpointResolverOptions) (aws.Endpoint, error) {
+ if len(e.SigningRegion) == 0 {
+ e.SigningRegion = region
+ }
+ return e, nil
+ },
+ )
+}
+
+type ResolveEndpoint struct {
+ Resolver EndpointResolver
+ Options EndpointResolverOptions
+}
+
+func (*ResolveEndpoint) ID() string {
+ return "ResolveEndpoint"
+}
+
+func (m *ResolveEndpoint) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
+ out middleware.SerializeOutput, metadata middleware.Metadata, err error,
+) {
+ req, ok := in.Request.(*smithyhttp.Request)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown transport type %T", in.Request)
+ }
+
+ if m.Resolver == nil {
+ return out, metadata, fmt.Errorf("expected endpoint resolver to not be nil")
+ }
+
+ var endpoint aws.Endpoint
+ endpoint, err = m.Resolver.ResolveEndpoint(awsmiddleware.GetRegion(ctx), m.Options)
+ if err != nil {
+ return out, metadata, fmt.Errorf("failed to resolve service endpoint, %w", err)
+ }
+
+ req.URL, err = url.Parse(endpoint.URL)
+ if err != nil {
+ return out, metadata, fmt.Errorf("failed to parse endpoint URL: %w", err)
+ }
+
+ if len(awsmiddleware.GetSigningName(ctx)) == 0 {
+ signingName := endpoint.SigningName
+ if len(signingName) == 0 {
+ signingName = "lookoutmetrics"
+ }
+ ctx = awsmiddleware.SetSigningName(ctx, signingName)
+ }
+ ctx = awsmiddleware.SetEndpointSource(ctx, endpoint.Source)
+ ctx = smithyhttp.SetHostnameImmutable(ctx, endpoint.HostnameImmutable)
+ ctx = awsmiddleware.SetSigningRegion(ctx, endpoint.SigningRegion)
+ ctx = awsmiddleware.SetPartitionID(ctx, endpoint.PartitionID)
+ return next.HandleSerialize(ctx, in)
+}
+func addResolveEndpointMiddleware(stack *middleware.Stack, o Options) error {
+ return stack.Serialize.Insert(&ResolveEndpoint{
+ Resolver: o.EndpointResolver,
+ Options: o.EndpointOptions,
+ }, "OperationSerializer", middleware.Before)
+}
+
+func removeResolveEndpointMiddleware(stack *middleware.Stack) error {
+ _, err := stack.Serialize.Remove((&ResolveEndpoint{}).ID())
+ return err
+}
+
+type wrappedEndpointResolver struct {
+ awsResolver aws.EndpointResolver
+ resolver EndpointResolver
+}
+
+func (w *wrappedEndpointResolver) ResolveEndpoint(region string, options EndpointResolverOptions) (endpoint aws.Endpoint, err error) {
+ if w.awsResolver == nil {
+ goto fallback
+ }
+ endpoint, err = w.awsResolver.ResolveEndpoint(ServiceID, region)
+ if err == nil {
+ return endpoint, nil
+ }
+
+ if nf := (&aws.EndpointNotFoundError{}); !errors.As(err, &nf) {
+ return endpoint, err
+ }
+
+fallback:
+ if w.resolver == nil {
+ return endpoint, fmt.Errorf("default endpoint resolver provided was nil")
+ }
+ return w.resolver.ResolveEndpoint(region, options)
+}
+
+// withEndpointResolver returns an EndpointResolver that first delegates endpoint
+// resolution to the awsResolver. If awsResolver returns aws.EndpointNotFoundError
+// error, the resolver will use the the provided fallbackResolver for resolution.
+// awsResolver and fallbackResolver must not be nil
+func withEndpointResolver(awsResolver aws.EndpointResolver, fallbackResolver EndpointResolver) EndpointResolver {
+ return &wrappedEndpointResolver{
+ awsResolver: awsResolver,
+ resolver: fallbackResolver,
+ }
+}
diff --git a/service/lookoutmetrics/go.mod b/service/lookoutmetrics/go.mod
new file mode 100644
index 00000000000..814ef822f06
--- /dev/null
+++ b/service/lookoutmetrics/go.mod
@@ -0,0 +1,10 @@
+module github.com/aws/aws-sdk-go-v2/service/lookoutmetrics
+
+go 1.15
+
+require (
+ github.com/aws/aws-sdk-go-v2 v1.3.0
+ github.com/aws/smithy-go v1.3.0
+)
+
+replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/lookoutmetrics/go.sum b/service/lookoutmetrics/go.sum
new file mode 100644
index 00000000000..3aa8f05f35e
--- /dev/null
+++ b/service/lookoutmetrics/go.sum
@@ -0,0 +1,13 @@
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
+github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
+github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
+github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo=
+github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U=
+github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
+github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
+golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
+golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
+gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
+gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
diff --git a/service/lookoutmetrics/internal/endpoints/endpoints.go b/service/lookoutmetrics/internal/endpoints/endpoints.go
new file mode 100644
index 00000000000..a4fe43f73fa
--- /dev/null
+++ b/service/lookoutmetrics/internal/endpoints/endpoints.go
@@ -0,0 +1,106 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package endpoints
+
+import (
+ "github.com/aws/aws-sdk-go-v2/aws"
+ "github.com/aws/aws-sdk-go-v2/internal/endpoints"
+ "regexp"
+)
+
+// Options is the endpoint resolver configuration options
+type Options struct {
+ DisableHTTPS bool
+}
+
+// Resolver LookoutMetrics endpoint resolver
+type Resolver struct {
+ partitions endpoints.Partitions
+}
+
+// ResolveEndpoint resolves the service endpoint for the given region and options
+func (r *Resolver) ResolveEndpoint(region string, options Options) (endpoint aws.Endpoint, err error) {
+ if len(region) == 0 {
+ return endpoint, &aws.MissingRegionError{}
+ }
+
+ opt := endpoints.Options{
+ DisableHTTPS: options.DisableHTTPS,
+ }
+ return r.partitions.ResolveEndpoint(region, opt)
+}
+
+// New returns a new Resolver
+func New() *Resolver {
+ return &Resolver{
+ partitions: defaultPartitions,
+ }
+}
+
+var partitionRegexp = struct {
+ Aws *regexp.Regexp
+ AwsCn *regexp.Regexp
+ AwsIso *regexp.Regexp
+ AwsIsoB *regexp.Regexp
+ AwsUsGov *regexp.Regexp
+}{
+
+ Aws: regexp.MustCompile("^(us|eu|ap|sa|ca|me|af)\\-\\w+\\-\\d+$"),
+ AwsCn: regexp.MustCompile("^cn\\-\\w+\\-\\d+$"),
+ AwsIso: regexp.MustCompile("^us\\-iso\\-\\w+\\-\\d+$"),
+ AwsIsoB: regexp.MustCompile("^us\\-isob\\-\\w+\\-\\d+$"),
+ AwsUsGov: regexp.MustCompile("^us\\-gov\\-\\w+\\-\\d+$"),
+}
+
+var defaultPartitions = endpoints.Partitions{
+ {
+ ID: "aws",
+ Defaults: endpoints.Endpoint{
+ Hostname: "lookoutmetrics.{region}.amazonaws.com",
+ Protocols: []string{"https"},
+ SignatureVersions: []string{"v4"},
+ },
+ RegionRegex: partitionRegexp.Aws,
+ IsRegionalized: true,
+ },
+ {
+ ID: "aws-cn",
+ Defaults: endpoints.Endpoint{
+ Hostname: "lookoutmetrics.{region}.amazonaws.com.cn",
+ Protocols: []string{"https"},
+ SignatureVersions: []string{"v4"},
+ },
+ RegionRegex: partitionRegexp.AwsCn,
+ IsRegionalized: true,
+ },
+ {
+ ID: "aws-iso",
+ Defaults: endpoints.Endpoint{
+ Hostname: "lookoutmetrics.{region}.c2s.ic.gov",
+ Protocols: []string{"https"},
+ SignatureVersions: []string{"v4"},
+ },
+ RegionRegex: partitionRegexp.AwsIso,
+ IsRegionalized: true,
+ },
+ {
+ ID: "aws-iso-b",
+ Defaults: endpoints.Endpoint{
+ Hostname: "lookoutmetrics.{region}.sc2s.sgov.gov",
+ Protocols: []string{"https"},
+ SignatureVersions: []string{"v4"},
+ },
+ RegionRegex: partitionRegexp.AwsIsoB,
+ IsRegionalized: true,
+ },
+ {
+ ID: "aws-us-gov",
+ Defaults: endpoints.Endpoint{
+ Hostname: "lookoutmetrics.{region}.amazonaws.com",
+ Protocols: []string{"https"},
+ SignatureVersions: []string{"v4"},
+ },
+ RegionRegex: partitionRegexp.AwsUsGov,
+ IsRegionalized: true,
+ },
+}
diff --git a/service/lookoutmetrics/internal/endpoints/endpoints_test.go b/service/lookoutmetrics/internal/endpoints/endpoints_test.go
new file mode 100644
index 00000000000..08e5da2d833
--- /dev/null
+++ b/service/lookoutmetrics/internal/endpoints/endpoints_test.go
@@ -0,0 +1,11 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package endpoints
+
+import (
+ "testing"
+)
+
+func TestRegexCompile(t *testing.T) {
+ _ = defaultPartitions
+}
diff --git a/service/lookoutmetrics/protocol_test.go b/service/lookoutmetrics/protocol_test.go
new file mode 100644
index 00000000000..8e9243be03a
--- /dev/null
+++ b/service/lookoutmetrics/protocol_test.go
@@ -0,0 +1,3 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
diff --git a/service/lookoutmetrics/serializers.go b/service/lookoutmetrics/serializers.go
new file mode 100644
index 00000000000..0b9555727c9
--- /dev/null
+++ b/service/lookoutmetrics/serializers.go
@@ -0,0 +1,2563 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+import (
+ "bytes"
+ "context"
+ "fmt"
+ "github.com/aws/aws-sdk-go-v2/service/lookoutmetrics/types"
+ smithy "github.com/aws/smithy-go"
+ "github.com/aws/smithy-go/encoding/httpbinding"
+ smithyjson "github.com/aws/smithy-go/encoding/json"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+type awsRestjson1_serializeOpActivateAnomalyDetector struct {
+}
+
+func (*awsRestjson1_serializeOpActivateAnomalyDetector) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpActivateAnomalyDetector) 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.(*ActivateAnomalyDetectorInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/ActivateAnomalyDetector")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentActivateAnomalyDetectorInput(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_serializeOpHttpBindingsActivateAnomalyDetectorInput(v *ActivateAnomalyDetectorInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentActivateAnomalyDetectorInput(v *ActivateAnomalyDetectorInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyDetectorArn != nil {
+ ok := object.Key("AnomalyDetectorArn")
+ ok.String(*v.AnomalyDetectorArn)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpBackTestAnomalyDetector struct {
+}
+
+func (*awsRestjson1_serializeOpBackTestAnomalyDetector) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpBackTestAnomalyDetector) 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.(*BackTestAnomalyDetectorInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/BackTestAnomalyDetector")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentBackTestAnomalyDetectorInput(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_serializeOpHttpBindingsBackTestAnomalyDetectorInput(v *BackTestAnomalyDetectorInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentBackTestAnomalyDetectorInput(v *BackTestAnomalyDetectorInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyDetectorArn != nil {
+ ok := object.Key("AnomalyDetectorArn")
+ ok.String(*v.AnomalyDetectorArn)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpCreateAlert struct {
+}
+
+func (*awsRestjson1_serializeOpCreateAlert) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpCreateAlert) 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.(*CreateAlertInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/CreateAlert")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentCreateAlertInput(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_serializeOpHttpBindingsCreateAlertInput(v *CreateAlertInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentCreateAlertInput(v *CreateAlertInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Action != nil {
+ ok := object.Key("Action")
+ if err := awsRestjson1_serializeDocumentAction(v.Action, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.AlertDescription != nil {
+ ok := object.Key("AlertDescription")
+ ok.String(*v.AlertDescription)
+ }
+
+ if v.AlertName != nil {
+ ok := object.Key("AlertName")
+ ok.String(*v.AlertName)
+ }
+
+ {
+ ok := object.Key("AlertSensitivityThreshold")
+ ok.Integer(v.AlertSensitivityThreshold)
+ }
+
+ if v.AnomalyDetectorArn != nil {
+ ok := object.Key("AnomalyDetectorArn")
+ ok.String(*v.AnomalyDetectorArn)
+ }
+
+ if v.Tags != nil {
+ ok := object.Key("Tags")
+ if err := awsRestjson1_serializeDocumentTagMap(v.Tags, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpCreateAnomalyDetector struct {
+}
+
+func (*awsRestjson1_serializeOpCreateAnomalyDetector) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpCreateAnomalyDetector) 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.(*CreateAnomalyDetectorInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/CreateAnomalyDetector")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentCreateAnomalyDetectorInput(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_serializeOpHttpBindingsCreateAnomalyDetectorInput(v *CreateAnomalyDetectorInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentCreateAnomalyDetectorInput(v *CreateAnomalyDetectorInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyDetectorConfig != nil {
+ ok := object.Key("AnomalyDetectorConfig")
+ if err := awsRestjson1_serializeDocumentAnomalyDetectorConfig(v.AnomalyDetectorConfig, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.AnomalyDetectorDescription != nil {
+ ok := object.Key("AnomalyDetectorDescription")
+ ok.String(*v.AnomalyDetectorDescription)
+ }
+
+ if v.AnomalyDetectorName != nil {
+ ok := object.Key("AnomalyDetectorName")
+ ok.String(*v.AnomalyDetectorName)
+ }
+
+ if v.KmsKeyArn != nil {
+ ok := object.Key("KmsKeyArn")
+ ok.String(*v.KmsKeyArn)
+ }
+
+ if v.Tags != nil {
+ ok := object.Key("Tags")
+ if err := awsRestjson1_serializeDocumentTagMap(v.Tags, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpCreateMetricSet struct {
+}
+
+func (*awsRestjson1_serializeOpCreateMetricSet) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpCreateMetricSet) 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.(*CreateMetricSetInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/CreateMetricSet")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentCreateMetricSetInput(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_serializeOpHttpBindingsCreateMetricSetInput(v *CreateMetricSetInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentCreateMetricSetInput(v *CreateMetricSetInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyDetectorArn != nil {
+ ok := object.Key("AnomalyDetectorArn")
+ ok.String(*v.AnomalyDetectorArn)
+ }
+
+ if v.DimensionList != nil {
+ ok := object.Key("DimensionList")
+ if err := awsRestjson1_serializeDocumentDimensionList(v.DimensionList, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.MetricList != nil {
+ ok := object.Key("MetricList")
+ if err := awsRestjson1_serializeDocumentMetricList(v.MetricList, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.MetricSetDescription != nil {
+ ok := object.Key("MetricSetDescription")
+ ok.String(*v.MetricSetDescription)
+ }
+
+ if len(v.MetricSetFrequency) > 0 {
+ ok := object.Key("MetricSetFrequency")
+ ok.String(string(v.MetricSetFrequency))
+ }
+
+ if v.MetricSetName != nil {
+ ok := object.Key("MetricSetName")
+ ok.String(*v.MetricSetName)
+ }
+
+ if v.MetricSource != nil {
+ ok := object.Key("MetricSource")
+ if err := awsRestjson1_serializeDocumentMetricSource(v.MetricSource, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.Offset != 0 {
+ ok := object.Key("Offset")
+ ok.Integer(v.Offset)
+ }
+
+ if v.Tags != nil {
+ ok := object.Key("Tags")
+ if err := awsRestjson1_serializeDocumentTagMap(v.Tags, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.TimestampColumn != nil {
+ ok := object.Key("TimestampColumn")
+ if err := awsRestjson1_serializeDocumentTimestampColumn(v.TimestampColumn, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.Timezone != nil {
+ ok := object.Key("Timezone")
+ ok.String(*v.Timezone)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpDeleteAlert struct {
+}
+
+func (*awsRestjson1_serializeOpDeleteAlert) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpDeleteAlert) 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.(*DeleteAlertInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/DeleteAlert")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentDeleteAlertInput(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_serializeOpHttpBindingsDeleteAlertInput(v *DeleteAlertInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentDeleteAlertInput(v *DeleteAlertInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AlertArn != nil {
+ ok := object.Key("AlertArn")
+ ok.String(*v.AlertArn)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpDeleteAnomalyDetector struct {
+}
+
+func (*awsRestjson1_serializeOpDeleteAnomalyDetector) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpDeleteAnomalyDetector) 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.(*DeleteAnomalyDetectorInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/DeleteAnomalyDetector")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentDeleteAnomalyDetectorInput(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_serializeOpHttpBindingsDeleteAnomalyDetectorInput(v *DeleteAnomalyDetectorInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentDeleteAnomalyDetectorInput(v *DeleteAnomalyDetectorInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyDetectorArn != nil {
+ ok := object.Key("AnomalyDetectorArn")
+ ok.String(*v.AnomalyDetectorArn)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpDescribeAlert struct {
+}
+
+func (*awsRestjson1_serializeOpDescribeAlert) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpDescribeAlert) 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.(*DescribeAlertInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/DescribeAlert")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentDescribeAlertInput(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_serializeOpHttpBindingsDescribeAlertInput(v *DescribeAlertInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentDescribeAlertInput(v *DescribeAlertInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AlertArn != nil {
+ ok := object.Key("AlertArn")
+ ok.String(*v.AlertArn)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpDescribeAnomalyDetectionExecutions struct {
+}
+
+func (*awsRestjson1_serializeOpDescribeAnomalyDetectionExecutions) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpDescribeAnomalyDetectionExecutions) 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.(*DescribeAnomalyDetectionExecutionsInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/DescribeAnomalyDetectionExecutions")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentDescribeAnomalyDetectionExecutionsInput(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_serializeOpHttpBindingsDescribeAnomalyDetectionExecutionsInput(v *DescribeAnomalyDetectionExecutionsInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentDescribeAnomalyDetectionExecutionsInput(v *DescribeAnomalyDetectionExecutionsInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyDetectorArn != nil {
+ ok := object.Key("AnomalyDetectorArn")
+ ok.String(*v.AnomalyDetectorArn)
+ }
+
+ if v.MaxResults != 0 {
+ ok := object.Key("MaxResults")
+ ok.Integer(v.MaxResults)
+ }
+
+ if v.NextToken != nil {
+ ok := object.Key("NextToken")
+ ok.String(*v.NextToken)
+ }
+
+ if v.Timestamp != nil {
+ ok := object.Key("Timestamp")
+ ok.String(*v.Timestamp)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpDescribeAnomalyDetector struct {
+}
+
+func (*awsRestjson1_serializeOpDescribeAnomalyDetector) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpDescribeAnomalyDetector) 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.(*DescribeAnomalyDetectorInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/DescribeAnomalyDetector")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentDescribeAnomalyDetectorInput(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_serializeOpHttpBindingsDescribeAnomalyDetectorInput(v *DescribeAnomalyDetectorInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentDescribeAnomalyDetectorInput(v *DescribeAnomalyDetectorInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyDetectorArn != nil {
+ ok := object.Key("AnomalyDetectorArn")
+ ok.String(*v.AnomalyDetectorArn)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpDescribeMetricSet struct {
+}
+
+func (*awsRestjson1_serializeOpDescribeMetricSet) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpDescribeMetricSet) 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.(*DescribeMetricSetInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/DescribeMetricSet")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentDescribeMetricSetInput(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_serializeOpHttpBindingsDescribeMetricSetInput(v *DescribeMetricSetInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentDescribeMetricSetInput(v *DescribeMetricSetInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.MetricSetArn != nil {
+ ok := object.Key("MetricSetArn")
+ ok.String(*v.MetricSetArn)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpGetAnomalyGroup struct {
+}
+
+func (*awsRestjson1_serializeOpGetAnomalyGroup) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpGetAnomalyGroup) 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.(*GetAnomalyGroupInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/GetAnomalyGroup")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentGetAnomalyGroupInput(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_serializeOpHttpBindingsGetAnomalyGroupInput(v *GetAnomalyGroupInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentGetAnomalyGroupInput(v *GetAnomalyGroupInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyDetectorArn != nil {
+ ok := object.Key("AnomalyDetectorArn")
+ ok.String(*v.AnomalyDetectorArn)
+ }
+
+ if v.AnomalyGroupId != nil {
+ ok := object.Key("AnomalyGroupId")
+ ok.String(*v.AnomalyGroupId)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpGetFeedback struct {
+}
+
+func (*awsRestjson1_serializeOpGetFeedback) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpGetFeedback) 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.(*GetFeedbackInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/GetFeedback")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentGetFeedbackInput(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_serializeOpHttpBindingsGetFeedbackInput(v *GetFeedbackInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentGetFeedbackInput(v *GetFeedbackInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyDetectorArn != nil {
+ ok := object.Key("AnomalyDetectorArn")
+ ok.String(*v.AnomalyDetectorArn)
+ }
+
+ if v.AnomalyGroupTimeSeriesFeedback != nil {
+ ok := object.Key("AnomalyGroupTimeSeriesFeedback")
+ if err := awsRestjson1_serializeDocumentAnomalyGroupTimeSeries(v.AnomalyGroupTimeSeriesFeedback, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.MaxResults != 0 {
+ ok := object.Key("MaxResults")
+ ok.Integer(v.MaxResults)
+ }
+
+ if v.NextToken != nil {
+ ok := object.Key("NextToken")
+ ok.String(*v.NextToken)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpGetSampleData struct {
+}
+
+func (*awsRestjson1_serializeOpGetSampleData) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpGetSampleData) 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.(*GetSampleDataInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/GetSampleData")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentGetSampleDataInput(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_serializeOpHttpBindingsGetSampleDataInput(v *GetSampleDataInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentGetSampleDataInput(v *GetSampleDataInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.S3SourceConfig != nil {
+ ok := object.Key("S3SourceConfig")
+ if err := awsRestjson1_serializeDocumentSampleDataS3SourceConfig(v.S3SourceConfig, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpListAlerts struct {
+}
+
+func (*awsRestjson1_serializeOpListAlerts) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpListAlerts) 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.(*ListAlertsInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/ListAlerts")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentListAlertsInput(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_serializeOpHttpBindingsListAlertsInput(v *ListAlertsInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentListAlertsInput(v *ListAlertsInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyDetectorArn != nil {
+ ok := object.Key("AnomalyDetectorArn")
+ ok.String(*v.AnomalyDetectorArn)
+ }
+
+ if v.MaxResults != 0 {
+ ok := object.Key("MaxResults")
+ ok.Integer(v.MaxResults)
+ }
+
+ if v.NextToken != nil {
+ ok := object.Key("NextToken")
+ ok.String(*v.NextToken)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpListAnomalyDetectors struct {
+}
+
+func (*awsRestjson1_serializeOpListAnomalyDetectors) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpListAnomalyDetectors) 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.(*ListAnomalyDetectorsInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/ListAnomalyDetectors")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentListAnomalyDetectorsInput(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_serializeOpHttpBindingsListAnomalyDetectorsInput(v *ListAnomalyDetectorsInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentListAnomalyDetectorsInput(v *ListAnomalyDetectorsInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.MaxResults != 0 {
+ ok := object.Key("MaxResults")
+ ok.Integer(v.MaxResults)
+ }
+
+ if v.NextToken != nil {
+ ok := object.Key("NextToken")
+ ok.String(*v.NextToken)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpListAnomalyGroupSummaries struct {
+}
+
+func (*awsRestjson1_serializeOpListAnomalyGroupSummaries) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpListAnomalyGroupSummaries) 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.(*ListAnomalyGroupSummariesInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/ListAnomalyGroupSummaries")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentListAnomalyGroupSummariesInput(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_serializeOpHttpBindingsListAnomalyGroupSummariesInput(v *ListAnomalyGroupSummariesInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentListAnomalyGroupSummariesInput(v *ListAnomalyGroupSummariesInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyDetectorArn != nil {
+ ok := object.Key("AnomalyDetectorArn")
+ ok.String(*v.AnomalyDetectorArn)
+ }
+
+ if v.MaxResults != 0 {
+ ok := object.Key("MaxResults")
+ ok.Integer(v.MaxResults)
+ }
+
+ if v.NextToken != nil {
+ ok := object.Key("NextToken")
+ ok.String(*v.NextToken)
+ }
+
+ {
+ ok := object.Key("SensitivityThreshold")
+ ok.Integer(v.SensitivityThreshold)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpListAnomalyGroupTimeSeries struct {
+}
+
+func (*awsRestjson1_serializeOpListAnomalyGroupTimeSeries) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpListAnomalyGroupTimeSeries) 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.(*ListAnomalyGroupTimeSeriesInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/ListAnomalyGroupTimeSeries")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentListAnomalyGroupTimeSeriesInput(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_serializeOpHttpBindingsListAnomalyGroupTimeSeriesInput(v *ListAnomalyGroupTimeSeriesInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentListAnomalyGroupTimeSeriesInput(v *ListAnomalyGroupTimeSeriesInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyDetectorArn != nil {
+ ok := object.Key("AnomalyDetectorArn")
+ ok.String(*v.AnomalyDetectorArn)
+ }
+
+ if v.AnomalyGroupId != nil {
+ ok := object.Key("AnomalyGroupId")
+ ok.String(*v.AnomalyGroupId)
+ }
+
+ if v.MaxResults != 0 {
+ ok := object.Key("MaxResults")
+ ok.Integer(v.MaxResults)
+ }
+
+ if v.MetricName != nil {
+ ok := object.Key("MetricName")
+ ok.String(*v.MetricName)
+ }
+
+ if v.NextToken != nil {
+ ok := object.Key("NextToken")
+ ok.String(*v.NextToken)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpListMetricSets struct {
+}
+
+func (*awsRestjson1_serializeOpListMetricSets) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpListMetricSets) 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.(*ListMetricSetsInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/ListMetricSets")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentListMetricSetsInput(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_serializeOpHttpBindingsListMetricSetsInput(v *ListMetricSetsInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentListMetricSetsInput(v *ListMetricSetsInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyDetectorArn != nil {
+ ok := object.Key("AnomalyDetectorArn")
+ ok.String(*v.AnomalyDetectorArn)
+ }
+
+ if v.MaxResults != 0 {
+ ok := object.Key("MaxResults")
+ ok.Integer(v.MaxResults)
+ }
+
+ if v.NextToken != nil {
+ ok := object.Key("NextToken")
+ ok.String(*v.NextToken)
+ }
+
+ 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_serializeOpPutFeedback struct {
+}
+
+func (*awsRestjson1_serializeOpPutFeedback) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpPutFeedback) 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.(*PutFeedbackInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/PutFeedback")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentPutFeedbackInput(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_serializeOpHttpBindingsPutFeedbackInput(v *PutFeedbackInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentPutFeedbackInput(v *PutFeedbackInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyDetectorArn != nil {
+ ok := object.Key("AnomalyDetectorArn")
+ ok.String(*v.AnomalyDetectorArn)
+ }
+
+ if v.AnomalyGroupTimeSeriesFeedback != nil {
+ ok := object.Key("AnomalyGroupTimeSeriesFeedback")
+ if err := awsRestjson1_serializeDocumentAnomalyGroupTimeSeriesFeedback(v.AnomalyGroupTimeSeriesFeedback, ok); err != nil {
+ return err
+ }
+ }
+
+ 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_serializeDocumentTagMap(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
+}
+
+type awsRestjson1_serializeOpUpdateAnomalyDetector struct {
+}
+
+func (*awsRestjson1_serializeOpUpdateAnomalyDetector) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpUpdateAnomalyDetector) 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.(*UpdateAnomalyDetectorInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/UpdateAnomalyDetector")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentUpdateAnomalyDetectorInput(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_serializeOpHttpBindingsUpdateAnomalyDetectorInput(v *UpdateAnomalyDetectorInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentUpdateAnomalyDetectorInput(v *UpdateAnomalyDetectorInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyDetectorArn != nil {
+ ok := object.Key("AnomalyDetectorArn")
+ ok.String(*v.AnomalyDetectorArn)
+ }
+
+ if v.AnomalyDetectorConfig != nil {
+ ok := object.Key("AnomalyDetectorConfig")
+ if err := awsRestjson1_serializeDocumentAnomalyDetectorConfig(v.AnomalyDetectorConfig, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.AnomalyDetectorDescription != nil {
+ ok := object.Key("AnomalyDetectorDescription")
+ ok.String(*v.AnomalyDetectorDescription)
+ }
+
+ if v.KmsKeyArn != nil {
+ ok := object.Key("KmsKeyArn")
+ ok.String(*v.KmsKeyArn)
+ }
+
+ return nil
+}
+
+type awsRestjson1_serializeOpUpdateMetricSet struct {
+}
+
+func (*awsRestjson1_serializeOpUpdateMetricSet) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpUpdateMetricSet) 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.(*UpdateMetricSetInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/UpdateMetricSet")
+ 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}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentUpdateMetricSetInput(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_serializeOpHttpBindingsUpdateMetricSetInput(v *UpdateMetricSetInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentUpdateMetricSetInput(v *UpdateMetricSetInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.DimensionList != nil {
+ ok := object.Key("DimensionList")
+ if err := awsRestjson1_serializeDocumentDimensionList(v.DimensionList, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.MetricList != nil {
+ ok := object.Key("MetricList")
+ if err := awsRestjson1_serializeDocumentMetricList(v.MetricList, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.MetricSetArn != nil {
+ ok := object.Key("MetricSetArn")
+ ok.String(*v.MetricSetArn)
+ }
+
+ if v.MetricSetDescription != nil {
+ ok := object.Key("MetricSetDescription")
+ ok.String(*v.MetricSetDescription)
+ }
+
+ if len(v.MetricSetFrequency) > 0 {
+ ok := object.Key("MetricSetFrequency")
+ ok.String(string(v.MetricSetFrequency))
+ }
+
+ if v.MetricSource != nil {
+ ok := object.Key("MetricSource")
+ if err := awsRestjson1_serializeDocumentMetricSource(v.MetricSource, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.Offset != 0 {
+ ok := object.Key("Offset")
+ ok.Integer(v.Offset)
+ }
+
+ if v.TimestampColumn != nil {
+ ok := object.Key("TimestampColumn")
+ if err := awsRestjson1_serializeDocumentTimestampColumn(v.TimestampColumn, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentAction(v *types.Action, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.LambdaConfiguration != nil {
+ ok := object.Key("LambdaConfiguration")
+ if err := awsRestjson1_serializeDocumentLambdaConfiguration(v.LambdaConfiguration, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.SNSConfiguration != nil {
+ ok := object.Key("SNSConfiguration")
+ if err := awsRestjson1_serializeDocumentSNSConfiguration(v.SNSConfiguration, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentAnomalyDetectorConfig(v *types.AnomalyDetectorConfig, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if len(v.AnomalyDetectorFrequency) > 0 {
+ ok := object.Key("AnomalyDetectorFrequency")
+ ok.String(string(v.AnomalyDetectorFrequency))
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentAnomalyGroupTimeSeries(v *types.AnomalyGroupTimeSeries, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyGroupId != nil {
+ ok := object.Key("AnomalyGroupId")
+ ok.String(*v.AnomalyGroupId)
+ }
+
+ if v.TimeSeriesId != nil {
+ ok := object.Key("TimeSeriesId")
+ ok.String(*v.TimeSeriesId)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentAnomalyGroupTimeSeriesFeedback(v *types.AnomalyGroupTimeSeriesFeedback, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AnomalyGroupId != nil {
+ ok := object.Key("AnomalyGroupId")
+ ok.String(*v.AnomalyGroupId)
+ }
+
+ if v.IsAnomaly != nil {
+ ok := object.Key("IsAnomaly")
+ ok.Boolean(*v.IsAnomaly)
+ }
+
+ if v.TimeSeriesId != nil {
+ ok := object.Key("TimeSeriesId")
+ ok.String(*v.TimeSeriesId)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentAppFlowConfig(v *types.AppFlowConfig, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.FlowName != nil {
+ ok := object.Key("FlowName")
+ ok.String(*v.FlowName)
+ }
+
+ if v.RoleArn != nil {
+ ok := object.Key("RoleArn")
+ ok.String(*v.RoleArn)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentCloudWatchConfig(v *types.CloudWatchConfig, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.RoleArn != nil {
+ ok := object.Key("RoleArn")
+ ok.String(*v.RoleArn)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentCsvFormatDescriptor(v *types.CsvFormatDescriptor, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Charset != nil {
+ ok := object.Key("Charset")
+ ok.String(*v.Charset)
+ }
+
+ if v.ContainsHeader != nil {
+ ok := object.Key("ContainsHeader")
+ ok.Boolean(*v.ContainsHeader)
+ }
+
+ if v.Delimiter != nil {
+ ok := object.Key("Delimiter")
+ ok.String(*v.Delimiter)
+ }
+
+ if len(v.FileCompression) > 0 {
+ ok := object.Key("FileCompression")
+ ok.String(string(v.FileCompression))
+ }
+
+ if v.HeaderList != nil {
+ ok := object.Key("HeaderList")
+ if err := awsRestjson1_serializeDocumentHeaderList(v.HeaderList, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.QuoteSymbol != nil {
+ ok := object.Key("QuoteSymbol")
+ ok.String(*v.QuoteSymbol)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentDimensionList(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 awsRestjson1_serializeDocumentFileFormatDescriptor(v *types.FileFormatDescriptor, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.CsvFormatDescriptor != nil {
+ ok := object.Key("CsvFormatDescriptor")
+ if err := awsRestjson1_serializeDocumentCsvFormatDescriptor(v.CsvFormatDescriptor, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.JsonFormatDescriptor != nil {
+ ok := object.Key("JsonFormatDescriptor")
+ if err := awsRestjson1_serializeDocumentJsonFormatDescriptor(v.JsonFormatDescriptor, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentHeaderList(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 awsRestjson1_serializeDocumentHistoricalDataPathList(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 awsRestjson1_serializeDocumentJsonFormatDescriptor(v *types.JsonFormatDescriptor, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Charset != nil {
+ ok := object.Key("Charset")
+ ok.String(*v.Charset)
+ }
+
+ if len(v.FileCompression) > 0 {
+ ok := object.Key("FileCompression")
+ ok.String(string(v.FileCompression))
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentLambdaConfiguration(v *types.LambdaConfiguration, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.LambdaArn != nil {
+ ok := object.Key("LambdaArn")
+ ok.String(*v.LambdaArn)
+ }
+
+ if v.RoleArn != nil {
+ ok := object.Key("RoleArn")
+ ok.String(*v.RoleArn)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentMetric(v *types.Metric, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if len(v.AggregationFunction) > 0 {
+ ok := object.Key("AggregationFunction")
+ ok.String(string(v.AggregationFunction))
+ }
+
+ if v.MetricName != nil {
+ ok := object.Key("MetricName")
+ ok.String(*v.MetricName)
+ }
+
+ if v.Namespace != nil {
+ ok := object.Key("Namespace")
+ ok.String(*v.Namespace)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentMetricList(v []types.Metric, value smithyjson.Value) error {
+ array := value.Array()
+ defer array.Close()
+
+ for i := range v {
+ av := array.Value()
+ if err := awsRestjson1_serializeDocumentMetric(&v[i], av); err != nil {
+ return err
+ }
+ }
+ return nil
+}
+
+func awsRestjson1_serializeDocumentMetricSource(v *types.MetricSource, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.AppFlowConfig != nil {
+ ok := object.Key("AppFlowConfig")
+ if err := awsRestjson1_serializeDocumentAppFlowConfig(v.AppFlowConfig, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.CloudWatchConfig != nil {
+ ok := object.Key("CloudWatchConfig")
+ if err := awsRestjson1_serializeDocumentCloudWatchConfig(v.CloudWatchConfig, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.RDSSourceConfig != nil {
+ ok := object.Key("RDSSourceConfig")
+ if err := awsRestjson1_serializeDocumentRDSSourceConfig(v.RDSSourceConfig, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.RedshiftSourceConfig != nil {
+ ok := object.Key("RedshiftSourceConfig")
+ if err := awsRestjson1_serializeDocumentRedshiftSourceConfig(v.RedshiftSourceConfig, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.S3SourceConfig != nil {
+ ok := object.Key("S3SourceConfig")
+ if err := awsRestjson1_serializeDocumentS3SourceConfig(v.S3SourceConfig, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentRDSSourceConfig(v *types.RDSSourceConfig, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.DatabaseHost != nil {
+ ok := object.Key("DatabaseHost")
+ ok.String(*v.DatabaseHost)
+ }
+
+ if v.DatabaseName != nil {
+ ok := object.Key("DatabaseName")
+ ok.String(*v.DatabaseName)
+ }
+
+ {
+ ok := object.Key("DatabasePort")
+ ok.Integer(v.DatabasePort)
+ }
+
+ if v.DBInstanceIdentifier != nil {
+ ok := object.Key("DBInstanceIdentifier")
+ ok.String(*v.DBInstanceIdentifier)
+ }
+
+ if v.RoleArn != nil {
+ ok := object.Key("RoleArn")
+ ok.String(*v.RoleArn)
+ }
+
+ if v.SecretManagerArn != nil {
+ ok := object.Key("SecretManagerArn")
+ ok.String(*v.SecretManagerArn)
+ }
+
+ if v.TableName != nil {
+ ok := object.Key("TableName")
+ ok.String(*v.TableName)
+ }
+
+ if v.VpcConfiguration != nil {
+ ok := object.Key("VpcConfiguration")
+ if err := awsRestjson1_serializeDocumentVpcConfiguration(v.VpcConfiguration, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentRedshiftSourceConfig(v *types.RedshiftSourceConfig, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.ClusterIdentifier != nil {
+ ok := object.Key("ClusterIdentifier")
+ ok.String(*v.ClusterIdentifier)
+ }
+
+ if v.DatabaseHost != nil {
+ ok := object.Key("DatabaseHost")
+ ok.String(*v.DatabaseHost)
+ }
+
+ if v.DatabaseName != nil {
+ ok := object.Key("DatabaseName")
+ ok.String(*v.DatabaseName)
+ }
+
+ {
+ ok := object.Key("DatabasePort")
+ ok.Integer(v.DatabasePort)
+ }
+
+ if v.RoleArn != nil {
+ ok := object.Key("RoleArn")
+ ok.String(*v.RoleArn)
+ }
+
+ if v.SecretManagerArn != nil {
+ ok := object.Key("SecretManagerArn")
+ ok.String(*v.SecretManagerArn)
+ }
+
+ if v.TableName != nil {
+ ok := object.Key("TableName")
+ ok.String(*v.TableName)
+ }
+
+ if v.VpcConfiguration != nil {
+ ok := object.Key("VpcConfiguration")
+ if err := awsRestjson1_serializeDocumentVpcConfiguration(v.VpcConfiguration, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentS3SourceConfig(v *types.S3SourceConfig, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.FileFormatDescriptor != nil {
+ ok := object.Key("FileFormatDescriptor")
+ if err := awsRestjson1_serializeDocumentFileFormatDescriptor(v.FileFormatDescriptor, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.HistoricalDataPathList != nil {
+ ok := object.Key("HistoricalDataPathList")
+ if err := awsRestjson1_serializeDocumentHistoricalDataPathList(v.HistoricalDataPathList, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.RoleArn != nil {
+ ok := object.Key("RoleArn")
+ ok.String(*v.RoleArn)
+ }
+
+ if v.TemplatedPathList != nil {
+ ok := object.Key("TemplatedPathList")
+ if err := awsRestjson1_serializeDocumentTemplatedPathList(v.TemplatedPathList, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentSampleDataS3SourceConfig(v *types.SampleDataS3SourceConfig, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.FileFormatDescriptor != nil {
+ ok := object.Key("FileFormatDescriptor")
+ if err := awsRestjson1_serializeDocumentFileFormatDescriptor(v.FileFormatDescriptor, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.HistoricalDataPathList != nil {
+ ok := object.Key("HistoricalDataPathList")
+ if err := awsRestjson1_serializeDocumentHistoricalDataPathList(v.HistoricalDataPathList, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.RoleArn != nil {
+ ok := object.Key("RoleArn")
+ ok.String(*v.RoleArn)
+ }
+
+ if v.TemplatedPathList != nil {
+ ok := object.Key("TemplatedPathList")
+ if err := awsRestjson1_serializeDocumentTemplatedPathList(v.TemplatedPathList, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentSecurityGroupIdList(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 awsRestjson1_serializeDocumentSNSConfiguration(v *types.SNSConfiguration, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.RoleArn != nil {
+ ok := object.Key("RoleArn")
+ ok.String(*v.RoleArn)
+ }
+
+ if v.SnsTopicArn != nil {
+ ok := object.Key("SnsTopicArn")
+ ok.String(*v.SnsTopicArn)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentSubnetIdList(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 awsRestjson1_serializeDocumentTagMap(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_serializeDocumentTemplatedPathList(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 awsRestjson1_serializeDocumentTimestampColumn(v *types.TimestampColumn, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.ColumnFormat != nil {
+ ok := object.Key("ColumnFormat")
+ ok.String(*v.ColumnFormat)
+ }
+
+ if v.ColumnName != nil {
+ ok := object.Key("ColumnName")
+ ok.String(*v.ColumnName)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeDocumentVpcConfiguration(v *types.VpcConfiguration, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.SecurityGroupIdList != nil {
+ ok := object.Key("SecurityGroupIdList")
+ if err := awsRestjson1_serializeDocumentSecurityGroupIdList(v.SecurityGroupIdList, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.SubnetIdList != nil {
+ ok := object.Key("SubnetIdList")
+ if err := awsRestjson1_serializeDocumentSubnetIdList(v.SubnetIdList, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
diff --git a/service/lookoutmetrics/types/enums.go b/service/lookoutmetrics/types/enums.go
new file mode 100644
index 00000000000..546e7b5dd05
--- /dev/null
+++ b/service/lookoutmetrics/types/enums.go
@@ -0,0 +1,191 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package types
+
+type AggregationFunction string
+
+// Enum values for AggregationFunction
+const (
+ AggregationFunctionAvg AggregationFunction = "AVG"
+ AggregationFunctionSum AggregationFunction = "SUM"
+)
+
+// Values returns all known values for AggregationFunction. 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 (AggregationFunction) Values() []AggregationFunction {
+ return []AggregationFunction{
+ "AVG",
+ "SUM",
+ }
+}
+
+type AlertStatus string
+
+// Enum values for AlertStatus
+const (
+ AlertStatusActive AlertStatus = "ACTIVE"
+ AlertStatusInactive AlertStatus = "INACTIVE"
+)
+
+// Values returns all known values for AlertStatus. 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 (AlertStatus) Values() []AlertStatus {
+ return []AlertStatus{
+ "ACTIVE",
+ "INACTIVE",
+ }
+}
+
+type AlertType string
+
+// Enum values for AlertType
+const (
+ AlertTypeSns AlertType = "SNS"
+ AlertTypeLambda AlertType = "LAMBDA"
+)
+
+// Values returns all known values for AlertType. 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 (AlertType) Values() []AlertType {
+ return []AlertType{
+ "SNS",
+ "LAMBDA",
+ }
+}
+
+type AnomalyDetectionTaskStatus string
+
+// Enum values for AnomalyDetectionTaskStatus
+const (
+ AnomalyDetectionTaskStatusPending AnomalyDetectionTaskStatus = "PENDING"
+ AnomalyDetectionTaskStatusInProgress AnomalyDetectionTaskStatus = "IN_PROGRESS"
+ AnomalyDetectionTaskStatusCompleted AnomalyDetectionTaskStatus = "COMPLETED"
+ AnomalyDetectionTaskStatusFailed AnomalyDetectionTaskStatus = "FAILED"
+ AnomalyDetectionTaskStatusFailedToSchedule AnomalyDetectionTaskStatus = "FAILED_TO_SCHEDULE"
+)
+
+// Values returns all known values for AnomalyDetectionTaskStatus. 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 (AnomalyDetectionTaskStatus) Values() []AnomalyDetectionTaskStatus {
+ return []AnomalyDetectionTaskStatus{
+ "PENDING",
+ "IN_PROGRESS",
+ "COMPLETED",
+ "FAILED",
+ "FAILED_TO_SCHEDULE",
+ }
+}
+
+type AnomalyDetectorStatus string
+
+// Enum values for AnomalyDetectorStatus
+const (
+ AnomalyDetectorStatusActive AnomalyDetectorStatus = "ACTIVE"
+ AnomalyDetectorStatusActivating AnomalyDetectorStatus = "ACTIVATING"
+ AnomalyDetectorStatusDeleting AnomalyDetectorStatus = "DELETING"
+ AnomalyDetectorStatusFailed AnomalyDetectorStatus = "FAILED"
+ AnomalyDetectorStatusInactive AnomalyDetectorStatus = "INACTIVE"
+ AnomalyDetectorStatusBackTestActivating AnomalyDetectorStatus = "BACK_TEST_ACTIVATING"
+ AnomalyDetectorStatusBackTestActive AnomalyDetectorStatus = "BACK_TEST_ACTIVE"
+ AnomalyDetectorStatusBackTestComplete AnomalyDetectorStatus = "BACK_TEST_COMPLETE"
+)
+
+// Values returns all known values for AnomalyDetectorStatus. 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 (AnomalyDetectorStatus) Values() []AnomalyDetectorStatus {
+ return []AnomalyDetectorStatus{
+ "ACTIVE",
+ "ACTIVATING",
+ "DELETING",
+ "FAILED",
+ "INACTIVE",
+ "BACK_TEST_ACTIVATING",
+ "BACK_TEST_ACTIVE",
+ "BACK_TEST_COMPLETE",
+ }
+}
+
+type CSVFileCompression string
+
+// Enum values for CSVFileCompression
+const (
+ CSVFileCompressionNone CSVFileCompression = "NONE"
+ CSVFileCompressionGzip CSVFileCompression = "GZIP"
+)
+
+// Values returns all known values for CSVFileCompression. 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 (CSVFileCompression) Values() []CSVFileCompression {
+ return []CSVFileCompression{
+ "NONE",
+ "GZIP",
+ }
+}
+
+type Frequency string
+
+// Enum values for Frequency
+const (
+ FrequencyP1d Frequency = "P1D"
+ FrequencyPt1h Frequency = "PT1H"
+ FrequencyPt10m Frequency = "PT10M"
+ FrequencyPt5m Frequency = "PT5M"
+)
+
+// Values returns all known values for Frequency. 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 (Frequency) Values() []Frequency {
+ return []Frequency{
+ "P1D",
+ "PT1H",
+ "PT10M",
+ "PT5M",
+ }
+}
+
+type JsonFileCompression string
+
+// Enum values for JsonFileCompression
+const (
+ JsonFileCompressionNone JsonFileCompression = "NONE"
+ JsonFileCompressionGzip JsonFileCompression = "GZIP"
+)
+
+// Values returns all known values for JsonFileCompression. 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 (JsonFileCompression) Values() []JsonFileCompression {
+ return []JsonFileCompression{
+ "NONE",
+ "GZIP",
+ }
+}
+
+type ValidationExceptionReason string
+
+// Enum values for ValidationExceptionReason
+const (
+ ValidationExceptionReasonUnknownOperation ValidationExceptionReason = "UNKNOWN_OPERATION"
+ ValidationExceptionReasonCannotParse ValidationExceptionReason = "CANNOT_PARSE"
+ ValidationExceptionReasonFieldValidationFailed ValidationExceptionReason = "FIELD_VALIDATION_FAILED"
+ ValidationExceptionReasonOther ValidationExceptionReason = "OTHER"
+)
+
+// Values returns all known values for ValidationExceptionReason. 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 (ValidationExceptionReason) Values() []ValidationExceptionReason {
+ return []ValidationExceptionReason{
+ "UNKNOWN_OPERATION",
+ "CANNOT_PARSE",
+ "FIELD_VALIDATION_FAILED",
+ "OTHER",
+ }
+}
diff --git a/service/lookoutmetrics/types/errors.go b/service/lookoutmetrics/types/errors.go
new file mode 100644
index 00000000000..6f5ddd16901
--- /dev/null
+++ b/service/lookoutmetrics/types/errors.go
@@ -0,0 +1,146 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package types
+
+import (
+ "fmt"
+ smithy "github.com/aws/smithy-go"
+)
+
+// You do not have sufficient permissions to perform this action.
+type AccessDeniedException struct {
+ Message *string
+}
+
+func (e *AccessDeniedException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *AccessDeniedException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *AccessDeniedException) ErrorCode() string { return "AccessDeniedException" }
+func (e *AccessDeniedException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+
+// There was a conflict processing the request. Try your request again.
+type ConflictException struct {
+ Message *string
+
+ ResourceId *string
+ ResourceType *string
+}
+
+func (e *ConflictException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *ConflictException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *ConflictException) ErrorCode() string { return "ConflictException" }
+func (e *ConflictException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+
+// The request processing has failed because of an unknown error, exception, or
+// failure.
+type InternalServerException struct {
+ Message *string
+}
+
+func (e *InternalServerException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *InternalServerException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *InternalServerException) ErrorCode() string { return "InternalServerException" }
+func (e *InternalServerException) ErrorFault() smithy.ErrorFault { return smithy.FaultServer }
+
+// The specified resource cannot be found. Check the ARN of the resource and try
+// again.
+type ResourceNotFoundException struct {
+ Message *string
+
+ ResourceId *string
+ ResourceType *string
+}
+
+func (e *ResourceNotFoundException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *ResourceNotFoundException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *ResourceNotFoundException) ErrorCode() string { return "ResourceNotFoundException" }
+func (e *ResourceNotFoundException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+
+// The request exceeded the service's quotas. Check the service quotas and try
+// again.
+type ServiceQuotaExceededException struct {
+ Message *string
+
+ ResourceId *string
+ ResourceType *string
+ QuotaCode *string
+ ServiceCode *string
+}
+
+func (e *ServiceQuotaExceededException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *ServiceQuotaExceededException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *ServiceQuotaExceededException) ErrorCode() string { return "ServiceQuotaExceededException" }
+func (e *ServiceQuotaExceededException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+
+// The request was denied due to too many requests being submitted at the same
+// time.
+type TooManyRequestsException struct {
+ Message *string
+}
+
+func (e *TooManyRequestsException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *TooManyRequestsException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *TooManyRequestsException) ErrorCode() string { return "TooManyRequestsException" }
+func (e *TooManyRequestsException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+
+// The input fails to satisfy the constraints specified by the AWS service. Check
+// your input values and try again.
+type ValidationException struct {
+ Message *string
+
+ Reason ValidationExceptionReason
+ Fields []ValidationExceptionField
+}
+
+func (e *ValidationException) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *ValidationException) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *ValidationException) ErrorCode() string { return "ValidationException" }
+func (e *ValidationException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
diff --git a/service/lookoutmetrics/types/types.go b/service/lookoutmetrics/types/types.go
new file mode 100644
index 00000000000..63c52fd50ec
--- /dev/null
+++ b/service/lookoutmetrics/types/types.go
@@ -0,0 +1,647 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package types
+
+import (
+ "time"
+)
+
+// A configuration that specifies the action to perform when anomalies are
+// detected.
+type Action struct {
+
+ // A configuration for an AWS Lambda channel.
+ LambdaConfiguration *LambdaConfiguration
+
+ // A configuration for an Amazon SNS channel.
+ SNSConfiguration *SNSConfiguration
+}
+
+// A configuration for Amazon SNS-integrated notifications.
+type Alert struct {
+
+ // Action that will be triggered when there is an alert.
+ Action *Action
+
+ // The ARN of the alert.
+ AlertArn *string
+
+ // A description of the alert.
+ AlertDescription *string
+
+ // The name of the alert.
+ AlertName *string
+
+ // The minimum severity for an anomaly to trigger the alert.
+ AlertSensitivityThreshold int32
+
+ // The status of the alert.
+ AlertStatus AlertStatus
+
+ // The type of the alert.
+ AlertType AlertType
+
+ // The ARN of the detector to which the alert is attached.
+ AnomalyDetectorArn *string
+
+ // The time at which the alert was created.
+ CreationTime *time.Time
+
+ // The time at which the alert was last modified.
+ LastModificationTime *time.Time
+}
+
+// Provides a summary of an alert's configuration.
+type AlertSummary struct {
+
+ // The ARN of the alert.
+ AlertArn *string
+
+ // The name of the alert.
+ AlertName *string
+
+ // The minimum severity for an anomaly to trigger the alert.
+ AlertSensitivityThreshold int32
+
+ // The status of the alert.
+ AlertStatus AlertStatus
+
+ // The type of the alert.
+ AlertType AlertType
+
+ // The ARN of the detector to which the alert is attached.
+ AnomalyDetectorArn *string
+
+ // The time at which the alert was created.
+ CreationTime *time.Time
+
+ // The time at which the alert was last modified.
+ LastModificationTime *time.Time
+
+ // The alert's tags
+ // (https://docs.aws.amazon.com/lookoutmetrics/latest/dev/detectors-tags.html).
+ Tags map[string]string
+}
+
+// Contains information about a detector's configuration.
+type AnomalyDetectorConfig struct {
+
+ // The frequency at which the detector analyzes its source data.
+ AnomalyDetectorFrequency Frequency
+}
+
+// Contains information about a detector's configuration.
+type AnomalyDetectorConfigSummary struct {
+
+ // The interval at which the detector analyzes its source data.
+ AnomalyDetectorFrequency Frequency
+}
+
+// Contains information about an an anomaly detector.
+type AnomalyDetectorSummary struct {
+
+ // The ARN of the detector.
+ AnomalyDetectorArn *string
+
+ // A description of the detector.
+ AnomalyDetectorDescription *string
+
+ // The name of the detector.
+ AnomalyDetectorName *string
+
+ // The time at which the detector was created.
+ CreationTime *time.Time
+
+ // The time at which the detector was last modified.
+ LastModificationTime *time.Time
+
+ // The status of detector.
+ Status AnomalyDetectorStatus
+
+ // The detector's tags
+ // (https://docs.aws.amazon.com/lookoutmetrics/latest/dev/detectors-tags.html).
+ Tags map[string]string
+}
+
+// A group of anomalous metrics
+type AnomalyGroup struct {
+
+ // The ID of the anomaly group.
+ AnomalyGroupId *string
+
+ // The severity score of the group.
+ AnomalyGroupScore *float64
+
+ // The end time for the group.
+ EndTime *string
+
+ // A list of measures affected by the anomaly.
+ MetricLevelImpactList []MetricLevelImpact
+
+ // The name of the primary affected measure for the group.
+ PrimaryMetricName *string
+
+ // The start time for the group.
+ StartTime *string
+}
+
+// Aggregated statistics for a group of anomalous metrics.
+type AnomalyGroupStatistics struct {
+
+ // The start of the time range that was searched.
+ EvaluationStartDate *string
+
+ // Statistics for individual metrics within the group.
+ ItemizedMetricStatsList []ItemizedMetricStats
+
+ // The number of groups found.
+ TotalCount int32
+}
+
+// Details about a group of anomalous metrics.
+type AnomalyGroupSummary struct {
+
+ // The ID of the anomaly group.
+ AnomalyGroupId *string
+
+ // The severity score of the group.
+ AnomalyGroupScore *float64
+
+ // The end time for the group.
+ EndTime *string
+
+ // The name of the primary affected measure for the group.
+ PrimaryMetricName *string
+
+ // The start time for the group.
+ StartTime *string
+}
+
+// An anomalous metric in an anomaly group.
+type AnomalyGroupTimeSeries struct {
+
+ // The ID of the anomaly group.
+ //
+ // This member is required.
+ AnomalyGroupId *string
+
+ // The ID of the metric.
+ TimeSeriesId *string
+}
+
+// Feedback for an anomalous metric.
+type AnomalyGroupTimeSeriesFeedback struct {
+
+ // The ID of the anomaly group.
+ //
+ // This member is required.
+ AnomalyGroupId *string
+
+ // Feedback on whether the metric is a legitimate anomaly.
+ //
+ // This member is required.
+ IsAnomaly *bool
+
+ // The ID of the metric.
+ //
+ // This member is required.
+ TimeSeriesId *string
+}
+
+// Details about an Amazon AppFlow flow datasource.
+type AppFlowConfig struct {
+
+ // The 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
+}
+
+// Details about an Amazon CloudWatch datasource.
+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
+}
+
+// Details about dimensions that contributed to an anomaly.
+type ContributionMatrix struct {
+
+ // A list of contributing dimensions.
+ DimensionContributionList []DimensionContribution
+}
+
+// Contains information about how a source CSV data file should be analyzed.
+type CsvFormatDescriptor struct {
+
+ // The character set in which the source CSV file is written.
+ Charset *string
+
+ // Whether or not the source CSV file contains a header.
+ ContainsHeader *bool
+
+ // The character used to delimit the source CSV file.
+ Delimiter *string
+
+ // The level of compression of the source CSV file.
+ FileCompression CSVFileCompression
+
+ // A list of the source CSV file's headers, if any.
+ HeaderList []string
+
+ // The character used as a quote character.
+ QuoteSymbol *string
+}
+
+// Details about a dimension that contributed to an anomaly.
+type DimensionContribution struct {
+
+ // The name of the dimension.
+ DimensionName *string
+
+ // A list of dimension values that contributed to the anomaly.
+ DimensionValueContributionList []DimensionValueContribution
+}
+
+// A dimension name and value.
+type DimensionNameValue struct {
+
+ // The name of the dimension.
+ //
+ // This member is required.
+ DimensionName *string
+
+ // The value of the dimension.
+ //
+ // This member is required.
+ DimensionValue *string
+}
+
+// The severity of a value of a dimension that contributed to an anomaly.
+type DimensionValueContribution struct {
+
+ // The severity score of the value.
+ ContributionScore *float64
+
+ // The value of the dimension.
+ DimensionValue *string
+}
+
+// The status of an anomaly detector run.
+type ExecutionStatus struct {
+
+ // The reason that the run failed, if applicable.
+ FailureReason *string
+
+ // The run's status.
+ Status AnomalyDetectionTaskStatus
+
+ // The run's timestamp.
+ Timestamp *string
+}
+
+// Contains information about a source file's formatting.
+type FileFormatDescriptor struct {
+
+ // Contains information about how a source CSV data file should be analyzed.
+ CsvFormatDescriptor *CsvFormatDescriptor
+
+ // Contains information about how a source JSON data file should be analyzed.
+ JsonFormatDescriptor *JsonFormatDescriptor
+}
+
+// Aggregated statistics about a measure affected by an anomaly.
+type ItemizedMetricStats struct {
+
+ // The name of the measure.
+ MetricName *string
+
+ // The number of times that the measure appears.
+ OccurrenceCount int32
+}
+
+// Contains information about how a source JSON data file should be analyzed.
+type JsonFormatDescriptor struct {
+
+ // The character set in which the source JSON file is written.
+ Charset *string
+
+ // The level of compression of the source CSV file.
+ FileCompression JsonFileCompression
+}
+
+// Contains information about a Lambda configuration.
+type LambdaConfiguration struct {
+
+ // The ARN of the Lambda function.
+ //
+ // This member is required.
+ LambdaArn *string
+
+ // The ARN of an IAM role that has permission to invoke the Lambda function.
+ //
+ // This member is required.
+ RoleArn *string
+}
+
+// A calculation made by contrasting a measure and a dimension from your source
+// data.
+type Metric struct {
+
+ // The function with which the metric is calculated.
+ //
+ // This member is required.
+ AggregationFunction AggregationFunction
+
+ // The name of the metric.
+ //
+ // This member is required.
+ MetricName *string
+
+ // The namespace for the metric.
+ Namespace *string
+}
+
+// Details about a measure affected by an anomaly.
+type MetricLevelImpact struct {
+
+ // Details about the dimensions that contributed to the anomaly.
+ ContributionMatrix *ContributionMatrix
+
+ // The name of the measure.
+ MetricName *string
+
+ // The number of anomalous metrics for the measure.
+ NumTimeSeries int32
+}
+
+// Contains information about a dataset.
+type MetricSetSummary struct {
+
+ // The ARN of the detector to which the dataset belongs.
+ AnomalyDetectorArn *string
+
+ // The time at which the dataset was created.
+ CreationTime *time.Time
+
+ // The time at which the dataset was last modified.
+ LastModificationTime *time.Time
+
+ // The ARN of the dataset.
+ MetricSetArn *string
+
+ // The description of the dataset.
+ MetricSetDescription *string
+
+ // The name of the dataset.
+ MetricSetName *string
+
+ // The dataset's tags
+ // (https://docs.aws.amazon.com/lookoutmetrics/latest/dev/detectors-tags.html).
+ Tags map[string]string
+}
+
+// Contains information about source data used to generate a metric.
+type MetricSource struct {
+
+ // An object containing information about the AppFlow configuration.
+ AppFlowConfig *AppFlowConfig
+
+ // An object containing information about the Amazon CloudWatch monitoring
+ // configuration.
+ CloudWatchConfig *CloudWatchConfig
+
+ // An object containing information about the Amazon Relational Database Service
+ // (RDS) configuration.
+ RDSSourceConfig *RDSSourceConfig
+
+ // An object containing information about the Amazon Redshift database
+ // configuration.
+ RedshiftSourceConfig *RedshiftSourceConfig
+
+ // Contains information about the configuration of the S3 bucket that contains
+ // source files.
+ S3SourceConfig *S3SourceConfig
+}
+
+// Contains information about the Amazon Relational Database Service (RDS)
+// configuration.
+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
+}
+
+// Provides information about the Amazon Redshift database configuration.
+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
+}
+
+// Contains information about the configuration of the S3 bucket that contains
+// 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
+
+ // A list of templated paths to the source files.
+ TemplatedPathList []string
+}
+
+// Contains information about the source configuration in Amazon S3.
+type SampleDataS3SourceConfig struct {
+
+ // Contains information about a source file's formatting.
+ //
+ // This member is required.
+ FileFormatDescriptor *FileFormatDescriptor
+
+ // The Amazon Resource Name (ARN) of the role.
+ //
+ // This member is required.
+ RoleArn *string
+
+ // An array of strings containing the historical set of data paths.
+ HistoricalDataPathList []string
+
+ // An array of strings containing the list of templated paths.
+ TemplatedPathList []string
+}
+
+// Contains information about the SNS topic to which you want to send your alerts
+// and the IAM role that has access to that topic.
+type SNSConfiguration struct {
+
+ // THe ARN of the IAM role that has access to the target SNS topic.
+ //
+ // This member is required.
+ RoleArn *string
+
+ // The ARN of the target SNS topic.
+ //
+ // This member is required.
+ SnsTopicArn *string
+}
+
+// Details about a metric. A metric is an aggregation of the values of a measure
+// for a dimension value, such as availability in the us-east-1 Region.
+type TimeSeries struct {
+
+ // The dimensions of the metric.
+ //
+ // This member is required.
+ DimensionList []DimensionNameValue
+
+ // The values for the metric.
+ //
+ // This member is required.
+ MetricValueList []float64
+
+ // The ID of the metric.
+ //
+ // This member is required.
+ TimeSeriesId *string
+}
+
+// Details about feedback submitted for an anomalous metric.
+type TimeSeriesFeedback struct {
+
+ // Feedback on whether the metric is a legitimate anomaly.
+ IsAnomaly *bool
+
+ // The ID of the metric.
+ TimeSeriesId *string
+}
+
+// Contains information about the column used to track time in a source data file.
+type TimestampColumn struct {
+
+ // The format of the timestamp column.
+ ColumnFormat *string
+
+ // The name of the timestamp column.
+ ColumnName *string
+}
+
+// Contains information about a a field in a validation exception.
+type ValidationExceptionField struct {
+
+ // The message with more information about the validation exception.
+ //
+ // This member is required.
+ Message *string
+
+ // The name of the field.
+ //
+ // This member is required.
+ Name *string
+}
+
+// Contains configuration information about the Amazon Virtual Private Cloud (VPC).
+type VpcConfiguration struct {
+
+ // An array of strings containing the list of security groups.
+ //
+ // This member is required.
+ SecurityGroupIdList []string
+
+ // An array of strings containing the Amazon VPC subnet IDs (e.g.,
+ // subnet-0bb1c79de3EXAMPLE.
+ //
+ // This member is required.
+ SubnetIdList []string
+}
diff --git a/service/lookoutmetrics/validators.go b/service/lookoutmetrics/validators.go
new file mode 100644
index 00000000000..035806cab4a
--- /dev/null
+++ b/service/lookoutmetrics/validators.go
@@ -0,0 +1,1264 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package lookoutmetrics
+
+import (
+ "context"
+ "fmt"
+ "github.com/aws/aws-sdk-go-v2/service/lookoutmetrics/types"
+ smithy "github.com/aws/smithy-go"
+ "github.com/aws/smithy-go/middleware"
+)
+
+type validateOpActivateAnomalyDetector struct {
+}
+
+func (*validateOpActivateAnomalyDetector) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpActivateAnomalyDetector) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*ActivateAnomalyDetectorInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpActivateAnomalyDetectorInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpBackTestAnomalyDetector struct {
+}
+
+func (*validateOpBackTestAnomalyDetector) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpBackTestAnomalyDetector) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*BackTestAnomalyDetectorInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpBackTestAnomalyDetectorInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpCreateAlert struct {
+}
+
+func (*validateOpCreateAlert) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpCreateAlert) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*CreateAlertInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpCreateAlertInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpCreateAnomalyDetector struct {
+}
+
+func (*validateOpCreateAnomalyDetector) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpCreateAnomalyDetector) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*CreateAnomalyDetectorInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpCreateAnomalyDetectorInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpCreateMetricSet struct {
+}
+
+func (*validateOpCreateMetricSet) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpCreateMetricSet) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*CreateMetricSetInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpCreateMetricSetInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpDeleteAlert struct {
+}
+
+func (*validateOpDeleteAlert) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDeleteAlert) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DeleteAlertInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDeleteAlertInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpDeleteAnomalyDetector struct {
+}
+
+func (*validateOpDeleteAnomalyDetector) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDeleteAnomalyDetector) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DeleteAnomalyDetectorInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDeleteAnomalyDetectorInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpDescribeAlert struct {
+}
+
+func (*validateOpDescribeAlert) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDescribeAlert) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DescribeAlertInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDescribeAlertInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpDescribeAnomalyDetectionExecutions struct {
+}
+
+func (*validateOpDescribeAnomalyDetectionExecutions) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDescribeAnomalyDetectionExecutions) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DescribeAnomalyDetectionExecutionsInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDescribeAnomalyDetectionExecutionsInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpDescribeAnomalyDetector struct {
+}
+
+func (*validateOpDescribeAnomalyDetector) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDescribeAnomalyDetector) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DescribeAnomalyDetectorInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDescribeAnomalyDetectorInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpDescribeMetricSet struct {
+}
+
+func (*validateOpDescribeMetricSet) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDescribeMetricSet) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DescribeMetricSetInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDescribeMetricSetInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpGetAnomalyGroup struct {
+}
+
+func (*validateOpGetAnomalyGroup) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpGetAnomalyGroup) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*GetAnomalyGroupInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpGetAnomalyGroupInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpGetFeedback struct {
+}
+
+func (*validateOpGetFeedback) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpGetFeedback) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*GetFeedbackInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpGetFeedbackInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpGetSampleData struct {
+}
+
+func (*validateOpGetSampleData) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpGetSampleData) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*GetSampleDataInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpGetSampleDataInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpListAnomalyGroupSummaries struct {
+}
+
+func (*validateOpListAnomalyGroupSummaries) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpListAnomalyGroupSummaries) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*ListAnomalyGroupSummariesInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpListAnomalyGroupSummariesInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpListAnomalyGroupTimeSeries struct {
+}
+
+func (*validateOpListAnomalyGroupTimeSeries) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpListAnomalyGroupTimeSeries) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*ListAnomalyGroupTimeSeriesInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpListAnomalyGroupTimeSeriesInput(input); err != nil {
+ return out, metadata, err
+ }
+ 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 validateOpPutFeedback struct {
+}
+
+func (*validateOpPutFeedback) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpPutFeedback) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*PutFeedbackInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpPutFeedbackInput(input); err != nil {
+ return out, metadata, err
+ }
+ 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)
+}
+
+type validateOpUpdateAnomalyDetector struct {
+}
+
+func (*validateOpUpdateAnomalyDetector) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpUpdateAnomalyDetector) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*UpdateAnomalyDetectorInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpUpdateAnomalyDetectorInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+type validateOpUpdateMetricSet struct {
+}
+
+func (*validateOpUpdateMetricSet) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpUpdateMetricSet) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*UpdateMetricSetInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpUpdateMetricSetInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
+func addOpActivateAnomalyDetectorValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpActivateAnomalyDetector{}, middleware.After)
+}
+
+func addOpBackTestAnomalyDetectorValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpBackTestAnomalyDetector{}, middleware.After)
+}
+
+func addOpCreateAlertValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpCreateAlert{}, middleware.After)
+}
+
+func addOpCreateAnomalyDetectorValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpCreateAnomalyDetector{}, middleware.After)
+}
+
+func addOpCreateMetricSetValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpCreateMetricSet{}, middleware.After)
+}
+
+func addOpDeleteAlertValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDeleteAlert{}, middleware.After)
+}
+
+func addOpDeleteAnomalyDetectorValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDeleteAnomalyDetector{}, middleware.After)
+}
+
+func addOpDescribeAlertValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDescribeAlert{}, middleware.After)
+}
+
+func addOpDescribeAnomalyDetectionExecutionsValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDescribeAnomalyDetectionExecutions{}, middleware.After)
+}
+
+func addOpDescribeAnomalyDetectorValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDescribeAnomalyDetector{}, middleware.After)
+}
+
+func addOpDescribeMetricSetValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDescribeMetricSet{}, middleware.After)
+}
+
+func addOpGetAnomalyGroupValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpGetAnomalyGroup{}, middleware.After)
+}
+
+func addOpGetFeedbackValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpGetFeedback{}, middleware.After)
+}
+
+func addOpGetSampleDataValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpGetSampleData{}, middleware.After)
+}
+
+func addOpListAnomalyGroupSummariesValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpListAnomalyGroupSummaries{}, middleware.After)
+}
+
+func addOpListAnomalyGroupTimeSeriesValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpListAnomalyGroupTimeSeries{}, middleware.After)
+}
+
+func addOpListTagsForResourceValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpListTagsForResource{}, middleware.After)
+}
+
+func addOpPutFeedbackValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpPutFeedback{}, 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 addOpUpdateAnomalyDetectorValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpUpdateAnomalyDetector{}, middleware.After)
+}
+
+func addOpUpdateMetricSetValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpUpdateMetricSet{}, middleware.After)
+}
+
+func validateAction(v *types.Action) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "Action"}
+ if v.SNSConfiguration != nil {
+ if err := validateSNSConfiguration(v.SNSConfiguration); err != nil {
+ invalidParams.AddNested("SNSConfiguration", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.LambdaConfiguration != nil {
+ if err := validateLambdaConfiguration(v.LambdaConfiguration); err != nil {
+ invalidParams.AddNested("LambdaConfiguration", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateAnomalyGroupTimeSeries(v *types.AnomalyGroupTimeSeries) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "AnomalyGroupTimeSeries"}
+ if v.AnomalyGroupId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyGroupId"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateAnomalyGroupTimeSeriesFeedback(v *types.AnomalyGroupTimeSeriesFeedback) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "AnomalyGroupTimeSeriesFeedback"}
+ if v.AnomalyGroupId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyGroupId"))
+ }
+ if v.TimeSeriesId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("TimeSeriesId"))
+ }
+ if v.IsAnomaly == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("IsAnomaly"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+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
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "LambdaConfiguration"}
+ if v.RoleArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("RoleArn"))
+ }
+ if v.LambdaArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("LambdaArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateMetric(v *types.Metric) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "Metric"}
+ if v.MetricName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MetricName"))
+ }
+ if len(v.AggregationFunction) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("AggregationFunction"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateMetricList(v []types.Metric) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "MetricList"}
+ for i := range v {
+ if err := validateMetric(&v[i]); err != nil {
+ invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateMetricSource(v *types.MetricSource) error {
+ if v == nil {
+ 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))
+ }
+ }
+ if v.RedshiftSourceConfig != nil {
+ if err := validateRedshiftSourceConfig(v.RedshiftSourceConfig); err != nil {
+ invalidParams.AddNested("RedshiftSourceConfig", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateRDSSourceConfig(v *types.RDSSourceConfig) error {
+ if v == nil {
+ 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 err := validateVpcConfiguration(v.VpcConfiguration); err != nil {
+ invalidParams.AddNested("VpcConfiguration", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateRedshiftSourceConfig(v *types.RedshiftSourceConfig) error {
+ if v == nil {
+ 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 err := validateVpcConfiguration(v.VpcConfiguration); err != nil {
+ invalidParams.AddNested("VpcConfiguration", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+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
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "SampleDataS3SourceConfig"}
+ if v.RoleArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("RoleArn"))
+ }
+ if v.FileFormatDescriptor == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("FileFormatDescriptor"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateSNSConfiguration(v *types.SNSConfiguration) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "SNSConfiguration"}
+ if v.RoleArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("RoleArn"))
+ }
+ if v.SnsTopicArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("SnsTopicArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateVpcConfiguration(v *types.VpcConfiguration) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "VpcConfiguration"}
+ if v.SubnetIdList == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("SubnetIdList"))
+ }
+ if v.SecurityGroupIdList == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("SecurityGroupIdList"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpActivateAnomalyDetectorInput(v *ActivateAnomalyDetectorInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "ActivateAnomalyDetectorInput"}
+ if v.AnomalyDetectorArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpBackTestAnomalyDetectorInput(v *BackTestAnomalyDetectorInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "BackTestAnomalyDetectorInput"}
+ if v.AnomalyDetectorArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpCreateAlertInput(v *CreateAlertInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CreateAlertInput"}
+ if v.AlertName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AlertName"))
+ }
+ if v.AnomalyDetectorArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorArn"))
+ }
+ if v.Action == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Action"))
+ } else if v.Action != nil {
+ if err := validateAction(v.Action); err != nil {
+ invalidParams.AddNested("Action", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpCreateAnomalyDetectorInput(v *CreateAnomalyDetectorInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CreateAnomalyDetectorInput"}
+ if v.AnomalyDetectorName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorName"))
+ }
+ if v.AnomalyDetectorConfig == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorConfig"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpCreateMetricSetInput(v *CreateMetricSetInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CreateMetricSetInput"}
+ if v.AnomalyDetectorArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorArn"))
+ }
+ if v.MetricSetName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MetricSetName"))
+ }
+ if v.MetricList == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MetricList"))
+ } else if v.MetricList != nil {
+ if err := validateMetricList(v.MetricList); err != nil {
+ invalidParams.AddNested("MetricList", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.MetricSource == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MetricSource"))
+ } else if v.MetricSource != nil {
+ if err := validateMetricSource(v.MetricSource); err != nil {
+ invalidParams.AddNested("MetricSource", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpDeleteAlertInput(v *DeleteAlertInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DeleteAlertInput"}
+ if v.AlertArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AlertArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpDeleteAnomalyDetectorInput(v *DeleteAnomalyDetectorInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DeleteAnomalyDetectorInput"}
+ if v.AnomalyDetectorArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpDescribeAlertInput(v *DescribeAlertInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DescribeAlertInput"}
+ if v.AlertArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AlertArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpDescribeAnomalyDetectionExecutionsInput(v *DescribeAnomalyDetectionExecutionsInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DescribeAnomalyDetectionExecutionsInput"}
+ if v.AnomalyDetectorArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpDescribeAnomalyDetectorInput(v *DescribeAnomalyDetectorInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DescribeAnomalyDetectorInput"}
+ if v.AnomalyDetectorArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpDescribeMetricSetInput(v *DescribeMetricSetInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DescribeMetricSetInput"}
+ if v.MetricSetArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MetricSetArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpGetAnomalyGroupInput(v *GetAnomalyGroupInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "GetAnomalyGroupInput"}
+ if v.AnomalyGroupId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyGroupId"))
+ }
+ if v.AnomalyDetectorArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpGetFeedbackInput(v *GetFeedbackInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "GetFeedbackInput"}
+ if v.AnomalyDetectorArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorArn"))
+ }
+ if v.AnomalyGroupTimeSeriesFeedback == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyGroupTimeSeriesFeedback"))
+ } else if v.AnomalyGroupTimeSeriesFeedback != nil {
+ if err := validateAnomalyGroupTimeSeries(v.AnomalyGroupTimeSeriesFeedback); err != nil {
+ invalidParams.AddNested("AnomalyGroupTimeSeriesFeedback", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpGetSampleDataInput(v *GetSampleDataInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "GetSampleDataInput"}
+ if v.S3SourceConfig != nil {
+ if err := validateSampleDataS3SourceConfig(v.S3SourceConfig); err != nil {
+ invalidParams.AddNested("S3SourceConfig", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpListAnomalyGroupSummariesInput(v *ListAnomalyGroupSummariesInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "ListAnomalyGroupSummariesInput"}
+ if v.AnomalyDetectorArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpListAnomalyGroupTimeSeriesInput(v *ListAnomalyGroupTimeSeriesInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "ListAnomalyGroupTimeSeriesInput"}
+ if v.AnomalyDetectorArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorArn"))
+ }
+ if v.AnomalyGroupId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyGroupId"))
+ }
+ if v.MetricName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MetricName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+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 validateOpPutFeedbackInput(v *PutFeedbackInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "PutFeedbackInput"}
+ if v.AnomalyDetectorArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorArn"))
+ }
+ if v.AnomalyGroupTimeSeriesFeedback == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyGroupTimeSeriesFeedback"))
+ } else if v.AnomalyGroupTimeSeriesFeedback != nil {
+ if err := validateAnomalyGroupTimeSeriesFeedback(v.AnomalyGroupTimeSeriesFeedback); err != nil {
+ invalidParams.AddNested("AnomalyGroupTimeSeriesFeedback", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ 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
+ }
+}
+
+func validateOpUpdateAnomalyDetectorInput(v *UpdateAnomalyDetectorInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "UpdateAnomalyDetectorInput"}
+ if v.AnomalyDetectorArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AnomalyDetectorArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateOpUpdateMetricSetInput(v *UpdateMetricSetInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "UpdateMetricSetInput"}
+ if v.MetricSetArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MetricSetArn"))
+ }
+ if v.MetricList != nil {
+ if err := validateMetricList(v.MetricList); err != nil {
+ invalidParams.AddNested("MetricList", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.MetricSource != nil {
+ if err := validateMetricSource(v.MetricSource); err != nil {
+ invalidParams.AddNested("MetricSource", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
diff --git a/service/lookoutvision/go.mod b/service/lookoutvision/go.mod
index d1c0b7d7c09..c5fa117c2a2 100644
--- a/service/lookoutvision/go.mod
+++ b/service/lookoutvision/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/lookoutvision/go.sum b/service/lookoutvision/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/lookoutvision/go.sum
+++ b/service/lookoutvision/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/machinelearning/api_op_CreateMLModel.go b/service/machinelearning/api_op_CreateMLModel.go
index 35472fef51f..b9e3f2230f0 100644
--- a/service/machinelearning/api_op_CreateMLModel.go
+++ b/service/machinelearning/api_op_CreateMLModel.go
@@ -81,7 +81,7 @@ type CreateMLModelInput struct {
//
// * sgd.maxPasses - The number of times that the
// training process traverses the observations to build the MLModel. The value is
- // an integer that ranges from 1 to 100. The default value is 10.
+ // an integer that ranges from 1 to 10000. The default value is 10.
//
// *
// sgd.shuffleType - Whether Amazon ML shuffles the training data. Shuffling the
diff --git a/service/machinelearning/api_op_DescribeBatchPredictions.go b/service/machinelearning/api_op_DescribeBatchPredictions.go
index 991ad6a70bc..686a6996534 100644
--- a/service/machinelearning/api_op_DescribeBatchPredictions.go
+++ b/service/machinelearning/api_op_DescribeBatchPredictions.go
@@ -9,7 +9,11 @@ import (
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
"github.com/aws/aws-sdk-go-v2/service/machinelearning/types"
"github.com/aws/smithy-go/middleware"
+ smithytime "github.com/aws/smithy-go/time"
smithyhttp "github.com/aws/smithy-go/transport/http"
+ smithywaiter "github.com/aws/smithy-go/waiter"
+ "github.com/jmespath/go-jmespath"
+ "time"
)
// Returns a list of BatchPrediction operations that match the search criteria in
@@ -280,6 +284,198 @@ func (p *DescribeBatchPredictionsPaginator) NextPage(ctx context.Context, optFns
return result, nil
}
+// BatchPredictionAvailableWaiterOptions are waiter options for
+// BatchPredictionAvailableWaiter
+type BatchPredictionAvailableWaiterOptions struct {
+
+ // Set of options to modify how an operation is invoked. These apply to all
+ // operations invoked for this client. Use functional options on operation call to
+ // modify this list for per operation behavior.
+ APIOptions []func(*middleware.Stack) error
+
+ // MinDelay is the minimum amount of time to delay between retries. If unset,
+ // BatchPredictionAvailableWaiter will use default minimum delay of 30 seconds.
+ // Note that MinDelay must resolve to a value lesser than or equal to the MaxDelay.
+ MinDelay time.Duration
+
+ // MaxDelay is the maximum amount of time to delay between retries. If unset or set
+ // to zero, BatchPredictionAvailableWaiter will use default max delay of 120
+ // seconds. Note that MaxDelay must resolve to value greater than or equal to the
+ // MinDelay.
+ MaxDelay time.Duration
+
+ // LogWaitAttempts is used to enable logging for waiter retry attempts
+ LogWaitAttempts bool
+
+ // Retryable is function that can be used to override the service defined
+ // waiter-behavior based on operation output, or returned error. This function is
+ // used by the waiter to decide if a state is retryable or a terminal state. By
+ // default service-modeled logic will populate this option. This option can thus be
+ // used to define a custom waiter state with fall-back to service-modeled waiter
+ // state mutators.The function returns an error in case of a failure state. In case
+ // of retry state, this function returns a bool value of true and nil error, while
+ // in case of success it returns a bool value of false and nil error.
+ Retryable func(context.Context, *DescribeBatchPredictionsInput, *DescribeBatchPredictionsOutput, error) (bool, error)
+}
+
+// BatchPredictionAvailableWaiter defines the waiters for BatchPredictionAvailable
+type BatchPredictionAvailableWaiter struct {
+ client DescribeBatchPredictionsAPIClient
+
+ options BatchPredictionAvailableWaiterOptions
+}
+
+// NewBatchPredictionAvailableWaiter constructs a BatchPredictionAvailableWaiter.
+func NewBatchPredictionAvailableWaiter(client DescribeBatchPredictionsAPIClient, optFns ...func(*BatchPredictionAvailableWaiterOptions)) *BatchPredictionAvailableWaiter {
+ options := BatchPredictionAvailableWaiterOptions{}
+ options.MinDelay = 30 * time.Second
+ options.MaxDelay = 120 * time.Second
+ options.Retryable = batchPredictionAvailableStateRetryable
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+ return &BatchPredictionAvailableWaiter{
+ client: client,
+ options: options,
+ }
+}
+
+// Wait calls the waiter function for BatchPredictionAvailable waiter. The
+// maxWaitDur is the maximum wait duration the waiter will wait. The maxWaitDur is
+// required and must be greater than zero.
+func (w *BatchPredictionAvailableWaiter) Wait(ctx context.Context, params *DescribeBatchPredictionsInput, maxWaitDur time.Duration, optFns ...func(*BatchPredictionAvailableWaiterOptions)) error {
+ if maxWaitDur <= 0 {
+ return fmt.Errorf("maximum wait time for waiter must be greater than zero")
+ }
+
+ options := w.options
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ if options.MaxDelay <= 0 {
+ options.MaxDelay = 120 * time.Second
+ }
+
+ if options.MinDelay > options.MaxDelay {
+ return fmt.Errorf("minimum waiter delay %v must be lesser than or equal to maximum waiter delay of %v.", options.MinDelay, options.MaxDelay)
+ }
+
+ ctx, cancelFn := context.WithTimeout(ctx, maxWaitDur)
+ defer cancelFn()
+
+ logger := smithywaiter.Logger{}
+ remainingTime := maxWaitDur
+
+ var attempt int64
+ for {
+
+ attempt++
+ apiOptions := options.APIOptions
+ start := time.Now()
+
+ if options.LogWaitAttempts {
+ logger.Attempt = attempt
+ apiOptions = append([]func(*middleware.Stack) error{}, options.APIOptions...)
+ apiOptions = append(apiOptions, logger.AddLogger)
+ }
+
+ out, err := w.client.DescribeBatchPredictions(ctx, params, func(o *Options) {
+ o.APIOptions = append(o.APIOptions, apiOptions...)
+ })
+
+ retryable, err := options.Retryable(ctx, params, out, err)
+ if err != nil {
+ return err
+ }
+ if !retryable {
+ return nil
+ }
+
+ remainingTime -= time.Since(start)
+ if remainingTime < options.MinDelay || remainingTime <= 0 {
+ break
+ }
+
+ // compute exponential backoff between waiter retries
+ delay, err := smithywaiter.ComputeDelay(
+ attempt, options.MinDelay, options.MaxDelay, remainingTime,
+ )
+ if err != nil {
+ return fmt.Errorf("error computing waiter delay, %w", err)
+ }
+
+ remainingTime -= delay
+ // sleep for the delay amount before invoking a request
+ if err := smithytime.SleepWithContext(ctx, delay); err != nil {
+ return fmt.Errorf("request cancelled while waiting, %w", err)
+ }
+ }
+ return fmt.Errorf("exceeded max wait time for BatchPredictionAvailable waiter")
+}
+
+func batchPredictionAvailableStateRetryable(ctx context.Context, input *DescribeBatchPredictionsInput, output *DescribeBatchPredictionsOutput, err error) (bool, error) {
+
+ if err == nil {
+ pathValue, err := jmespath.Search("Results[].Status", output)
+ if err != nil {
+ return false, fmt.Errorf("error evaluating waiter state: %w", err)
+ }
+
+ expectedValue := "COMPLETED"
+ var match = true
+ listOfValues, ok := pathValue.([]interface{})
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected list got %T", pathValue)
+ }
+
+ if len(listOfValues) == 0 {
+ match = false
+ }
+ for _, v := range listOfValues {
+ value, ok := v.(types.EntityStatus)
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected types.EntityStatus value, got %T", pathValue)
+ }
+
+ if string(value) != expectedValue {
+ match = false
+ }
+ }
+
+ if match {
+ return false, nil
+ }
+ }
+
+ if err == nil {
+ pathValue, err := jmespath.Search("Results[].Status", output)
+ if err != nil {
+ return false, fmt.Errorf("error evaluating waiter state: %w", err)
+ }
+
+ expectedValue := "FAILED"
+ listOfValues, ok := pathValue.([]interface{})
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected list got %T", pathValue)
+ }
+
+ for _, v := range listOfValues {
+ value, ok := v.(types.EntityStatus)
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected types.EntityStatus value, got %T", pathValue)
+ }
+
+ if string(value) == expectedValue {
+ return false, fmt.Errorf("waiter state transitioned to Failure")
+ }
+ }
+ }
+
+ return true, nil
+}
+
func newServiceMetadataMiddleware_opDescribeBatchPredictions(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
diff --git a/service/machinelearning/api_op_DescribeDataSources.go b/service/machinelearning/api_op_DescribeDataSources.go
index d2da1a0025c..1cb82dc80c8 100644
--- a/service/machinelearning/api_op_DescribeDataSources.go
+++ b/service/machinelearning/api_op_DescribeDataSources.go
@@ -9,7 +9,11 @@ import (
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
"github.com/aws/aws-sdk-go-v2/service/machinelearning/types"
"github.com/aws/smithy-go/middleware"
+ smithytime "github.com/aws/smithy-go/time"
smithyhttp "github.com/aws/smithy-go/transport/http"
+ smithywaiter "github.com/aws/smithy-go/waiter"
+ "github.com/jmespath/go-jmespath"
+ "time"
)
// Returns a list of DataSource that match the search criteria in the request.
@@ -269,6 +273,197 @@ func (p *DescribeDataSourcesPaginator) NextPage(ctx context.Context, optFns ...f
return result, nil
}
+// DataSourceAvailableWaiterOptions are waiter options for
+// DataSourceAvailableWaiter
+type DataSourceAvailableWaiterOptions struct {
+
+ // Set of options to modify how an operation is invoked. These apply to all
+ // operations invoked for this client. Use functional options on operation call to
+ // modify this list for per operation behavior.
+ APIOptions []func(*middleware.Stack) error
+
+ // MinDelay is the minimum amount of time to delay between retries. If unset,
+ // DataSourceAvailableWaiter will use default minimum delay of 30 seconds. Note
+ // that MinDelay must resolve to a value lesser than or equal to the MaxDelay.
+ MinDelay time.Duration
+
+ // MaxDelay is the maximum amount of time to delay between retries. If unset or set
+ // to zero, DataSourceAvailableWaiter will use default max delay of 120 seconds.
+ // Note that MaxDelay must resolve to value greater than or equal to the MinDelay.
+ MaxDelay time.Duration
+
+ // LogWaitAttempts is used to enable logging for waiter retry attempts
+ LogWaitAttempts bool
+
+ // Retryable is function that can be used to override the service defined
+ // waiter-behavior based on operation output, or returned error. This function is
+ // used by the waiter to decide if a state is retryable or a terminal state. By
+ // default service-modeled logic will populate this option. This option can thus be
+ // used to define a custom waiter state with fall-back to service-modeled waiter
+ // state mutators.The function returns an error in case of a failure state. In case
+ // of retry state, this function returns a bool value of true and nil error, while
+ // in case of success it returns a bool value of false and nil error.
+ Retryable func(context.Context, *DescribeDataSourcesInput, *DescribeDataSourcesOutput, error) (bool, error)
+}
+
+// DataSourceAvailableWaiter defines the waiters for DataSourceAvailable
+type DataSourceAvailableWaiter struct {
+ client DescribeDataSourcesAPIClient
+
+ options DataSourceAvailableWaiterOptions
+}
+
+// NewDataSourceAvailableWaiter constructs a DataSourceAvailableWaiter.
+func NewDataSourceAvailableWaiter(client DescribeDataSourcesAPIClient, optFns ...func(*DataSourceAvailableWaiterOptions)) *DataSourceAvailableWaiter {
+ options := DataSourceAvailableWaiterOptions{}
+ options.MinDelay = 30 * time.Second
+ options.MaxDelay = 120 * time.Second
+ options.Retryable = dataSourceAvailableStateRetryable
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+ return &DataSourceAvailableWaiter{
+ client: client,
+ options: options,
+ }
+}
+
+// Wait calls the waiter function for DataSourceAvailable waiter. The maxWaitDur is
+// the maximum wait duration the waiter will wait. The maxWaitDur is required and
+// must be greater than zero.
+func (w *DataSourceAvailableWaiter) Wait(ctx context.Context, params *DescribeDataSourcesInput, maxWaitDur time.Duration, optFns ...func(*DataSourceAvailableWaiterOptions)) error {
+ if maxWaitDur <= 0 {
+ return fmt.Errorf("maximum wait time for waiter must be greater than zero")
+ }
+
+ options := w.options
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ if options.MaxDelay <= 0 {
+ options.MaxDelay = 120 * time.Second
+ }
+
+ if options.MinDelay > options.MaxDelay {
+ return fmt.Errorf("minimum waiter delay %v must be lesser than or equal to maximum waiter delay of %v.", options.MinDelay, options.MaxDelay)
+ }
+
+ ctx, cancelFn := context.WithTimeout(ctx, maxWaitDur)
+ defer cancelFn()
+
+ logger := smithywaiter.Logger{}
+ remainingTime := maxWaitDur
+
+ var attempt int64
+ for {
+
+ attempt++
+ apiOptions := options.APIOptions
+ start := time.Now()
+
+ if options.LogWaitAttempts {
+ logger.Attempt = attempt
+ apiOptions = append([]func(*middleware.Stack) error{}, options.APIOptions...)
+ apiOptions = append(apiOptions, logger.AddLogger)
+ }
+
+ out, err := w.client.DescribeDataSources(ctx, params, func(o *Options) {
+ o.APIOptions = append(o.APIOptions, apiOptions...)
+ })
+
+ retryable, err := options.Retryable(ctx, params, out, err)
+ if err != nil {
+ return err
+ }
+ if !retryable {
+ return nil
+ }
+
+ remainingTime -= time.Since(start)
+ if remainingTime < options.MinDelay || remainingTime <= 0 {
+ break
+ }
+
+ // compute exponential backoff between waiter retries
+ delay, err := smithywaiter.ComputeDelay(
+ attempt, options.MinDelay, options.MaxDelay, remainingTime,
+ )
+ if err != nil {
+ return fmt.Errorf("error computing waiter delay, %w", err)
+ }
+
+ remainingTime -= delay
+ // sleep for the delay amount before invoking a request
+ if err := smithytime.SleepWithContext(ctx, delay); err != nil {
+ return fmt.Errorf("request cancelled while waiting, %w", err)
+ }
+ }
+ return fmt.Errorf("exceeded max wait time for DataSourceAvailable waiter")
+}
+
+func dataSourceAvailableStateRetryable(ctx context.Context, input *DescribeDataSourcesInput, output *DescribeDataSourcesOutput, err error) (bool, error) {
+
+ if err == nil {
+ pathValue, err := jmespath.Search("Results[].Status", output)
+ if err != nil {
+ return false, fmt.Errorf("error evaluating waiter state: %w", err)
+ }
+
+ expectedValue := "COMPLETED"
+ var match = true
+ listOfValues, ok := pathValue.([]interface{})
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected list got %T", pathValue)
+ }
+
+ if len(listOfValues) == 0 {
+ match = false
+ }
+ for _, v := range listOfValues {
+ value, ok := v.(types.EntityStatus)
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected types.EntityStatus value, got %T", pathValue)
+ }
+
+ if string(value) != expectedValue {
+ match = false
+ }
+ }
+
+ if match {
+ return false, nil
+ }
+ }
+
+ if err == nil {
+ pathValue, err := jmespath.Search("Results[].Status", output)
+ if err != nil {
+ return false, fmt.Errorf("error evaluating waiter state: %w", err)
+ }
+
+ expectedValue := "FAILED"
+ listOfValues, ok := pathValue.([]interface{})
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected list got %T", pathValue)
+ }
+
+ for _, v := range listOfValues {
+ value, ok := v.(types.EntityStatus)
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected types.EntityStatus value, got %T", pathValue)
+ }
+
+ if string(value) == expectedValue {
+ return false, fmt.Errorf("waiter state transitioned to Failure")
+ }
+ }
+ }
+
+ return true, nil
+}
+
func newServiceMetadataMiddleware_opDescribeDataSources(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
diff --git a/service/machinelearning/api_op_DescribeEvaluations.go b/service/machinelearning/api_op_DescribeEvaluations.go
index d6140c9795f..de7956e5ae9 100644
--- a/service/machinelearning/api_op_DescribeEvaluations.go
+++ b/service/machinelearning/api_op_DescribeEvaluations.go
@@ -9,7 +9,11 @@ import (
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
"github.com/aws/aws-sdk-go-v2/service/machinelearning/types"
"github.com/aws/smithy-go/middleware"
+ smithytime "github.com/aws/smithy-go/time"
smithyhttp "github.com/aws/smithy-go/transport/http"
+ smithywaiter "github.com/aws/smithy-go/waiter"
+ "github.com/jmespath/go-jmespath"
+ "time"
)
// Returns a list of DescribeEvaluations that match the search criteria in the
@@ -276,6 +280,197 @@ func (p *DescribeEvaluationsPaginator) NextPage(ctx context.Context, optFns ...f
return result, nil
}
+// EvaluationAvailableWaiterOptions are waiter options for
+// EvaluationAvailableWaiter
+type EvaluationAvailableWaiterOptions struct {
+
+ // Set of options to modify how an operation is invoked. These apply to all
+ // operations invoked for this client. Use functional options on operation call to
+ // modify this list for per operation behavior.
+ APIOptions []func(*middleware.Stack) error
+
+ // MinDelay is the minimum amount of time to delay between retries. If unset,
+ // EvaluationAvailableWaiter will use default minimum delay of 30 seconds. Note
+ // that MinDelay must resolve to a value lesser than or equal to the MaxDelay.
+ MinDelay time.Duration
+
+ // MaxDelay is the maximum amount of time to delay between retries. If unset or set
+ // to zero, EvaluationAvailableWaiter will use default max delay of 120 seconds.
+ // Note that MaxDelay must resolve to value greater than or equal to the MinDelay.
+ MaxDelay time.Duration
+
+ // LogWaitAttempts is used to enable logging for waiter retry attempts
+ LogWaitAttempts bool
+
+ // Retryable is function that can be used to override the service defined
+ // waiter-behavior based on operation output, or returned error. This function is
+ // used by the waiter to decide if a state is retryable or a terminal state. By
+ // default service-modeled logic will populate this option. This option can thus be
+ // used to define a custom waiter state with fall-back to service-modeled waiter
+ // state mutators.The function returns an error in case of a failure state. In case
+ // of retry state, this function returns a bool value of true and nil error, while
+ // in case of success it returns a bool value of false and nil error.
+ Retryable func(context.Context, *DescribeEvaluationsInput, *DescribeEvaluationsOutput, error) (bool, error)
+}
+
+// EvaluationAvailableWaiter defines the waiters for EvaluationAvailable
+type EvaluationAvailableWaiter struct {
+ client DescribeEvaluationsAPIClient
+
+ options EvaluationAvailableWaiterOptions
+}
+
+// NewEvaluationAvailableWaiter constructs a EvaluationAvailableWaiter.
+func NewEvaluationAvailableWaiter(client DescribeEvaluationsAPIClient, optFns ...func(*EvaluationAvailableWaiterOptions)) *EvaluationAvailableWaiter {
+ options := EvaluationAvailableWaiterOptions{}
+ options.MinDelay = 30 * time.Second
+ options.MaxDelay = 120 * time.Second
+ options.Retryable = evaluationAvailableStateRetryable
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+ return &EvaluationAvailableWaiter{
+ client: client,
+ options: options,
+ }
+}
+
+// Wait calls the waiter function for EvaluationAvailable waiter. The maxWaitDur is
+// the maximum wait duration the waiter will wait. The maxWaitDur is required and
+// must be greater than zero.
+func (w *EvaluationAvailableWaiter) Wait(ctx context.Context, params *DescribeEvaluationsInput, maxWaitDur time.Duration, optFns ...func(*EvaluationAvailableWaiterOptions)) error {
+ if maxWaitDur <= 0 {
+ return fmt.Errorf("maximum wait time for waiter must be greater than zero")
+ }
+
+ options := w.options
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ if options.MaxDelay <= 0 {
+ options.MaxDelay = 120 * time.Second
+ }
+
+ if options.MinDelay > options.MaxDelay {
+ return fmt.Errorf("minimum waiter delay %v must be lesser than or equal to maximum waiter delay of %v.", options.MinDelay, options.MaxDelay)
+ }
+
+ ctx, cancelFn := context.WithTimeout(ctx, maxWaitDur)
+ defer cancelFn()
+
+ logger := smithywaiter.Logger{}
+ remainingTime := maxWaitDur
+
+ var attempt int64
+ for {
+
+ attempt++
+ apiOptions := options.APIOptions
+ start := time.Now()
+
+ if options.LogWaitAttempts {
+ logger.Attempt = attempt
+ apiOptions = append([]func(*middleware.Stack) error{}, options.APIOptions...)
+ apiOptions = append(apiOptions, logger.AddLogger)
+ }
+
+ out, err := w.client.DescribeEvaluations(ctx, params, func(o *Options) {
+ o.APIOptions = append(o.APIOptions, apiOptions...)
+ })
+
+ retryable, err := options.Retryable(ctx, params, out, err)
+ if err != nil {
+ return err
+ }
+ if !retryable {
+ return nil
+ }
+
+ remainingTime -= time.Since(start)
+ if remainingTime < options.MinDelay || remainingTime <= 0 {
+ break
+ }
+
+ // compute exponential backoff between waiter retries
+ delay, err := smithywaiter.ComputeDelay(
+ attempt, options.MinDelay, options.MaxDelay, remainingTime,
+ )
+ if err != nil {
+ return fmt.Errorf("error computing waiter delay, %w", err)
+ }
+
+ remainingTime -= delay
+ // sleep for the delay amount before invoking a request
+ if err := smithytime.SleepWithContext(ctx, delay); err != nil {
+ return fmt.Errorf("request cancelled while waiting, %w", err)
+ }
+ }
+ return fmt.Errorf("exceeded max wait time for EvaluationAvailable waiter")
+}
+
+func evaluationAvailableStateRetryable(ctx context.Context, input *DescribeEvaluationsInput, output *DescribeEvaluationsOutput, err error) (bool, error) {
+
+ if err == nil {
+ pathValue, err := jmespath.Search("Results[].Status", output)
+ if err != nil {
+ return false, fmt.Errorf("error evaluating waiter state: %w", err)
+ }
+
+ expectedValue := "COMPLETED"
+ var match = true
+ listOfValues, ok := pathValue.([]interface{})
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected list got %T", pathValue)
+ }
+
+ if len(listOfValues) == 0 {
+ match = false
+ }
+ for _, v := range listOfValues {
+ value, ok := v.(types.EntityStatus)
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected types.EntityStatus value, got %T", pathValue)
+ }
+
+ if string(value) != expectedValue {
+ match = false
+ }
+ }
+
+ if match {
+ return false, nil
+ }
+ }
+
+ if err == nil {
+ pathValue, err := jmespath.Search("Results[].Status", output)
+ if err != nil {
+ return false, fmt.Errorf("error evaluating waiter state: %w", err)
+ }
+
+ expectedValue := "FAILED"
+ listOfValues, ok := pathValue.([]interface{})
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected list got %T", pathValue)
+ }
+
+ for _, v := range listOfValues {
+ value, ok := v.(types.EntityStatus)
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected types.EntityStatus value, got %T", pathValue)
+ }
+
+ if string(value) == expectedValue {
+ return false, fmt.Errorf("waiter state transitioned to Failure")
+ }
+ }
+ }
+
+ return true, nil
+}
+
func newServiceMetadataMiddleware_opDescribeEvaluations(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
diff --git a/service/machinelearning/api_op_DescribeMLModels.go b/service/machinelearning/api_op_DescribeMLModels.go
index 7a877cfb112..04cfe1d3fd3 100644
--- a/service/machinelearning/api_op_DescribeMLModels.go
+++ b/service/machinelearning/api_op_DescribeMLModels.go
@@ -9,7 +9,11 @@ import (
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
"github.com/aws/aws-sdk-go-v2/service/machinelearning/types"
"github.com/aws/smithy-go/middleware"
+ smithytime "github.com/aws/smithy-go/time"
smithyhttp "github.com/aws/smithy-go/transport/http"
+ smithywaiter "github.com/aws/smithy-go/waiter"
+ "github.com/jmespath/go-jmespath"
+ "time"
)
// Returns a list of MLModel that match the search criteria in the request.
@@ -281,6 +285,196 @@ func (p *DescribeMLModelsPaginator) NextPage(ctx context.Context, optFns ...func
return result, nil
}
+// MLModelAvailableWaiterOptions are waiter options for MLModelAvailableWaiter
+type MLModelAvailableWaiterOptions struct {
+
+ // Set of options to modify how an operation is invoked. These apply to all
+ // operations invoked for this client. Use functional options on operation call to
+ // modify this list for per operation behavior.
+ APIOptions []func(*middleware.Stack) error
+
+ // MinDelay is the minimum amount of time to delay between retries. If unset,
+ // MLModelAvailableWaiter will use default minimum delay of 30 seconds. Note that
+ // MinDelay must resolve to a value lesser than or equal to the MaxDelay.
+ MinDelay time.Duration
+
+ // MaxDelay is the maximum amount of time to delay between retries. If unset or set
+ // to zero, MLModelAvailableWaiter will use default max delay of 120 seconds. Note
+ // that MaxDelay must resolve to value greater than or equal to the MinDelay.
+ MaxDelay time.Duration
+
+ // LogWaitAttempts is used to enable logging for waiter retry attempts
+ LogWaitAttempts bool
+
+ // Retryable is function that can be used to override the service defined
+ // waiter-behavior based on operation output, or returned error. This function is
+ // used by the waiter to decide if a state is retryable or a terminal state. By
+ // default service-modeled logic will populate this option. This option can thus be
+ // used to define a custom waiter state with fall-back to service-modeled waiter
+ // state mutators.The function returns an error in case of a failure state. In case
+ // of retry state, this function returns a bool value of true and nil error, while
+ // in case of success it returns a bool value of false and nil error.
+ Retryable func(context.Context, *DescribeMLModelsInput, *DescribeMLModelsOutput, error) (bool, error)
+}
+
+// MLModelAvailableWaiter defines the waiters for MLModelAvailable
+type MLModelAvailableWaiter struct {
+ client DescribeMLModelsAPIClient
+
+ options MLModelAvailableWaiterOptions
+}
+
+// NewMLModelAvailableWaiter constructs a MLModelAvailableWaiter.
+func NewMLModelAvailableWaiter(client DescribeMLModelsAPIClient, optFns ...func(*MLModelAvailableWaiterOptions)) *MLModelAvailableWaiter {
+ options := MLModelAvailableWaiterOptions{}
+ options.MinDelay = 30 * time.Second
+ options.MaxDelay = 120 * time.Second
+ options.Retryable = mLModelAvailableStateRetryable
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+ return &MLModelAvailableWaiter{
+ client: client,
+ options: options,
+ }
+}
+
+// Wait calls the waiter function for MLModelAvailable waiter. The maxWaitDur is
+// the maximum wait duration the waiter will wait. The maxWaitDur is required and
+// must be greater than zero.
+func (w *MLModelAvailableWaiter) Wait(ctx context.Context, params *DescribeMLModelsInput, maxWaitDur time.Duration, optFns ...func(*MLModelAvailableWaiterOptions)) error {
+ if maxWaitDur <= 0 {
+ return fmt.Errorf("maximum wait time for waiter must be greater than zero")
+ }
+
+ options := w.options
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ if options.MaxDelay <= 0 {
+ options.MaxDelay = 120 * time.Second
+ }
+
+ if options.MinDelay > options.MaxDelay {
+ return fmt.Errorf("minimum waiter delay %v must be lesser than or equal to maximum waiter delay of %v.", options.MinDelay, options.MaxDelay)
+ }
+
+ ctx, cancelFn := context.WithTimeout(ctx, maxWaitDur)
+ defer cancelFn()
+
+ logger := smithywaiter.Logger{}
+ remainingTime := maxWaitDur
+
+ var attempt int64
+ for {
+
+ attempt++
+ apiOptions := options.APIOptions
+ start := time.Now()
+
+ if options.LogWaitAttempts {
+ logger.Attempt = attempt
+ apiOptions = append([]func(*middleware.Stack) error{}, options.APIOptions...)
+ apiOptions = append(apiOptions, logger.AddLogger)
+ }
+
+ out, err := w.client.DescribeMLModels(ctx, params, func(o *Options) {
+ o.APIOptions = append(o.APIOptions, apiOptions...)
+ })
+
+ retryable, err := options.Retryable(ctx, params, out, err)
+ if err != nil {
+ return err
+ }
+ if !retryable {
+ return nil
+ }
+
+ remainingTime -= time.Since(start)
+ if remainingTime < options.MinDelay || remainingTime <= 0 {
+ break
+ }
+
+ // compute exponential backoff between waiter retries
+ delay, err := smithywaiter.ComputeDelay(
+ attempt, options.MinDelay, options.MaxDelay, remainingTime,
+ )
+ if err != nil {
+ return fmt.Errorf("error computing waiter delay, %w", err)
+ }
+
+ remainingTime -= delay
+ // sleep for the delay amount before invoking a request
+ if err := smithytime.SleepWithContext(ctx, delay); err != nil {
+ return fmt.Errorf("request cancelled while waiting, %w", err)
+ }
+ }
+ return fmt.Errorf("exceeded max wait time for MLModelAvailable waiter")
+}
+
+func mLModelAvailableStateRetryable(ctx context.Context, input *DescribeMLModelsInput, output *DescribeMLModelsOutput, err error) (bool, error) {
+
+ if err == nil {
+ pathValue, err := jmespath.Search("Results[].Status", output)
+ if err != nil {
+ return false, fmt.Errorf("error evaluating waiter state: %w", err)
+ }
+
+ expectedValue := "COMPLETED"
+ var match = true
+ listOfValues, ok := pathValue.([]interface{})
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected list got %T", pathValue)
+ }
+
+ if len(listOfValues) == 0 {
+ match = false
+ }
+ for _, v := range listOfValues {
+ value, ok := v.(types.EntityStatus)
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected types.EntityStatus value, got %T", pathValue)
+ }
+
+ if string(value) != expectedValue {
+ match = false
+ }
+ }
+
+ if match {
+ return false, nil
+ }
+ }
+
+ if err == nil {
+ pathValue, err := jmespath.Search("Results[].Status", output)
+ if err != nil {
+ return false, fmt.Errorf("error evaluating waiter state: %w", err)
+ }
+
+ expectedValue := "FAILED"
+ listOfValues, ok := pathValue.([]interface{})
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected list got %T", pathValue)
+ }
+
+ for _, v := range listOfValues {
+ value, ok := v.(types.EntityStatus)
+ if !ok {
+ return false, fmt.Errorf("waiter comparator expected types.EntityStatus value, got %T", pathValue)
+ }
+
+ if string(value) == expectedValue {
+ return false, fmt.Errorf("waiter state transitioned to Failure")
+ }
+ }
+ }
+
+ return true, nil
+}
+
func newServiceMetadataMiddleware_opDescribeMLModels(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
diff --git a/service/machinelearning/api_op_GetMLModel.go b/service/machinelearning/api_op_GetMLModel.go
index 195e7485558..272bfd73923 100644
--- a/service/machinelearning/api_op_GetMLModel.go
+++ b/service/machinelearning/api_op_GetMLModel.go
@@ -160,7 +160,7 @@ type GetMLModelOutput struct {
//
// * sgd.maxPasses - The number of times that the
// training process traverses the observations to build the MLModel. The value is
- // an integer that ranges from 1 to 100. The default value is 10.
+ // an integer that ranges from 1 to 10000. The default value is 10.
//
// *
// sgd.shuffleType - Whether Amazon ML shuffles the training data. Shuffling data
diff --git a/service/machinelearning/api_op_Predict.go b/service/machinelearning/api_op_Predict.go
index 71f699654e7..428f8e2dc7f 100644
--- a/service/machinelearning/api_op_Predict.go
+++ b/service/machinelearning/api_op_Predict.go
@@ -39,8 +39,6 @@ type PredictInput struct {
// This member is required.
MLModelId *string
- // The predicted endpoint for the input.
- //
// This member is required.
PredictEndpoint *string
diff --git a/service/machinelearning/go.mod b/service/machinelearning/go.mod
index aa1de3c0038..3e280408731 100644
--- a/service/machinelearning/go.mod
+++ b/service/machinelearning/go.mod
@@ -4,7 +4,8 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
+ github.com/jmespath/go-jmespath v0.4.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/machinelearning/go.sum b/service/machinelearning/go.sum
index b8b430c5c70..73b87070e4c 100644
--- a/service/machinelearning/go.sum
+++ b/service/machinelearning/go.sum
@@ -1,14 +1,19 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
+github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg=
github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo=
+github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8=
github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U=
+github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
+gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
+gopkg.in/yaml.v2 v2.2.8 h1:obN1ZagJSUGI0Ek/LBmuj4SNLPfIny3KsKFopxRdj10=
gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
diff --git a/service/machinelearning/types/errors.go b/service/machinelearning/types/errors.go
index 99cb2c4be4b..cae4972c450 100644
--- a/service/machinelearning/types/errors.go
+++ b/service/machinelearning/types/errors.go
@@ -70,7 +70,6 @@ func (e *InvalidInputException) ErrorMessage() string {
func (e *InvalidInputException) ErrorCode() string { return "InvalidInputException" }
func (e *InvalidInputException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
-// A submitted tag is invalid.
type InvalidTagException struct {
Message *string
}
@@ -143,7 +142,6 @@ func (e *ResourceNotFoundException) ErrorMessage() string {
func (e *ResourceNotFoundException) ErrorCode() string { return "ResourceNotFoundException" }
func (e *ResourceNotFoundException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
-// The limit in the number of tags has been exceeded.
type TagLimitExceededException struct {
Message *string
}
diff --git a/service/machinelearning/types/types.go b/service/machinelearning/types/types.go
index 21b42d6b196..1b14c7ecc50 100644
--- a/service/machinelearning/types/types.go
+++ b/service/machinelearning/types/types.go
@@ -311,7 +311,6 @@ type MLModel struct {
// A user-supplied name or description of the MLModel.
Name *string
- // The score threshold for the MLModel.
ScoreThreshold *float32
// The time of the most recent edit to the ScoreThreshold. The time is expressed in
@@ -357,7 +356,7 @@ type MLModel struct {
//
// * sgd.maxPasses - The number of times that the
// training process traverses the observations to build the MLModel. The value is
- // an integer that ranges from 1 to 100. The default value is 10.
+ // an integer that ranges from 1 to 10000. The default value is 10.
//
// *
// sgd.shuffleType - Whether Amazon ML shuffles the training data. Shuffling the
@@ -402,8 +401,6 @@ type MLModel struct {
// the Amazon Machine Learning Developer Guide
// (https://docs.aws.amazon.com/machine-learning/latest/dg).
type PerformanceMetrics struct {
-
- // Specific performance metric information.
Properties map[string]string
}
@@ -580,9 +577,9 @@ type RDSDataSpec struct {
// non-similar data records. The following two DataRearrangement lines are examples
// of non-sequentially ordered training and evaluation datasources: Datasource for
// evaluation: {"splitting":{"percentBegin":70, "percentEnd":100,
- // "strategy":"random", "strategyParams": {"randomSeed":"RANDOMSEED"}}} Datasource
+ // "strategy":"random", "randomSeed"="s3://my_s3_path/bucket/file.csv"}} Datasource
// for training: {"splitting":{"percentBegin":70, "percentEnd":100,
- // "strategy":"random", "strategyParams": {"randomSeed":"RANDOMSEED"},
+ // "strategy":"random", "randomSeed"="s3://my_s3_path/bucket/file.csv",
// "complement":"true"}}
DataRearrangement *string
@@ -590,18 +587,16 @@ type RDSDataSpec struct {
// DataSchema defines the structure of the observation data in the data file(s)
// referenced in the DataSource. A DataSchema is not required if you specify a
// DataSchemaUri Define your DataSchema as a series of key-value pairs. attributes
- // and excludedAttributeNames have an array of key-value pairs for their value. Use
+ // and excludedVariableNames have an array of key-value pairs for their value. Use
// the following format to define your DataSchema. { "version": "1.0",
// "recordAnnotationFieldName": "F1", "recordWeightFieldName": "F2",
- // "targetAttributeName": "F3", "dataFormat": "CSV", "dataFileContainsHeader":
- // true, "attributes": [ { "attributeName": "F1", "attributeType": "TEXT" }, {
- // "attributeName": "F2", "attributeType": "NUMERIC" }, { "attributeName": "F3",
- // "attributeType": "CATEGORICAL" }, { "attributeName": "F4", "attributeType":
- // "NUMERIC" }, { "attributeName": "F5", "attributeType": "CATEGORICAL" }, {
- // "attributeName": "F6", "attributeType": "TEXT" }, { "attributeName": "F7",
- // "attributeType": "WEIGHTED_INT_SEQUENCE" }, { "attributeName": "F8",
- // "attributeType": "WEIGHTED_STRING_SEQUENCE" } ], "excludedAttributeNames": [
- // "F6" ] }
+ // "targetFieldName": "F3", "dataFormat": "CSV", "dataFileContainsHeader": true,
+ // "attributes": [ { "fieldName": "F1", "fieldType": "TEXT" }, { "fieldName": "F2",
+ // "fieldType": "NUMERIC" }, { "fieldName": "F3", "fieldType": "CATEGORICAL" }, {
+ // "fieldName": "F4", "fieldType": "NUMERIC" }, { "fieldName": "F5", "fieldType":
+ // "CATEGORICAL" }, { "fieldName": "F6", "fieldType": "TEXT" }, { "fieldName":
+ // "F7", "fieldType": "WEIGHTED_INT_SEQUENCE" }, { "fieldName": "F8", "fieldType":
+ // "WEIGHTED_STRING_SEQUENCE" } ], "excludedVariableNames": [ "F6" ] }
DataSchema *string
// The Amazon S3 location of the DataSchema.
@@ -790,9 +785,9 @@ type RedshiftDataSpec struct {
// non-similar data records. The following two DataRearrangement lines are examples
// of non-sequentially ordered training and evaluation datasources: Datasource for
// evaluation: {"splitting":{"percentBegin":70, "percentEnd":100,
- // "strategy":"random", "strategyParams": {"randomSeed":"RANDOMSEED"}}} Datasource
+ // "strategy":"random", "randomSeed"="s3://my_s3_path/bucket/file.csv"}} Datasource
// for training: {"splitting":{"percentBegin":70, "percentEnd":100,
- // "strategy":"random", "strategyParams": {"randomSeed":"RANDOMSEED"},
+ // "strategy":"random", "randomSeed"="s3://my_s3_path/bucket/file.csv",
// "complement":"true"}}
DataRearrangement *string
@@ -800,18 +795,16 @@ type RedshiftDataSpec struct {
// DataSchema defines the structure of the observation data in the data file(s)
// referenced in the DataSource. A DataSchema is not required if you specify a
// DataSchemaUri. Define your DataSchema as a series of key-value pairs. attributes
- // and excludedAttributeNames have an array of key-value pairs for their value. Use
+ // and excludedVariableNames have an array of key-value pairs for their value. Use
// the following format to define your DataSchema. { "version": "1.0",
// "recordAnnotationFieldName": "F1", "recordWeightFieldName": "F2",
- // "targetAttributeName": "F3", "dataFormat": "CSV", "dataFileContainsHeader":
- // true, "attributes": [ { "attributeName": "F1", "attributeType": "TEXT" }, {
- // "attributeName": "F2", "attributeType": "NUMERIC" }, { "attributeName": "F3",
- // "attributeType": "CATEGORICAL" }, { "attributeName": "F4", "attributeType":
- // "NUMERIC" }, { "attributeName": "F5", "attributeType": "CATEGORICAL" }, {
- // "attributeName": "F6", "attributeType": "TEXT" }, { "attributeName": "F7",
- // "attributeType": "WEIGHTED_INT_SEQUENCE" }, { "attributeName": "F8",
- // "attributeType": "WEIGHTED_STRING_SEQUENCE" } ], "excludedAttributeNames": [
- // "F6" ] }
+ // "targetFieldName": "F3", "dataFormat": "CSV", "dataFileContainsHeader": true,
+ // "attributes": [ { "fieldName": "F1", "fieldType": "TEXT" }, { "fieldName": "F2",
+ // "fieldType": "NUMERIC" }, { "fieldName": "F3", "fieldType": "CATEGORICAL" }, {
+ // "fieldName": "F4", "fieldType": "NUMERIC" }, { "fieldName": "F5", "fieldType":
+ // "CATEGORICAL" }, { "fieldName": "F6", "fieldType": "TEXT" }, { "fieldName":
+ // "F7", "fieldType": "WEIGHTED_INT_SEQUENCE" }, { "fieldName": "F8", "fieldType":
+ // "WEIGHTED_STRING_SEQUENCE" } ], "excludedVariableNames": [ "F6" ] }
DataSchema *string
// Describes the schema location for an Amazon Redshift DataSource.
@@ -900,9 +893,9 @@ type S3DataSpec struct {
// non-similar data records. The following two DataRearrangement lines are examples
// of non-sequentially ordered training and evaluation datasources: Datasource for
// evaluation: {"splitting":{"percentBegin":70, "percentEnd":100,
- // "strategy":"random", "strategyParams": { "randomSeed":"RANDOMSEED"}}} Datasource
+ // "strategy":"random", "randomSeed"="s3://my_s3_path/bucket/file.csv"}} Datasource
// for training: {"splitting":{"percentBegin":70, "percentEnd":100,
- // "strategy":"random", "strategyParams": {"randomSeed":"RANDOMSEED"},
+ // "strategy":"random", "randomSeed"="s3://my_s3_path/bucket/file.csv",
// "complement":"true"}}
DataRearrangement *string
@@ -910,18 +903,16 @@ type S3DataSpec struct {
// DataSchema defines the structure of the observation data in the data file(s)
// referenced in the DataSource. You must provide either the DataSchema or the
// DataSchemaLocationS3. Define your DataSchema as a series of key-value pairs.
- // attributes and excludedAttributeNames have an array of key-value pairs for their
+ // attributes and excludedVariableNames have an array of key-value pairs for their
// value. Use the following format to define your DataSchema. { "version": "1.0",
// "recordAnnotationFieldName": "F1", "recordWeightFieldName": "F2",
- // "targetAttributeName": "F3", "dataFormat": "CSV", "dataFileContainsHeader":
- // true, "attributes": [ { "attributeName": "F1", "attributeType": "TEXT" }, {
- // "attributeName": "F2", "attributeType": "NUMERIC" }, { "attributeName": "F3",
- // "attributeType": "CATEGORICAL" }, { "attributeName": "F4", "attributeType":
- // "NUMERIC" }, { "attributeName": "F5", "attributeType": "CATEGORICAL" }, {
- // "attributeName": "F6", "attributeType": "TEXT" }, { "attributeName": "F7",
- // "attributeType": "WEIGHTED_INT_SEQUENCE" }, { "attributeName": "F8",
- // "attributeType": "WEIGHTED_STRING_SEQUENCE" } ], "excludedAttributeNames": [
- // "F6" ] }
+ // "targetFieldName": "F3", "dataFormat": "CSV", "dataFileContainsHeader": true,
+ // "attributes": [ { "fieldName": "F1", "fieldType": "TEXT" }, { "fieldName": "F2",
+ // "fieldType": "NUMERIC" }, { "fieldName": "F3", "fieldType": "CATEGORICAL" }, {
+ // "fieldName": "F4", "fieldType": "NUMERIC" }, { "fieldName": "F5", "fieldType":
+ // "CATEGORICAL" }, { "fieldName": "F6", "fieldType": "TEXT" }, { "fieldName":
+ // "F7", "fieldType": "WEIGHTED_INT_SEQUENCE" }, { "fieldName": "F8", "fieldType":
+ // "WEIGHTED_STRING_SEQUENCE" } ], "excludedVariableNames": [ "F6" ] }
DataSchema *string
// Describes the schema location in Amazon S3. You must provide either the
diff --git a/service/machinelearning/validators.go b/service/machinelearning/validators.go
index 60414d5635e..857b021c305 100644
--- a/service/machinelearning/validators.go
+++ b/service/machinelearning/validators.go
@@ -609,12 +609,12 @@ func validateRDSDatabaseCredentials(v *types.RDSDatabaseCredentials) error {
return nil
}
invalidParams := smithy.InvalidParamsError{Context: "RDSDatabaseCredentials"}
- if v.Password == nil {
- invalidParams.Add(smithy.NewErrParamRequired("Password"))
- }
if v.Username == nil {
invalidParams.Add(smithy.NewErrParamRequired("Username"))
}
+ if v.Password == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Password"))
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
@@ -627,21 +627,6 @@ func validateRDSDataSpec(v *types.RDSDataSpec) error {
return nil
}
invalidParams := smithy.InvalidParamsError{Context: "RDSDataSpec"}
- if v.ResourceRole == nil {
- invalidParams.Add(smithy.NewErrParamRequired("ResourceRole"))
- }
- if v.ServiceRole == nil {
- invalidParams.Add(smithy.NewErrParamRequired("ServiceRole"))
- }
- if v.SecurityGroupIds == nil {
- invalidParams.Add(smithy.NewErrParamRequired("SecurityGroupIds"))
- }
- if v.S3StagingLocation == nil {
- invalidParams.Add(smithy.NewErrParamRequired("S3StagingLocation"))
- }
- if v.SelectSqlQuery == nil {
- invalidParams.Add(smithy.NewErrParamRequired("SelectSqlQuery"))
- }
if v.DatabaseInformation == nil {
invalidParams.Add(smithy.NewErrParamRequired("DatabaseInformation"))
} else if v.DatabaseInformation != nil {
@@ -649,6 +634,9 @@ func validateRDSDataSpec(v *types.RDSDataSpec) error {
invalidParams.AddNested("DatabaseInformation", err.(smithy.InvalidParamsError))
}
}
+ if v.SelectSqlQuery == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("SelectSqlQuery"))
+ }
if v.DatabaseCredentials == nil {
invalidParams.Add(smithy.NewErrParamRequired("DatabaseCredentials"))
} else if v.DatabaseCredentials != nil {
@@ -656,9 +644,21 @@ func validateRDSDataSpec(v *types.RDSDataSpec) error {
invalidParams.AddNested("DatabaseCredentials", err.(smithy.InvalidParamsError))
}
}
+ if v.S3StagingLocation == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("S3StagingLocation"))
+ }
+ if v.ResourceRole == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("ResourceRole"))
+ }
+ if v.ServiceRole == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("ServiceRole"))
+ }
if v.SubnetId == nil {
invalidParams.Add(smithy.NewErrParamRequired("SubnetId"))
}
+ if v.SecurityGroupIds == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("SecurityGroupIds"))
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
@@ -671,12 +671,12 @@ func validateRedshiftDatabase(v *types.RedshiftDatabase) error {
return nil
}
invalidParams := smithy.InvalidParamsError{Context: "RedshiftDatabase"}
- if v.ClusterIdentifier == nil {
- invalidParams.Add(smithy.NewErrParamRequired("ClusterIdentifier"))
- }
if v.DatabaseName == nil {
invalidParams.Add(smithy.NewErrParamRequired("DatabaseName"))
}
+ if v.ClusterIdentifier == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("ClusterIdentifier"))
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
@@ -689,12 +689,12 @@ func validateRedshiftDatabaseCredentials(v *types.RedshiftDatabaseCredentials) e
return nil
}
invalidParams := smithy.InvalidParamsError{Context: "RedshiftDatabaseCredentials"}
- if v.Password == nil {
- invalidParams.Add(smithy.NewErrParamRequired("Password"))
- }
if v.Username == nil {
invalidParams.Add(smithy.NewErrParamRequired("Username"))
}
+ if v.Password == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Password"))
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
@@ -707,6 +707,16 @@ func validateRedshiftDataSpec(v *types.RedshiftDataSpec) error {
return nil
}
invalidParams := smithy.InvalidParamsError{Context: "RedshiftDataSpec"}
+ if v.DatabaseInformation == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("DatabaseInformation"))
+ } else if v.DatabaseInformation != nil {
+ if err := validateRedshiftDatabase(v.DatabaseInformation); err != nil {
+ invalidParams.AddNested("DatabaseInformation", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.SelectSqlQuery == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("SelectSqlQuery"))
+ }
if v.DatabaseCredentials == nil {
invalidParams.Add(smithy.NewErrParamRequired("DatabaseCredentials"))
} else if v.DatabaseCredentials != nil {
@@ -714,19 +724,9 @@ func validateRedshiftDataSpec(v *types.RedshiftDataSpec) error {
invalidParams.AddNested("DatabaseCredentials", err.(smithy.InvalidParamsError))
}
}
- if v.SelectSqlQuery == nil {
- invalidParams.Add(smithy.NewErrParamRequired("SelectSqlQuery"))
- }
if v.S3StagingLocation == nil {
invalidParams.Add(smithy.NewErrParamRequired("S3StagingLocation"))
}
- if v.DatabaseInformation == nil {
- invalidParams.Add(smithy.NewErrParamRequired("DatabaseInformation"))
- } else if v.DatabaseInformation != nil {
- if err := validateRedshiftDatabase(v.DatabaseInformation); err != nil {
- invalidParams.AddNested("DatabaseInformation", err.(smithy.InvalidParamsError))
- }
- }
if invalidParams.Len() > 0 {
return invalidParams
} else {
@@ -754,14 +754,14 @@ func validateOpAddTagsInput(v *AddTagsInput) error {
return nil
}
invalidParams := smithy.InvalidParamsError{Context: "AddTagsInput"}
- if len(v.ResourceType) == 0 {
- invalidParams.Add(smithy.NewErrParamRequired("ResourceType"))
+ if v.Tags == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Tags"))
}
if v.ResourceId == nil {
invalidParams.Add(smithy.NewErrParamRequired("ResourceId"))
}
- if v.Tags == nil {
- invalidParams.Add(smithy.NewErrParamRequired("Tags"))
+ if len(v.ResourceType) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("ResourceType"))
}
if invalidParams.Len() > 0 {
return invalidParams
@@ -778,12 +778,12 @@ func validateOpCreateBatchPredictionInput(v *CreateBatchPredictionInput) error {
if v.BatchPredictionId == nil {
invalidParams.Add(smithy.NewErrParamRequired("BatchPredictionId"))
}
- if v.BatchPredictionDataSourceId == nil {
- invalidParams.Add(smithy.NewErrParamRequired("BatchPredictionDataSourceId"))
- }
if v.MLModelId == nil {
invalidParams.Add(smithy.NewErrParamRequired("MLModelId"))
}
+ if v.BatchPredictionDataSourceId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("BatchPredictionDataSourceId"))
+ }
if v.OutputUri == nil {
invalidParams.Add(smithy.NewErrParamRequired("OutputUri"))
}
@@ -871,15 +871,15 @@ func validateOpCreateEvaluationInput(v *CreateEvaluationInput) error {
return nil
}
invalidParams := smithy.InvalidParamsError{Context: "CreateEvaluationInput"}
- if v.EvaluationDataSourceId == nil {
- invalidParams.Add(smithy.NewErrParamRequired("EvaluationDataSourceId"))
- }
if v.EvaluationId == nil {
invalidParams.Add(smithy.NewErrParamRequired("EvaluationId"))
}
if v.MLModelId == nil {
invalidParams.Add(smithy.NewErrParamRequired("MLModelId"))
}
+ if v.EvaluationDataSourceId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("EvaluationDataSourceId"))
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
@@ -1003,15 +1003,15 @@ func validateOpDeleteTagsInput(v *DeleteTagsInput) error {
return nil
}
invalidParams := smithy.InvalidParamsError{Context: "DeleteTagsInput"}
- if len(v.ResourceType) == 0 {
- invalidParams.Add(smithy.NewErrParamRequired("ResourceType"))
- }
if v.TagKeys == nil {
invalidParams.Add(smithy.NewErrParamRequired("TagKeys"))
}
if v.ResourceId == nil {
invalidParams.Add(smithy.NewErrParamRequired("ResourceId"))
}
+ if len(v.ResourceType) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("ResourceType"))
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
@@ -1102,15 +1102,15 @@ func validateOpPredictInput(v *PredictInput) error {
return nil
}
invalidParams := smithy.InvalidParamsError{Context: "PredictInput"}
+ if v.MLModelId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MLModelId"))
+ }
if v.Record == nil {
invalidParams.Add(smithy.NewErrParamRequired("Record"))
}
if v.PredictEndpoint == nil {
invalidParams.Add(smithy.NewErrParamRequired("PredictEndpoint"))
}
- if v.MLModelId == nil {
- invalidParams.Add(smithy.NewErrParamRequired("MLModelId"))
- }
if invalidParams.Len() > 0 {
return invalidParams
} else {
@@ -1141,12 +1141,12 @@ func validateOpUpdateDataSourceInput(v *UpdateDataSourceInput) error {
return nil
}
invalidParams := smithy.InvalidParamsError{Context: "UpdateDataSourceInput"}
- if v.DataSourceName == nil {
- invalidParams.Add(smithy.NewErrParamRequired("DataSourceName"))
- }
if v.DataSourceId == nil {
invalidParams.Add(smithy.NewErrParamRequired("DataSourceId"))
}
+ if v.DataSourceName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("DataSourceName"))
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
diff --git a/service/macie/go.mod b/service/macie/go.mod
index 01c7febcfe4..6d432511e57 100644
--- a/service/macie/go.mod
+++ b/service/macie/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/macie/go.sum b/service/macie/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/macie/go.sum
+++ b/service/macie/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/macie2/api_op_EnableMacie.go b/service/macie2/api_op_EnableMacie.go
index d49d3bd8311..c7b7fd9c349 100644
--- a/service/macie2/api_op_EnableMacie.go
+++ b/service/macie2/api_op_EnableMacie.go
@@ -40,8 +40,8 @@ type EnableMacieInput struct {
// called Amazon CloudWatch Events).
FindingPublishingFrequency types.FindingPublishingFrequency
- // Specifies the status for the account. To enable Amazon Macie and start all Macie
- // activities for the account, set this value to ENABLED.
+ // Specifies the new status for the account. To enable Amazon Macie and start all
+ // Macie activities for the account, set this value to ENABLED.
Status types.MacieStatus
}
diff --git a/service/macie2/api_op_GetFindingsPublicationConfiguration.go b/service/macie2/api_op_GetFindingsPublicationConfiguration.go
new file mode 100644
index 00000000000..49326c0b15e
--- /dev/null
+++ b/service/macie2/api_op_GetFindingsPublicationConfiguration.go
@@ -0,0 +1,111 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package macie2
+
+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/macie2/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Retrieves the configuration settings for publishing findings to AWS Security
+// Hub.
+func (c *Client) GetFindingsPublicationConfiguration(ctx context.Context, params *GetFindingsPublicationConfigurationInput, optFns ...func(*Options)) (*GetFindingsPublicationConfigurationOutput, error) {
+ if params == nil {
+ params = &GetFindingsPublicationConfigurationInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetFindingsPublicationConfiguration", params, optFns, addOperationGetFindingsPublicationConfigurationMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetFindingsPublicationConfigurationOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetFindingsPublicationConfigurationInput struct {
+}
+
+type GetFindingsPublicationConfigurationOutput struct {
+
+ // The configuration settings that determine which findings are published to AWS
+ // Security Hub.
+ SecurityHubConfiguration *types.SecurityHubConfiguration
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetFindingsPublicationConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpGetFindingsPublicationConfiguration{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpGetFindingsPublicationConfiguration{}, 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_opGetFindingsPublicationConfiguration(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_opGetFindingsPublicationConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "macie2",
+ OperationName: "GetFindingsPublicationConfiguration",
+ }
+}
diff --git a/service/macie2/api_op_PutFindingsPublicationConfiguration.go b/service/macie2/api_op_PutFindingsPublicationConfiguration.go
new file mode 100644
index 00000000000..d5f3cba29a8
--- /dev/null
+++ b/service/macie2/api_op_PutFindingsPublicationConfiguration.go
@@ -0,0 +1,153 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package macie2
+
+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/macie2/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Updates the configuration settings for publishing findings to AWS Security Hub.
+func (c *Client) PutFindingsPublicationConfiguration(ctx context.Context, params *PutFindingsPublicationConfigurationInput, optFns ...func(*Options)) (*PutFindingsPublicationConfigurationOutput, error) {
+ if params == nil {
+ params = &PutFindingsPublicationConfigurationInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "PutFindingsPublicationConfiguration", params, optFns, addOperationPutFindingsPublicationConfigurationMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*PutFindingsPublicationConfigurationOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type PutFindingsPublicationConfigurationInput struct {
+
+ // A unique, case-sensitive token that you provide to ensure the idempotency of the
+ // request.
+ ClientToken *string
+
+ // The configuration settings that determine which findings to publish to AWS
+ // Security Hub.
+ SecurityHubConfiguration *types.SecurityHubConfiguration
+}
+
+type PutFindingsPublicationConfigurationOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationPutFindingsPublicationConfigurationMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsRestjson1_serializeOpPutFindingsPublicationConfiguration{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsRestjson1_deserializeOpPutFindingsPublicationConfiguration{}, 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 = addIdempotencyToken_opPutFindingsPublicationConfigurationMiddleware(stack, options); err != nil {
+ return err
+ }
+ if err = addOpPutFindingsPublicationConfigurationValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opPutFindingsPublicationConfiguration(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
+}
+
+type idempotencyToken_initializeOpPutFindingsPublicationConfiguration struct {
+ tokenProvider IdempotencyTokenProvider
+}
+
+func (*idempotencyToken_initializeOpPutFindingsPublicationConfiguration) ID() string {
+ return "OperationIdempotencyTokenAutoFill"
+}
+
+func (m *idempotencyToken_initializeOpPutFindingsPublicationConfiguration) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ if m.tokenProvider == nil {
+ return next.HandleInitialize(ctx, in)
+ }
+
+ input, ok := in.Parameters.(*PutFindingsPublicationConfigurationInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("expected middleware input to be of type *PutFindingsPublicationConfigurationInput ")
+ }
+
+ if input.ClientToken == nil {
+ t, err := m.tokenProvider.GetIdempotencyToken()
+ if err != nil {
+ return out, metadata, err
+ }
+ input.ClientToken = &t
+ }
+ return next.HandleInitialize(ctx, in)
+}
+func addIdempotencyToken_opPutFindingsPublicationConfigurationMiddleware(stack *middleware.Stack, cfg Options) error {
+ return stack.Initialize.Add(&idempotencyToken_initializeOpPutFindingsPublicationConfiguration{tokenProvider: cfg.IdempotencyTokenProvider}, middleware.Before)
+}
+
+func newServiceMetadataMiddleware_opPutFindingsPublicationConfiguration(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "macie2",
+ OperationName: "PutFindingsPublicationConfiguration",
+ }
+}
diff --git a/service/macie2/api_op_UpdateClassificationJob.go b/service/macie2/api_op_UpdateClassificationJob.go
index d149072b96b..2461e7ba8e2 100644
--- a/service/macie2/api_op_UpdateClassificationJob.go
+++ b/service/macie2/api_op_UpdateClassificationJob.go
@@ -51,13 +51,13 @@ type UpdateClassificationJobInput struct {
// for the job.
//
// * USER_PAUSED - Pauses the job temporarily. This value is valid
- // only if the job's current status is IDLE or RUNNING. If you specify this value
- // and the job's current status is RUNNING, Macie immediately begins to pause all
- // processing tasks for the job. If you pause a one-time job and you don't resume
- // it within 30 days, the job expires and Macie cancels the job. If you pause a
- // recurring job when its status is RUNNING and you don't resume it within 30 days,
- // the job run expires and Macie cancels the run. To check the expiration date,
- // refer to the UserPausedDetails.jobExpiresAt property.
+ // only if the job's current status is IDLE, PAUSED, or RUNNING. If you specify
+ // this value and the job's current status is RUNNING, Macie immediately begins to
+ // pause all processing tasks for the job. If you pause a one-time job and you
+ // don't resume it within 30 days, the job expires and Macie cancels the job. If
+ // you pause a recurring job when its status is RUNNING and you don't resume it
+ // within 30 days, the job run expires and Macie cancels the run. To check the
+ // expiration date, refer to the UserPausedDetails.jobExpiresAt property.
//
// This member is required.
JobStatus types.JobStatus
diff --git a/service/macie2/deserializers.go b/service/macie2/deserializers.go
index 4cc67809a62..dbbf7cbbdf0 100644
--- a/service/macie2/deserializers.go
+++ b/service/macie2/deserializers.go
@@ -4502,6 +4502,171 @@ func awsRestjson1_deserializeOpDocumentGetFindingsFilterOutput(v **GetFindingsFi
return nil
}
+type awsRestjson1_deserializeOpGetFindingsPublicationConfiguration struct {
+}
+
+func (*awsRestjson1_deserializeOpGetFindingsPublicationConfiguration) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpGetFindingsPublicationConfiguration) 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_deserializeOpErrorGetFindingsPublicationConfiguration(response, &metadata)
+ }
+ output := &GetFindingsPublicationConfigurationOutput{}
+ 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_deserializeOpDocumentGetFindingsPublicationConfigurationOutput(&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_deserializeOpErrorGetFindingsPublicationConfiguration(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("ConflictException", errorCode):
+ return awsRestjson1_deserializeErrorConflictException(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("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_deserializeOpDocumentGetFindingsPublicationConfigurationOutput(v **GetFindingsPublicationConfigurationOutput, 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 *GetFindingsPublicationConfigurationOutput
+ if *v == nil {
+ sv = &GetFindingsPublicationConfigurationOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "securityHubConfiguration":
+ if err := awsRestjson1_deserializeDocumentSecurityHubConfiguration(&sv.SecurityHubConfiguration, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
type awsRestjson1_deserializeOpGetFindingStatistics struct {
}
@@ -7347,6 +7512,107 @@ func awsRestjson1_deserializeOpDocumentPutClassificationExportConfigurationOutpu
return nil
}
+type awsRestjson1_deserializeOpPutFindingsPublicationConfiguration struct {
+}
+
+func (*awsRestjson1_deserializeOpPutFindingsPublicationConfiguration) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsRestjson1_deserializeOpPutFindingsPublicationConfiguration) 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_deserializeOpErrorPutFindingsPublicationConfiguration(response, &metadata)
+ }
+ output := &PutFindingsPublicationConfigurationOutput{}
+ out.Result = output
+
+ return out, metadata, err
+}
+
+func awsRestjson1_deserializeOpErrorPutFindingsPublicationConfiguration(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("ConflictException", errorCode):
+ return awsRestjson1_deserializeErrorConflictException(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("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
+
+ }
+}
+
type awsRestjson1_deserializeOpTagResource struct {
}
@@ -13965,6 +14231,55 @@ func awsRestjson1_deserializeDocumentScoping(v **types.Scoping, value interface{
return nil
}
+func awsRestjson1_deserializeDocumentSecurityHubConfiguration(v **types.SecurityHubConfiguration, 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.SecurityHubConfiguration
+ if *v == nil {
+ sv = &types.SecurityHubConfiguration{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "publishClassificationFindings":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected __boolean to be of type *bool, got %T instead", value)
+ }
+ sv.PublishClassificationFindings = jtv
+ }
+
+ case "publishPolicyFindings":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected __boolean to be of type *bool, got %T instead", value)
+ }
+ sv.PublishPolicyFindings = jtv
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsRestjson1_deserializeDocumentSensitiveData(v *[]types.SensitiveDataItem, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
diff --git a/service/macie2/go.mod b/service/macie2/go.mod
index f6f461d03e1..caaf85d2571 100644
--- a/service/macie2/go.mod
+++ b/service/macie2/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/macie2/go.sum b/service/macie2/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/macie2/go.sum
+++ b/service/macie2/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/macie2/serializers.go b/service/macie2/serializers.go
index ddf4455d14b..fa12e000b55 100644
--- a/service/macie2/serializers.go
+++ b/service/macie2/serializers.go
@@ -1973,6 +1973,51 @@ func awsRestjson1_serializeOpHttpBindingsGetFindingsFilterInput(v *GetFindingsFi
return nil
}
+type awsRestjson1_serializeOpGetFindingsPublicationConfiguration struct {
+}
+
+func (*awsRestjson1_serializeOpGetFindingsPublicationConfiguration) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpGetFindingsPublicationConfiguration) 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.(*GetFindingsPublicationConfigurationInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/findings-publication-configuration")
+ 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 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_serializeOpHttpBindingsGetFindingsPublicationConfigurationInput(v *GetFindingsPublicationConfigurationInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
type awsRestjson1_serializeOpGetFindingStatistics struct {
}
@@ -3005,6 +3050,81 @@ func awsRestjson1_serializeOpDocumentPutClassificationExportConfigurationInput(v
return nil
}
+type awsRestjson1_serializeOpPutFindingsPublicationConfiguration struct {
+}
+
+func (*awsRestjson1_serializeOpPutFindingsPublicationConfiguration) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsRestjson1_serializeOpPutFindingsPublicationConfiguration) 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.(*PutFindingsPublicationConfigurationInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ opPath, opQuery := httpbinding.SplitURI("/findings-publication-configuration")
+ request.URL.Path = smithyhttp.JoinPath(request.URL.Path, opPath)
+ request.URL.RawQuery = smithyhttp.JoinRawQuery(request.URL.RawQuery, opQuery)
+ request.Method = "PUT"
+ restEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
+ if err != nil {
+ return out, metadata, &smithy.SerializationError{Err: err}
+ }
+
+ restEncoder.SetHeader("Content-Type").String("application/json")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsRestjson1_serializeOpDocumentPutFindingsPublicationConfigurationInput(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_serializeOpHttpBindingsPutFindingsPublicationConfigurationInput(v *PutFindingsPublicationConfigurationInput, encoder *httpbinding.Encoder) error {
+ if v == nil {
+ return fmt.Errorf("unsupported serialization of nil %T", v)
+ }
+
+ return nil
+}
+
+func awsRestjson1_serializeOpDocumentPutFindingsPublicationConfigurationInput(v *PutFindingsPublicationConfigurationInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.ClientToken != nil {
+ ok := object.Key("clientToken")
+ ok.String(*v.ClientToken)
+ }
+
+ if v.SecurityHubConfiguration != nil {
+ ok := object.Key("securityHubConfiguration")
+ if err := awsRestjson1_serializeDocumentSecurityHubConfiguration(v.SecurityHubConfiguration, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
type awsRestjson1_serializeOpTagResource struct {
}
@@ -4165,6 +4285,23 @@ func awsRestjson1_serializeDocumentScoping(v *types.Scoping, value smithyjson.Va
return nil
}
+func awsRestjson1_serializeDocumentSecurityHubConfiguration(v *types.SecurityHubConfiguration, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ {
+ ok := object.Key("publishClassificationFindings")
+ ok.Boolean(v.PublishClassificationFindings)
+ }
+
+ {
+ ok := object.Key("publishPolicyFindings")
+ ok.Boolean(v.PublishPolicyFindings)
+ }
+
+ return nil
+}
+
func awsRestjson1_serializeDocumentSimpleScopeTerm(v *types.SimpleScopeTerm, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
diff --git a/service/macie2/types/types.go b/service/macie2/types/types.go
index 14f6b22ab60..b500af87068 100644
--- a/service/macie2/types/types.go
+++ b/service/macie2/types/types.go
@@ -487,7 +487,9 @@ type Cell struct {
// identifier. For example, 1 for column A, 2 for column B, and so on.
Column int64
- // The name of the column that contains the data, if available.
+ // The name of the column that contains the data, if available. This value is also
+ // null if Amazon Macie detects sensitive data in the name of any column in the
+ // file.
ColumnName *string
// The row number of the row that contains the data.
@@ -1330,9 +1332,10 @@ type Occurrences struct {
// Word document or non-binary text file, such as an HTML, JSON, TXT, or XML file.
// Each object specifies the line that contains the data, and the position of the
// data on that line. This value is often null for file types that are supported by
- // Cell, Page, or Record objects. Exceptions are the locations of: data in
+ // Cell, Page, or Record objects. Exceptions are the locations of data in:
// unstructured sections of an otherwise structured file, such as a comment in a
- // file; and, data in a malformed file that Amazon Macie analyzes as plain text.
+ // file; a malformed file that Amazon Macie analyzes as plain text; and, a CSV or
+ // TSV file that has any column names that contain sensitive data.
LineRanges []Range
// An array of objects, one for each occurrence of sensitive data in a binary text
@@ -1422,10 +1425,12 @@ type Range struct {
type Record struct {
// The path, as a JSONPath expression, to the field in the record that contains the
- // data. If the name of an element exceeds 20 characters, Amazon Macie truncates
- // the name by removing characters from the beginning of the name. If the resulting
- // full path exceeds 250 characters, Macie also truncates the path, starting with
- // the first element in the path, until the path contains 250 or fewer characters.
+ // data. If Amazon Macie detects sensitive data in the name of any element in the
+ // path, Macie omits this field. If the name of an element exceeds 20 characters,
+ // Macie truncates the name by removing characters from the beginning of the name.
+ // If the resulting full path exceeds 250 characters, Macie also truncates the
+ // path, starting with the first element in the path, until the path contains 250
+ // or fewer characters.
JsonPath *string
// The record index, starting from 0, for the record that contains the data.
@@ -1610,6 +1615,30 @@ type Scoping struct {
Includes *JobScopingBlock
}
+// Specifies configuration settings that determine which findings are published to
+// AWS Security Hub automatically. For information about how Macie publishes
+// findings to Security Hub, see Amazon Macie integration with Security Hub
+// (https://docs.aws.amazon.com/macie/latest/user/securityhub-integration.html) in
+// the Amazon Macie User Guide.
+type SecurityHubConfiguration struct {
+
+ // Specifies whether to publish sensitive data findings to AWS Security Hub. If you
+ // set this value to true, Amazon Macie automatically publishes all sensitive data
+ // findings that weren't suppressed by a findings filter. The default value is
+ // false.
+ //
+ // This member is required.
+ PublishClassificationFindings bool
+
+ // Specifies whether to publish policy findings to AWS Security Hub. If you set
+ // this value to true, Amazon Macie automatically publishes all new and updated
+ // policy findings that weren't suppressed by a findings filter. The default value
+ // is true.
+ //
+ // This member is required.
+ PublishPolicyFindings bool
+}
+
// Provides information about the category, types, and occurrences of sensitive
// data that produced a sensitive data finding.
type SensitiveDataItem struct {
diff --git a/service/macie2/validators.go b/service/macie2/validators.go
index 98dacd15b66..e3e8b649a81 100644
--- a/service/macie2/validators.go
+++ b/service/macie2/validators.go
@@ -430,6 +430,26 @@ func (m *validateOpPutClassificationExportConfiguration) HandleInitialize(ctx co
return next.HandleInitialize(ctx, in)
}
+type validateOpPutFindingsPublicationConfiguration struct {
+}
+
+func (*validateOpPutFindingsPublicationConfiguration) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpPutFindingsPublicationConfiguration) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*PutFindingsPublicationConfigurationInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpPutFindingsPublicationConfigurationInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpTagResource struct {
}
@@ -654,6 +674,10 @@ func addOpPutClassificationExportConfigurationValidationMiddleware(stack *middle
return stack.Initialize.Add(&validateOpPutClassificationExportConfiguration{}, middleware.After)
}
+func addOpPutFindingsPublicationConfigurationValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpPutFindingsPublicationConfiguration{}, middleware.After)
+}
+
func addOpTagResourceValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpTagResource{}, middleware.After)
}
@@ -787,6 +811,18 @@ func validateS3JobDefinition(v *types.S3JobDefinition) error {
}
}
+func validateSecurityHubConfiguration(v *types.SecurityHubConfiguration) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "SecurityHubConfiguration"}
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpAcceptInvitationInput(v *AcceptInvitationInput) error {
if v == nil {
return nil
@@ -1129,6 +1165,23 @@ func validateOpPutClassificationExportConfigurationInput(v *PutClassificationExp
}
}
+func validateOpPutFindingsPublicationConfigurationInput(v *PutFindingsPublicationConfigurationInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "PutFindingsPublicationConfigurationInput"}
+ if v.SecurityHubConfiguration != nil {
+ if err := validateSecurityHubConfiguration(v.SecurityHubConfiguration); err != nil {
+ invalidParams.AddNested("SecurityHubConfiguration", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpTagResourceInput(v *TagResourceInput) error {
if v == nil {
return nil
diff --git a/service/managedblockchain/go.mod b/service/managedblockchain/go.mod
index eb9b4c67253..18e599718c3 100644
--- a/service/managedblockchain/go.mod
+++ b/service/managedblockchain/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/managedblockchain/go.sum b/service/managedblockchain/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/managedblockchain/go.sum
+++ b/service/managedblockchain/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/marketplacecatalog/go.mod b/service/marketplacecatalog/go.mod
index 1f29a2f5994..e54e75abd69 100644
--- a/service/marketplacecatalog/go.mod
+++ b/service/marketplacecatalog/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/marketplacecatalog/go.sum b/service/marketplacecatalog/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/marketplacecatalog/go.sum
+++ b/service/marketplacecatalog/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/marketplacecommerceanalytics/go.mod b/service/marketplacecommerceanalytics/go.mod
index a20588f7f25..7d1235f6142 100644
--- a/service/marketplacecommerceanalytics/go.mod
+++ b/service/marketplacecommerceanalytics/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/marketplacecommerceanalytics/go.sum b/service/marketplacecommerceanalytics/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/marketplacecommerceanalytics/go.sum
+++ b/service/marketplacecommerceanalytics/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/marketplaceentitlementservice/go.mod b/service/marketplaceentitlementservice/go.mod
index d4430b1facb..d71c47f2179 100644
--- a/service/marketplaceentitlementservice/go.mod
+++ b/service/marketplaceentitlementservice/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/marketplaceentitlementservice/go.sum b/service/marketplaceentitlementservice/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/marketplaceentitlementservice/go.sum
+++ b/service/marketplaceentitlementservice/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/marketplacemetering/go.mod b/service/marketplacemetering/go.mod
index aa8ba08b620..b21aa2e3a15 100644
--- a/service/marketplacemetering/go.mod
+++ b/service/marketplacemetering/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/marketplacemetering/go.sum b/service/marketplacemetering/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/marketplacemetering/go.sum
+++ b/service/marketplacemetering/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/mediaconnect/go.mod b/service/mediaconnect/go.mod
index ed3c509feb3..9284a413145 100644
--- a/service/mediaconnect/go.mod
+++ b/service/mediaconnect/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/mediaconnect/go.sum b/service/mediaconnect/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/mediaconnect/go.sum
+++ b/service/mediaconnect/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/mediaconvert/go.mod b/service/mediaconvert/go.mod
index 42894d71af6..d1a907e8628 100644
--- a/service/mediaconvert/go.mod
+++ b/service/mediaconvert/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/mediaconvert/go.sum b/service/mediaconvert/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/mediaconvert/go.sum
+++ b/service/mediaconvert/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/medialive/deserializers.go b/service/medialive/deserializers.go
index d978792932f..1ecad518dfe 100644
--- a/service/medialive/deserializers.go
+++ b/service/medialive/deserializers.go
@@ -26797,6 +26797,11 @@ func awsRestjson1_deserializeDocumentVideoSelector(v **types.VideoSelector, valu
sv.ColorSpace = types.VideoSelectorColorSpace(jtv)
}
+ case "colorSpaceSettings":
+ if err := awsRestjson1_deserializeDocumentVideoSelectorColorSpaceSettings(&sv.ColorSpaceSettings, value); err != nil {
+ return err
+ }
+
case "colorSpaceUsage":
if value != nil {
jtv, ok := value.(string)
@@ -26820,6 +26825,42 @@ func awsRestjson1_deserializeDocumentVideoSelector(v **types.VideoSelector, valu
return nil
}
+func awsRestjson1_deserializeDocumentVideoSelectorColorSpaceSettings(v **types.VideoSelectorColorSpaceSettings, 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.VideoSelectorColorSpaceSettings
+ if *v == nil {
+ sv = &types.VideoSelectorColorSpaceSettings{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "hdr10Settings":
+ if err := awsRestjson1_deserializeDocumentHdr10Settings(&sv.Hdr10Settings, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsRestjson1_deserializeDocumentVideoSelectorPid(v **types.VideoSelectorPid, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
diff --git a/service/medialive/go.mod b/service/medialive/go.mod
index e0789144413..1f2a3d5b350 100644
--- a/service/medialive/go.mod
+++ b/service/medialive/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/medialive/go.sum b/service/medialive/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/medialive/go.sum
+++ b/service/medialive/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/medialive/serializers.go b/service/medialive/serializers.go
index 89bc4ede9b8..df039194a0d 100644
--- a/service/medialive/serializers.go
+++ b/service/medialive/serializers.go
@@ -9695,6 +9695,13 @@ func awsRestjson1_serializeDocumentVideoSelector(v *types.VideoSelector, value s
ok.String(string(v.ColorSpace))
}
+ if v.ColorSpaceSettings != nil {
+ ok := object.Key("colorSpaceSettings")
+ if err := awsRestjson1_serializeDocumentVideoSelectorColorSpaceSettings(v.ColorSpaceSettings, ok); err != nil {
+ return err
+ }
+ }
+
if len(v.ColorSpaceUsage) > 0 {
ok := object.Key("colorSpaceUsage")
ok.String(string(v.ColorSpaceUsage))
@@ -9710,6 +9717,20 @@ func awsRestjson1_serializeDocumentVideoSelector(v *types.VideoSelector, value s
return nil
}
+func awsRestjson1_serializeDocumentVideoSelectorColorSpaceSettings(v *types.VideoSelectorColorSpaceSettings, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Hdr10Settings != nil {
+ ok := object.Key("hdr10Settings")
+ if err := awsRestjson1_serializeDocumentHdr10Settings(v.Hdr10Settings, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsRestjson1_serializeDocumentVideoSelectorPid(v *types.VideoSelectorPid, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
diff --git a/service/medialive/types/enums.go b/service/medialive/types/enums.go
index a7cbec1a8a3..534af3a3859 100644
--- a/service/medialive/types/enums.go
+++ b/service/medialive/types/enums.go
@@ -4774,9 +4774,11 @@ type VideoSelectorColorSpace string
// Enum values for VideoSelectorColorSpace
const (
- VideoSelectorColorSpaceFollow VideoSelectorColorSpace = "FOLLOW"
- VideoSelectorColorSpaceRec601 VideoSelectorColorSpace = "REC_601"
- VideoSelectorColorSpaceRec709 VideoSelectorColorSpace = "REC_709"
+ VideoSelectorColorSpaceFollow VideoSelectorColorSpace = "FOLLOW"
+ VideoSelectorColorSpaceHdr10 VideoSelectorColorSpace = "HDR10"
+ VideoSelectorColorSpaceHlg2020 VideoSelectorColorSpace = "HLG_2020"
+ VideoSelectorColorSpaceRec601 VideoSelectorColorSpace = "REC_601"
+ VideoSelectorColorSpaceRec709 VideoSelectorColorSpace = "REC_709"
)
// Values returns all known values for VideoSelectorColorSpace. Note that this can
@@ -4785,6 +4787,8 @@ const (
func (VideoSelectorColorSpace) Values() []VideoSelectorColorSpace {
return []VideoSelectorColorSpace{
"FOLLOW",
+ "HDR10",
+ "HLG_2020",
"REC_601",
"REC_709",
}
diff --git a/service/medialive/types/types.go b/service/medialive/types/types.go
index 901f798289e..e70e4b3f289 100644
--- a/service/medialive/types/types.go
+++ b/service/medialive/types/types.go
@@ -4786,6 +4786,9 @@ type VideoSelector struct {
// if any conversion will be performed.
ColorSpace VideoSelectorColorSpace
+ // Color space settings
+ ColorSpaceSettings *VideoSelectorColorSpaceSettings
+
// Applies only if colorSpace is a value other than follow. This field controls how
// the value in the colorSpace field will be used. fallback means that when the
// input does include color space data, that data will be used, but when the input
@@ -4800,6 +4803,13 @@ type VideoSelector struct {
SelectorSettings *VideoSelectorSettings
}
+// Video Selector Color Space Settings
+type VideoSelectorColorSpaceSettings struct {
+
+ // Hdr10 Settings
+ Hdr10Settings *Hdr10Settings
+}
+
// Video Selector Pid
type VideoSelectorPid struct {
diff --git a/service/mediapackage/go.mod b/service/mediapackage/go.mod
index f95c65a9d76..8e11dda67c3 100644
--- a/service/mediapackage/go.mod
+++ b/service/mediapackage/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/mediapackage/go.sum b/service/mediapackage/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/mediapackage/go.sum
+++ b/service/mediapackage/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/mediapackagevod/go.mod b/service/mediapackagevod/go.mod
index fbfbedaeea8..9c64fa538d8 100644
--- a/service/mediapackagevod/go.mod
+++ b/service/mediapackagevod/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/mediapackagevod/go.sum b/service/mediapackagevod/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/mediapackagevod/go.sum
+++ b/service/mediapackagevod/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/mediastore/go.mod b/service/mediastore/go.mod
index c5a69995cb9..31069e5e0c1 100644
--- a/service/mediastore/go.mod
+++ b/service/mediastore/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/mediastore/go.sum b/service/mediastore/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/mediastore/go.sum
+++ b/service/mediastore/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/mediastoredata/go.mod b/service/mediastoredata/go.mod
index 4a58361613d..3d5b2ad030b 100644
--- a/service/mediastoredata/go.mod
+++ b/service/mediastoredata/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/mediastoredata/go.sum b/service/mediastoredata/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/mediastoredata/go.sum
+++ b/service/mediastoredata/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/mediatailor/go.mod b/service/mediatailor/go.mod
index e525272d688..25e05794745 100644
--- a/service/mediatailor/go.mod
+++ b/service/mediatailor/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/mediatailor/go.sum b/service/mediatailor/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/mediatailor/go.sum
+++ b/service/mediatailor/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/migrationhub/go.mod b/service/migrationhub/go.mod
index aedfb317cd8..143aa666397 100644
--- a/service/migrationhub/go.mod
+++ b/service/migrationhub/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/migrationhub/go.sum b/service/migrationhub/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/migrationhub/go.sum
+++ b/service/migrationhub/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/migrationhubconfig/go.mod b/service/migrationhubconfig/go.mod
index 3a14088403c..386620cd436 100644
--- a/service/migrationhubconfig/go.mod
+++ b/service/migrationhubconfig/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/migrationhubconfig/go.sum b/service/migrationhubconfig/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/migrationhubconfig/go.sum
+++ b/service/migrationhubconfig/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/mobile/go.mod b/service/mobile/go.mod
index f7fcfa6c985..589351792b8 100644
--- a/service/mobile/go.mod
+++ b/service/mobile/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/mobile/go.sum b/service/mobile/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/mobile/go.sum
+++ b/service/mobile/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/mq/go.mod b/service/mq/go.mod
index b651f15af43..687975d61a1 100644
--- a/service/mq/go.mod
+++ b/service/mq/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/mq/go.sum b/service/mq/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/mq/go.sum
+++ b/service/mq/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/mturk/go.mod b/service/mturk/go.mod
index 1da6c2de97e..dd63a31988b 100644
--- a/service/mturk/go.mod
+++ b/service/mturk/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/mturk/go.sum b/service/mturk/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/mturk/go.sum
+++ b/service/mturk/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/mwaa/go.mod b/service/mwaa/go.mod
index 97c9b3cd4fd..eb93c569132 100644
--- a/service/mwaa/go.mod
+++ b/service/mwaa/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/mwaa/go.sum b/service/mwaa/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/mwaa/go.sum
+++ b/service/mwaa/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/neptune/go.mod b/service/neptune/go.mod
index e7de513fa91..12513a130f1 100644
--- a/service/neptune/go.mod
+++ b/service/neptune/go.mod
@@ -5,7 +5,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.0.4
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/neptune/go.sum b/service/neptune/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/neptune/go.sum
+++ b/service/neptune/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/networkfirewall/go.mod b/service/networkfirewall/go.mod
index 79865cd858d..01d0627a849 100644
--- a/service/networkfirewall/go.mod
+++ b/service/networkfirewall/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/networkfirewall/go.sum b/service/networkfirewall/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/networkfirewall/go.sum
+++ b/service/networkfirewall/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/networkmanager/go.mod b/service/networkmanager/go.mod
index 11183ce4f89..2e393b5a55f 100644
--- a/service/networkmanager/go.mod
+++ b/service/networkmanager/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/networkmanager/go.sum b/service/networkmanager/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/networkmanager/go.sum
+++ b/service/networkmanager/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/opsworks/go.mod b/service/opsworks/go.mod
index 5915a891235..44a615b38bc 100644
--- a/service/opsworks/go.mod
+++ b/service/opsworks/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/opsworks/go.sum b/service/opsworks/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/opsworks/go.sum
+++ b/service/opsworks/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/opsworkscm/go.mod b/service/opsworkscm/go.mod
index 7eac8f77bff..af4f4e3e593 100644
--- a/service/opsworkscm/go.mod
+++ b/service/opsworkscm/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/opsworkscm/go.sum b/service/opsworkscm/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/opsworkscm/go.sum
+++ b/service/opsworkscm/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/organizations/go.mod b/service/organizations/go.mod
index 646d2141636..97980ed9c65 100644
--- a/service/organizations/go.mod
+++ b/service/organizations/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/organizations/go.sum b/service/organizations/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/organizations/go.sum
+++ b/service/organizations/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/outposts/go.mod b/service/outposts/go.mod
index ed7a260510c..854861a21d3 100644
--- a/service/outposts/go.mod
+++ b/service/outposts/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/outposts/go.sum b/service/outposts/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/outposts/go.sum
+++ b/service/outposts/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/personalize/go.mod b/service/personalize/go.mod
index 5e60631cc78..df7df6f3cfd 100644
--- a/service/personalize/go.mod
+++ b/service/personalize/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/personalize/go.sum b/service/personalize/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/personalize/go.sum
+++ b/service/personalize/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/personalizeevents/go.mod b/service/personalizeevents/go.mod
index b5d143b8d68..f6d11603ab3 100644
--- a/service/personalizeevents/go.mod
+++ b/service/personalizeevents/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/personalizeevents/go.sum b/service/personalizeevents/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/personalizeevents/go.sum
+++ b/service/personalizeevents/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/personalizeruntime/go.mod b/service/personalizeruntime/go.mod
index 8aee88c7e5c..792e7e896ff 100644
--- a/service/personalizeruntime/go.mod
+++ b/service/personalizeruntime/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/personalizeruntime/go.sum b/service/personalizeruntime/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/personalizeruntime/go.sum
+++ b/service/personalizeruntime/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/pi/go.mod b/service/pi/go.mod
index 0e498105ec4..4992c89b3cc 100644
--- a/service/pi/go.mod
+++ b/service/pi/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/pi/go.sum b/service/pi/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/pi/go.sum
+++ b/service/pi/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/pinpoint/deserializers.go b/service/pinpoint/deserializers.go
index 37bc025fc8b..db26f35568b 100644
--- a/service/pinpoint/deserializers.go
+++ b/service/pinpoint/deserializers.go
@@ -24386,6 +24386,15 @@ func awsRestjson1_deserializeDocumentJourneyLimits(v **types.JourneyLimits, valu
sv.EndpointReentryCap = int32(i64)
}
+ case "EndpointReentryInterval":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected __string to be of type string, got %T instead", value)
+ }
+ sv.EndpointReentryInterval = ptr.String(jtv)
+ }
+
case "MessagesPerSecond":
if value != nil {
jtv, ok := value.(json.Number)
@@ -24548,6 +24557,15 @@ func awsRestjson1_deserializeDocumentJourneyResponse(v **types.JourneyResponse,
sv.RefreshFrequency = ptr.String(jtv)
}
+ case "RefreshOnSegmentUpdate":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected __boolean to be of type *bool, got %T instead", value)
+ }
+ sv.RefreshOnSegmentUpdate = jtv
+ }
+
case "Schedule":
if err := awsRestjson1_deserializeDocumentJourneySchedule(&sv.Schedule, value); err != nil {
return err
@@ -24581,6 +24599,15 @@ func awsRestjson1_deserializeDocumentJourneyResponse(v **types.JourneyResponse,
return err
}
+ case "WaitForQuietTime":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected __boolean to be of type *bool, got %T instead", value)
+ }
+ sv.WaitForQuietTime = jtv
+ }
+
default:
_, _ = key, value
diff --git a/service/pinpoint/go.mod b/service/pinpoint/go.mod
index db1b248e355..f5ec4f51ba7 100644
--- a/service/pinpoint/go.mod
+++ b/service/pinpoint/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/pinpoint/go.sum b/service/pinpoint/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/pinpoint/go.sum
+++ b/service/pinpoint/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/pinpoint/serializers.go b/service/pinpoint/serializers.go
index 04eb64c9b92..791d8d498dd 100644
--- a/service/pinpoint/serializers.go
+++ b/service/pinpoint/serializers.go
@@ -9793,6 +9793,11 @@ func awsRestjson1_serializeDocumentJourneyLimits(v *types.JourneyLimits, value s
ok.Integer(v.EndpointReentryCap)
}
+ if v.EndpointReentryInterval != nil {
+ ok := object.Key("EndpointReentryInterval")
+ ok.String(*v.EndpointReentryInterval)
+ }
+
if v.MessagesPerSecond != 0 {
ok := object.Key("MessagesPerSecond")
ok.Integer(v.MessagesPerSecond)
@@ -11696,6 +11701,11 @@ func awsRestjson1_serializeDocumentWriteJourneyRequest(v *types.WriteJourneyRequ
ok.String(*v.RefreshFrequency)
}
+ if v.RefreshOnSegmentUpdate {
+ ok := object.Key("RefreshOnSegmentUpdate")
+ ok.Boolean(v.RefreshOnSegmentUpdate)
+ }
+
if v.Schedule != nil {
ok := object.Key("Schedule")
if err := awsRestjson1_serializeDocumentJourneySchedule(v.Schedule, ok); err != nil {
@@ -11720,6 +11730,11 @@ func awsRestjson1_serializeDocumentWriteJourneyRequest(v *types.WriteJourneyRequ
ok.String(string(v.State))
}
+ if v.WaitForQuietTime {
+ ok := object.Key("WaitForQuietTime")
+ ok.Boolean(v.WaitForQuietTime)
+ }
+
return nil
}
diff --git a/service/pinpoint/types/enums.go b/service/pinpoint/types/enums.go
index 0c2c1aa432f..b7fe877562b 100644
--- a/service/pinpoint/types/enums.go
+++ b/service/pinpoint/types/enums.go
@@ -455,6 +455,7 @@ const (
StateCompleted State = "COMPLETED"
StateCancelled State = "CANCELLED"
StateClosed State = "CLOSED"
+ StatePaused State = "PAUSED"
)
// Values returns all known values for State. Note that this can be expanded in the
@@ -467,6 +468,7 @@ func (State) Values() []State {
"COMPLETED",
"CANCELLED",
"CLOSED",
+ "PAUSED",
}
}
diff --git a/service/pinpoint/types/types.go b/service/pinpoint/types/types.go
index 7b6555c0d32..c04655db1d4 100644
--- a/service/pinpoint/types/types.go
+++ b/service/pinpoint/types/types.go
@@ -3533,6 +3533,10 @@ type JourneyLimits struct {
// number of times, set this value to 0.
EndpointReentryCap int32
+ // Minimum time that must pass before an endpoint can re-enter a given journey. The
+ // duration should use an ISO 8601 format, such as PT1H.
+ EndpointReentryInterval *string
+
// The maximum number of messages that the journey can send each second.
MessagesPerSecond int32
}
@@ -3613,6 +3617,9 @@ type JourneyResponse struct {
// the journey, as a duration in ISO 8601 format.
RefreshFrequency *string
+ // Specifies whether a journey should be refreshed on segment update.
+ RefreshOnSegmentUpdate bool
+
// The schedule settings for the journey.
Schedule *JourneySchedule
@@ -3652,6 +3659,10 @@ type JourneyResponse struct {
// This object is not used or supported.
Tags map[string]string
+
+ // Specifies whether endpoints in quiet hours should enter a wait till the end of
+ // their quiet hours.
+ WaitForQuietTime bool
}
// Specifies the schedule settings for a journey.
@@ -3721,14 +3732,20 @@ type JourneysResponse struct {
// Changes the status of a journey.
type JourneyStateRequest struct {
- // The status of the journey. Currently, the only supported value is CANCELLED. If
- // you cancel a journey, Amazon Pinpoint continues to perform activities that are
- // currently in progress, until those activities are complete. Amazon Pinpoint also
- // continues to collect and aggregate analytics data for those activities, until
- // they are complete, and any activities that were complete when you cancelled the
- // journey. After you cancel a journey, you can't add, change, or remove any
- // activities from the journey. In addition, Amazon Pinpoint stops evaluating the
- // journey and doesn't perform any activities that haven't started.
+ // The status of the journey. Currently, Supported values are ACTIVE, PAUSED, and
+ // CANCELLED If you cancel a journey, Amazon Pinpoint continues to perform
+ // activities that are currently in progress, until those activities are complete.
+ // Amazon Pinpoint also continues to collect and aggregate analytics data for those
+ // activities, until they are complete, and any activities that were complete when
+ // you cancelled the journey. After you cancel a journey, you can't add, change, or
+ // remove any activities from the journey. In addition, Amazon Pinpoint stops
+ // evaluating the journey and doesn't perform any activities that haven't started.
+ // When the journey is paused, Amazon Pinpoint continues to perform activities that
+ // are currently in progress, until those activities are complete. Endpoints will
+ // stop entering journeys when the journey is paused and will resume entering the
+ // journey after the journey is resumed. For wait activities, wait time is paused
+ // when the journey is paused. Currently, PAUSED only supports journeys with a
+ // segment refresh interval.
State State
}
@@ -5913,6 +5930,9 @@ type WriteJourneyRequest struct {
// the journey, as a duration in ISO 8601 format.
RefreshFrequency *string
+ // Specifies whether a journey should be refreshed on segment update.
+ RefreshOnSegmentUpdate bool
+
// The schedule settings for the journey.
Schedule *JourneySchedule
@@ -5934,10 +5954,14 @@ type WriteJourneyRequest struct {
// scheduled start time. If a journey's status is ACTIVE, you can't add, change, or
// remove activities from it.
//
- // The CANCELLED, COMPLETED, and CLOSED values are not
- // supported in requests to create or update a journey. To cancel a journey, use
- // the Journey State resource.
+ // PAUSED, CANCELLED, COMPLETED, and CLOSED states are
+ // not supported in requests to create or update a journey. To cancel, pause, or
+ // resume a journey, use the Journey State resource.
State State
+
+ // Specifies whether endpoints in quiet hours should enter a wait till the end of
+ // their quiet hours.
+ WaitForQuietTime bool
}
// Specifies the configuration, dimension, and other settings for a segment. A
diff --git a/service/pinpointemail/go.mod b/service/pinpointemail/go.mod
index 6995494c438..f4156c4150d 100644
--- a/service/pinpointemail/go.mod
+++ b/service/pinpointemail/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/pinpointemail/go.sum b/service/pinpointemail/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/pinpointemail/go.sum
+++ b/service/pinpointemail/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/pinpointsmsvoice/go.mod b/service/pinpointsmsvoice/go.mod
index 3a587744d8d..047e7dfbdf4 100644
--- a/service/pinpointsmsvoice/go.mod
+++ b/service/pinpointsmsvoice/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/pinpointsmsvoice/go.sum b/service/pinpointsmsvoice/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/pinpointsmsvoice/go.sum
+++ b/service/pinpointsmsvoice/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/polly/go.mod b/service/polly/go.mod
index 269e2705d6b..26e7fdcc569 100644
--- a/service/polly/go.mod
+++ b/service/polly/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/polly/go.sum b/service/polly/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/polly/go.sum
+++ b/service/polly/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/pricing/go.mod b/service/pricing/go.mod
index 0a613b8407e..72a00fe4c4b 100644
--- a/service/pricing/go.mod
+++ b/service/pricing/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/pricing/go.sum b/service/pricing/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/pricing/go.sum
+++ b/service/pricing/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/pricing/validators.go b/service/pricing/validators.go
index b8fbe705481..82e705e0a88 100644
--- a/service/pricing/validators.go
+++ b/service/pricing/validators.go
@@ -63,14 +63,14 @@ func validateFilter(v *types.Filter) error {
return nil
}
invalidParams := smithy.InvalidParamsError{Context: "Filter"}
- if v.Value == nil {
- invalidParams.Add(smithy.NewErrParamRequired("Value"))
+ if len(v.Type) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("Type"))
}
if v.Field == nil {
invalidParams.Add(smithy.NewErrParamRequired("Field"))
}
- if len(v.Type) == 0 {
- invalidParams.Add(smithy.NewErrParamRequired("Type"))
+ if v.Value == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Value"))
}
if invalidParams.Len() > 0 {
return invalidParams
@@ -101,12 +101,12 @@ func validateOpGetAttributeValuesInput(v *GetAttributeValuesInput) error {
return nil
}
invalidParams := smithy.InvalidParamsError{Context: "GetAttributeValuesInput"}
- if v.AttributeName == nil {
- invalidParams.Add(smithy.NewErrParamRequired("AttributeName"))
- }
if v.ServiceCode == nil {
invalidParams.Add(smithy.NewErrParamRequired("ServiceCode"))
}
+ if v.AttributeName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("AttributeName"))
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
diff --git a/service/qldb/go.mod b/service/qldb/go.mod
index f8ec4071964..06c6966b7d9 100644
--- a/service/qldb/go.mod
+++ b/service/qldb/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/qldb/go.sum b/service/qldb/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/qldb/go.sum
+++ b/service/qldb/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/qldbsession/go.mod b/service/qldbsession/go.mod
index 7ae6815906c..348e260f536 100644
--- a/service/qldbsession/go.mod
+++ b/service/qldbsession/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/qldbsession/go.sum b/service/qldbsession/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/qldbsession/go.sum
+++ b/service/qldbsession/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/quicksight/go.mod b/service/quicksight/go.mod
index 027eb460630..3a760558a9b 100644
--- a/service/quicksight/go.mod
+++ b/service/quicksight/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/quicksight/go.sum b/service/quicksight/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/quicksight/go.sum
+++ b/service/quicksight/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/ram/go.mod b/service/ram/go.mod
index db4d2047dcd..82ada6f9fc4 100644
--- a/service/ram/go.mod
+++ b/service/ram/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/ram/go.sum b/service/ram/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/ram/go.sum
+++ b/service/ram/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/rds/go.mod b/service/rds/go.mod
index 1346c07e915..794526e67be 100644
--- a/service/rds/go.mod
+++ b/service/rds/go.mod
@@ -5,7 +5,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.0.4
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/rds/go.sum b/service/rds/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/rds/go.sum
+++ b/service/rds/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/rdsdata/go.mod b/service/rdsdata/go.mod
index aaa694e6686..e8329a9ce49 100644
--- a/service/rdsdata/go.mod
+++ b/service/rdsdata/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/rdsdata/go.sum b/service/rdsdata/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/rdsdata/go.sum
+++ b/service/rdsdata/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/redshift/api_op_AuthorizeEndpointAccess.go b/service/redshift/api_op_AuthorizeEndpointAccess.go
new file mode 100644
index 00000000000..a0c6f52088e
--- /dev/null
+++ b/service/redshift/api_op_AuthorizeEndpointAccess.go
@@ -0,0 +1,151 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package redshift
+
+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/redshift/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Grants access to a cluster.
+func (c *Client) AuthorizeEndpointAccess(ctx context.Context, params *AuthorizeEndpointAccessInput, optFns ...func(*Options)) (*AuthorizeEndpointAccessOutput, error) {
+ if params == nil {
+ params = &AuthorizeEndpointAccessInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "AuthorizeEndpointAccess", params, optFns, addOperationAuthorizeEndpointAccessMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*AuthorizeEndpointAccessOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type AuthorizeEndpointAccessInput struct {
+
+ // The AWS account ID to grant access to.
+ //
+ // This member is required.
+ Account *string
+
+ // The cluster identifier of the cluster to grant access to.
+ ClusterIdentifier *string
+
+ // The virtual private cloud (VPC) identifiers to grant access to.
+ VpcIds []string
+}
+
+// Describes an endpoint authorization for authorizing Redshift-managed VPC
+// endpoint access to a cluster across AWS accounts.
+type AuthorizeEndpointAccessOutput struct {
+
+ // Indicates whether all VPCs in the grantee account are allowed access to the
+ // cluster.
+ AllowedAllVPCs bool
+
+ // The VPCs allowed access to the cluster.
+ AllowedVPCs []string
+
+ // The time (UTC) when the authorization was created.
+ AuthorizeTime *time.Time
+
+ // The cluster identifier.
+ ClusterIdentifier *string
+
+ // The status of the cluster.
+ ClusterStatus *string
+
+ // The number of Redshift-managed VPC endpoints created for the authorization.
+ EndpointCount int32
+
+ // The AWS account ID of the grantee of the cluster.
+ Grantee *string
+
+ // The AWS account ID of the cluster owner.
+ Grantor *string
+
+ // The status of the authorization action.
+ Status types.AuthorizationStatus
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationAuthorizeEndpointAccessMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsquery_serializeOpAuthorizeEndpointAccess{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsquery_deserializeOpAuthorizeEndpointAccess{}, 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 = addOpAuthorizeEndpointAccessValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opAuthorizeEndpointAccess(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_opAuthorizeEndpointAccess(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "redshift",
+ OperationName: "AuthorizeEndpointAccess",
+ }
+}
diff --git a/service/redshift/api_op_CreateEndpointAccess.go b/service/redshift/api_op_CreateEndpointAccess.go
new file mode 100644
index 00000000000..c53d9fe3db5
--- /dev/null
+++ b/service/redshift/api_op_CreateEndpointAccess.go
@@ -0,0 +1,167 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package redshift
+
+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/redshift/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Creates a Redshift-managed VPC endpoint.
+func (c *Client) CreateEndpointAccess(ctx context.Context, params *CreateEndpointAccessInput, optFns ...func(*Options)) (*CreateEndpointAccessOutput, error) {
+ if params == nil {
+ params = &CreateEndpointAccessInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "CreateEndpointAccess", params, optFns, addOperationCreateEndpointAccessMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*CreateEndpointAccessOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type CreateEndpointAccessInput struct {
+
+ // The Redshift-managed VPC endpoint name. An endpoint name must contain 1-30
+ // characters. Valid characters are A-Z, a-z, 0-9, and hyphen(-). The first
+ // character must be a letter. The name can't contain two consecutive hyphens or
+ // end with a hyphen.
+ //
+ // This member is required.
+ EndpointName *string
+
+ // The subnet group from which Amazon Redshift chooses the subnet to deploy the
+ // endpoint.
+ //
+ // This member is required.
+ SubnetGroupName *string
+
+ // The cluster identifier of the cluster to access.
+ ClusterIdentifier *string
+
+ // The AWS account ID of the owner of the cluster. This is only required if the
+ // cluster is in another AWS account.
+ ResourceOwner *string
+
+ // The security group that defines the ports, protocols, and sources for inbound
+ // traffic that you are authorizing into your endpoint.
+ VpcSecurityGroupIds []string
+}
+
+// Describes a Redshift-managed VPC endpoint.
+type CreateEndpointAccessOutput struct {
+
+ // The DNS address of the endpoint.
+ Address *string
+
+ // The cluster identifier of the cluster associated with the endpoint.
+ ClusterIdentifier *string
+
+ // The time (UTC) that the endpoint was created.
+ EndpointCreateTime *time.Time
+
+ // The name of the endpoint.
+ EndpointName *string
+
+ // The status of the endpoint.
+ EndpointStatus *string
+
+ // The port number on which the cluster accepts incoming connections.
+ Port int32
+
+ // The AWS account ID of the owner of the cluster.
+ ResourceOwner *string
+
+ // The subnet group name where Amazon Redshift chooses to deploy the endpoint.
+ SubnetGroupName *string
+
+ // The connection endpoint for connecting to an Amazon Redshift cluster through the
+ // proxy.
+ VpcEndpoint *types.VpcEndpoint
+
+ // The security groups associated with the endpoint.
+ VpcSecurityGroups []types.VpcSecurityGroupMembership
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationCreateEndpointAccessMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsquery_serializeOpCreateEndpointAccess{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsquery_deserializeOpCreateEndpointAccess{}, 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 = addOpCreateEndpointAccessValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateEndpointAccess(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_opCreateEndpointAccess(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "redshift",
+ OperationName: "CreateEndpointAccess",
+ }
+}
diff --git a/service/redshift/api_op_DeleteEndpointAccess.go b/service/redshift/api_op_DeleteEndpointAccess.go
new file mode 100644
index 00000000000..c22178ae155
--- /dev/null
+++ b/service/redshift/api_op_DeleteEndpointAccess.go
@@ -0,0 +1,147 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package redshift
+
+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/redshift/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Deletes a Redshift-managed VPC endpoint.
+func (c *Client) DeleteEndpointAccess(ctx context.Context, params *DeleteEndpointAccessInput, optFns ...func(*Options)) (*DeleteEndpointAccessOutput, error) {
+ if params == nil {
+ params = &DeleteEndpointAccessInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DeleteEndpointAccess", params, optFns, addOperationDeleteEndpointAccessMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DeleteEndpointAccessOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DeleteEndpointAccessInput struct {
+
+ // The Redshift-managed VPC endpoint to delete.
+ //
+ // This member is required.
+ EndpointName *string
+}
+
+// Describes a Redshift-managed VPC endpoint.
+type DeleteEndpointAccessOutput struct {
+
+ // The DNS address of the endpoint.
+ Address *string
+
+ // The cluster identifier of the cluster associated with the endpoint.
+ ClusterIdentifier *string
+
+ // The time (UTC) that the endpoint was created.
+ EndpointCreateTime *time.Time
+
+ // The name of the endpoint.
+ EndpointName *string
+
+ // The status of the endpoint.
+ EndpointStatus *string
+
+ // The port number on which the cluster accepts incoming connections.
+ Port int32
+
+ // The AWS account ID of the owner of the cluster.
+ ResourceOwner *string
+
+ // The subnet group name where Amazon Redshift chooses to deploy the endpoint.
+ SubnetGroupName *string
+
+ // The connection endpoint for connecting to an Amazon Redshift cluster through the
+ // proxy.
+ VpcEndpoint *types.VpcEndpoint
+
+ // The security groups associated with the endpoint.
+ VpcSecurityGroups []types.VpcSecurityGroupMembership
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDeleteEndpointAccessMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsquery_serializeOpDeleteEndpointAccess{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsquery_deserializeOpDeleteEndpointAccess{}, 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 = addOpDeleteEndpointAccessValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteEndpointAccess(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_opDeleteEndpointAccess(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "redshift",
+ OperationName: "DeleteEndpointAccess",
+ }
+}
diff --git a/service/redshift/api_op_DescribeEndpointAccess.go b/service/redshift/api_op_DescribeEndpointAccess.go
new file mode 100644
index 00000000000..f8b1caf695f
--- /dev/null
+++ b/service/redshift/api_op_DescribeEndpointAccess.go
@@ -0,0 +1,130 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package redshift
+
+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/redshift/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Describes a Redshift-managed VPC endpoint.
+func (c *Client) DescribeEndpointAccess(ctx context.Context, params *DescribeEndpointAccessInput, optFns ...func(*Options)) (*DescribeEndpointAccessOutput, error) {
+ if params == nil {
+ params = &DescribeEndpointAccessInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DescribeEndpointAccess", params, optFns, addOperationDescribeEndpointAccessMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DescribeEndpointAccessOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DescribeEndpointAccessInput struct {
+
+ // The cluster identifier associated with the described endpoint.
+ ClusterIdentifier *string
+
+ // The name of the endpoint to be described.
+ EndpointName *string
+
+ // Reserved for Amazon Redshift internal use.
+ Marker *string
+
+ // Reserved for Amazon Redshift internal use.
+ MaxRecords *int32
+
+ // The AWS account ID of the owner of the cluster.
+ ResourceOwner *string
+
+ // The virtual private cloud (VPC) identifier with access to the cluster.
+ VpcId *string
+}
+
+type DescribeEndpointAccessOutput struct {
+
+ // The list of endpoints with access to the cluster.
+ EndpointAccessList []types.EndpointAccess
+
+ // Reserved for Amazon Redshift internal use.
+ Marker *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDescribeEndpointAccessMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsquery_serializeOpDescribeEndpointAccess{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsquery_deserializeOpDescribeEndpointAccess{}, 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_opDescribeEndpointAccess(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_opDescribeEndpointAccess(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "redshift",
+ OperationName: "DescribeEndpointAccess",
+ }
+}
diff --git a/service/redshift/api_op_DescribeEndpointAuthorization.go b/service/redshift/api_op_DescribeEndpointAuthorization.go
new file mode 100644
index 00000000000..d54693ba4a7
--- /dev/null
+++ b/service/redshift/api_op_DescribeEndpointAuthorization.go
@@ -0,0 +1,130 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package redshift
+
+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/redshift/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Describes an endpoint authorization.
+func (c *Client) DescribeEndpointAuthorization(ctx context.Context, params *DescribeEndpointAuthorizationInput, optFns ...func(*Options)) (*DescribeEndpointAuthorizationOutput, error) {
+ if params == nil {
+ params = &DescribeEndpointAuthorizationInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DescribeEndpointAuthorization", params, optFns, addOperationDescribeEndpointAuthorizationMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DescribeEndpointAuthorizationOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DescribeEndpointAuthorizationInput struct {
+
+ // The AWS account ID of either the cluster owner (grantor) or grantee. If Grantee
+ // parameter is true, then the Account value is of the grantor.
+ Account *string
+
+ // The cluster identifier of the cluster to access.
+ ClusterIdentifier *string
+
+ // Indicates whether to check authorization from a grantor or grantee point of
+ // view. If true, Amazon Redshift returns endpoint authorizations that you've been
+ // granted. If false (default), checks authorization from a grantor point of view.
+ Grantee *bool
+
+ // Reserved for Amazon Redshift internal use.
+ Marker *string
+
+ // Reserved for Amazon Redshift internal use.
+ MaxRecords *int32
+}
+
+type DescribeEndpointAuthorizationOutput struct {
+
+ // The authorizations to an endpoint.
+ EndpointAuthorizationList []types.EndpointAuthorization
+
+ // Reserved for Amazon Redshift internal use.
+ Marker *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDescribeEndpointAuthorizationMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsquery_serializeOpDescribeEndpointAuthorization{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsquery_deserializeOpDescribeEndpointAuthorization{}, 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_opDescribeEndpointAuthorization(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_opDescribeEndpointAuthorization(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "redshift",
+ OperationName: "DescribeEndpointAuthorization",
+ }
+}
diff --git a/service/redshift/api_op_ModifyEndpointAccess.go b/service/redshift/api_op_ModifyEndpointAccess.go
new file mode 100644
index 00000000000..e8cc25cdf06
--- /dev/null
+++ b/service/redshift/api_op_ModifyEndpointAccess.go
@@ -0,0 +1,151 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package redshift
+
+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/redshift/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Modifies a Redshift-managed VPC endpoint.
+func (c *Client) ModifyEndpointAccess(ctx context.Context, params *ModifyEndpointAccessInput, optFns ...func(*Options)) (*ModifyEndpointAccessOutput, error) {
+ if params == nil {
+ params = &ModifyEndpointAccessInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "ModifyEndpointAccess", params, optFns, addOperationModifyEndpointAccessMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ModifyEndpointAccessOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ModifyEndpointAccessInput struct {
+
+ // The endpoint to be modified.
+ //
+ // This member is required.
+ EndpointName *string
+
+ // The complete list of VPC security groups associated with the endpoint after the
+ // endpoint is modified.
+ VpcSecurityGroupIds []string
+}
+
+// Describes a Redshift-managed VPC endpoint.
+type ModifyEndpointAccessOutput struct {
+
+ // The DNS address of the endpoint.
+ Address *string
+
+ // The cluster identifier of the cluster associated with the endpoint.
+ ClusterIdentifier *string
+
+ // The time (UTC) that the endpoint was created.
+ EndpointCreateTime *time.Time
+
+ // The name of the endpoint.
+ EndpointName *string
+
+ // The status of the endpoint.
+ EndpointStatus *string
+
+ // The port number on which the cluster accepts incoming connections.
+ Port int32
+
+ // The AWS account ID of the owner of the cluster.
+ ResourceOwner *string
+
+ // The subnet group name where Amazon Redshift chooses to deploy the endpoint.
+ SubnetGroupName *string
+
+ // The connection endpoint for connecting to an Amazon Redshift cluster through the
+ // proxy.
+ VpcEndpoint *types.VpcEndpoint
+
+ // The security groups associated with the endpoint.
+ VpcSecurityGroups []types.VpcSecurityGroupMembership
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationModifyEndpointAccessMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsquery_serializeOpModifyEndpointAccess{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsquery_deserializeOpModifyEndpointAccess{}, 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 = addOpModifyEndpointAccessValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opModifyEndpointAccess(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_opModifyEndpointAccess(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "redshift",
+ OperationName: "ModifyEndpointAccess",
+ }
+}
diff --git a/service/redshift/api_op_RevokeEndpointAccess.go b/service/redshift/api_op_RevokeEndpointAccess.go
new file mode 100644
index 00000000000..85f9a167947
--- /dev/null
+++ b/service/redshift/api_op_RevokeEndpointAccess.go
@@ -0,0 +1,150 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package redshift
+
+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/redshift/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+ "time"
+)
+
+// Revokes access to a cluster.
+func (c *Client) RevokeEndpointAccess(ctx context.Context, params *RevokeEndpointAccessInput, optFns ...func(*Options)) (*RevokeEndpointAccessOutput, error) {
+ if params == nil {
+ params = &RevokeEndpointAccessInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "RevokeEndpointAccess", params, optFns, addOperationRevokeEndpointAccessMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*RevokeEndpointAccessOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type RevokeEndpointAccessInput struct {
+
+ // The AWS account ID whose access is to be revoked.
+ Account *string
+
+ // The cluster to revoke access from.
+ ClusterIdentifier *string
+
+ // Indicates whether to force the revoke action. If true, the Redshift-managed VPC
+ // endpoints associated with the endpoint authorization are also deleted.
+ Force bool
+
+ // The virtual private cloud (VPC) identifiers for which access is to be revoked.
+ VpcIds []string
+}
+
+// Describes an endpoint authorization for authorizing Redshift-managed VPC
+// endpoint access to a cluster across AWS accounts.
+type RevokeEndpointAccessOutput struct {
+
+ // Indicates whether all VPCs in the grantee account are allowed access to the
+ // cluster.
+ AllowedAllVPCs bool
+
+ // The VPCs allowed access to the cluster.
+ AllowedVPCs []string
+
+ // The time (UTC) when the authorization was created.
+ AuthorizeTime *time.Time
+
+ // The cluster identifier.
+ ClusterIdentifier *string
+
+ // The status of the cluster.
+ ClusterStatus *string
+
+ // The number of Redshift-managed VPC endpoints created for the authorization.
+ EndpointCount int32
+
+ // The AWS account ID of the grantee of the cluster.
+ Grantee *string
+
+ // The AWS account ID of the cluster owner.
+ Grantor *string
+
+ // The status of the authorization action.
+ Status types.AuthorizationStatus
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationRevokeEndpointAccessMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsquery_serializeOpRevokeEndpointAccess{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsquery_deserializeOpRevokeEndpointAccess{}, 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_opRevokeEndpointAccess(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_opRevokeEndpointAccess(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "redshift",
+ OperationName: "RevokeEndpointAccess",
+ }
+}
diff --git a/service/redshift/deserializers.go b/service/redshift/deserializers.go
index 218b4818be0..e8ec65e0c4e 100644
--- a/service/redshift/deserializers.go
+++ b/service/redshift/deserializers.go
@@ -267,6 +267,129 @@ func awsAwsquery_deserializeOpErrorAuthorizeClusterSecurityGroupIngress(response
}
}
+type awsAwsquery_deserializeOpAuthorizeEndpointAccess struct {
+}
+
+func (*awsAwsquery_deserializeOpAuthorizeEndpointAccess) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsquery_deserializeOpAuthorizeEndpointAccess) 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, awsAwsquery_deserializeOpErrorAuthorizeEndpointAccess(response, &metadata)
+ }
+ output := &AuthorizeEndpointAccessOutput{}
+ 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)
+ t, err = decoder.GetElement("AuthorizeEndpointAccessResult")
+ 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
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeOpDocumentAuthorizeEndpointAccessOutput(&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 awsAwsquery_deserializeOpErrorAuthorizeEndpointAccess(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 := awsxml.GetErrorResponseComponents(errorBody, false)
+ if err != nil {
+ return err
+ }
+ if reqID := errorComponents.RequestID; len(reqID) != 0 {
+ awsmiddleware.SetRequestIDMetadata(metadata, reqID)
+ }
+ if len(errorComponents.Code) != 0 {
+ errorCode = errorComponents.Code
+ }
+ if len(errorComponents.Message) != 0 {
+ errorMessage = errorComponents.Message
+ }
+ errorBody.Seek(0, io.SeekStart)
+ switch {
+ case strings.EqualFold("ClusterNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("EndpointAuthorizationAlreadyExistsFault", errorCode):
+ return awsAwsquery_deserializeErrorEndpointAuthorizationAlreadyExistsFault(response, errorBody)
+
+ case strings.EqualFold("EndpointAuthorizationsPerClusterLimitExceededFault", errorCode):
+ return awsAwsquery_deserializeErrorEndpointAuthorizationsPerClusterLimitExceededFault(response, errorBody)
+
+ case strings.EqualFold("InvalidAuthorizationStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidAuthorizationStateFault(response, errorBody)
+
+ case strings.EqualFold("InvalidClusterStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidClusterStateFault(response, errorBody)
+
+ case strings.EqualFold("UnsupportedOperationFault", errorCode):
+ return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
type awsAwsquery_deserializeOpAuthorizeSnapshotAccess struct {
}
@@ -1506,6 +1629,141 @@ func awsAwsquery_deserializeOpErrorCreateClusterSubnetGroup(response *smithyhttp
}
}
+type awsAwsquery_deserializeOpCreateEndpointAccess struct {
+}
+
+func (*awsAwsquery_deserializeOpCreateEndpointAccess) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsquery_deserializeOpCreateEndpointAccess) 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, awsAwsquery_deserializeOpErrorCreateEndpointAccess(response, &metadata)
+ }
+ output := &CreateEndpointAccessOutput{}
+ 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)
+ t, err = decoder.GetElement("CreateEndpointAccessResult")
+ 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
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeOpDocumentCreateEndpointAccessOutput(&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 awsAwsquery_deserializeOpErrorCreateEndpointAccess(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 := awsxml.GetErrorResponseComponents(errorBody, false)
+ if err != nil {
+ return err
+ }
+ if reqID := errorComponents.RequestID; len(reqID) != 0 {
+ awsmiddleware.SetRequestIDMetadata(metadata, reqID)
+ }
+ if len(errorComponents.Code) != 0 {
+ errorCode = errorComponents.Code
+ }
+ if len(errorComponents.Message) != 0 {
+ errorMessage = errorComponents.Message
+ }
+ errorBody.Seek(0, io.SeekStart)
+ switch {
+ case strings.EqualFold("AccessToClusterDeniedFault", errorCode):
+ return awsAwsquery_deserializeErrorAccessToClusterDeniedFault(response, errorBody)
+
+ case strings.EqualFold("ClusterNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("ClusterSubnetGroupNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorClusterSubnetGroupNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("EndpointAlreadyExistsFault", errorCode):
+ return awsAwsquery_deserializeErrorEndpointAlreadyExistsFault(response, errorBody)
+
+ case strings.EqualFold("EndpointsPerAuthorizationLimitExceededFault", errorCode):
+ return awsAwsquery_deserializeErrorEndpointsPerAuthorizationLimitExceededFault(response, errorBody)
+
+ case strings.EqualFold("EndpointsPerClusterLimitExceededFault", errorCode):
+ return awsAwsquery_deserializeErrorEndpointsPerClusterLimitExceededFault(response, errorBody)
+
+ case strings.EqualFold("InvalidClusterSecurityGroupStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidClusterSecurityGroupStateFault(response, errorBody)
+
+ case strings.EqualFold("InvalidClusterStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidClusterStateFault(response, errorBody)
+
+ case strings.EqualFold("UnauthorizedOperation", errorCode):
+ return awsAwsquery_deserializeErrorUnauthorizedOperation(response, errorBody)
+
+ case strings.EqualFold("UnsupportedOperationFault", errorCode):
+ return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
type awsAwsquery_deserializeOpCreateEventSubscription struct {
}
@@ -2917,14 +3175,14 @@ func awsAwsquery_deserializeOpErrorDeleteClusterSubnetGroup(response *smithyhttp
}
}
-type awsAwsquery_deserializeOpDeleteEventSubscription struct {
+type awsAwsquery_deserializeOpDeleteEndpointAccess struct {
}
-func (*awsAwsquery_deserializeOpDeleteEventSubscription) ID() string {
+func (*awsAwsquery_deserializeOpDeleteEndpointAccess) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDeleteEventSubscription) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDeleteEndpointAccess) 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)
@@ -2938,21 +3196,141 @@ func (m *awsAwsquery_deserializeOpDeleteEventSubscription) HandleDeserialize(ctx
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDeleteEventSubscription(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDeleteEndpointAccess(response, &metadata)
}
- output := &DeleteEventSubscriptionOutput{}
+ output := &DeleteEndpointAccessOutput{}
out.Result = output
- if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
+ 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 discard response body, %w", err),
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
}
}
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("DeleteEndpointAccessResult")
+ 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
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeOpDocumentDeleteEndpointAccessOutput(&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 awsAwsquery_deserializeOpErrorDeleteEventSubscription(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDeleteEndpointAccess(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 := awsxml.GetErrorResponseComponents(errorBody, false)
+ if err != nil {
+ return err
+ }
+ if reqID := errorComponents.RequestID; len(reqID) != 0 {
+ awsmiddleware.SetRequestIDMetadata(metadata, reqID)
+ }
+ if len(errorComponents.Code) != 0 {
+ errorCode = errorComponents.Code
+ }
+ if len(errorComponents.Message) != 0 {
+ errorMessage = errorComponents.Message
+ }
+ errorBody.Seek(0, io.SeekStart)
+ switch {
+ case strings.EqualFold("ClusterNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("EndpointNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorEndpointNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("InvalidClusterSecurityGroupStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidClusterSecurityGroupStateFault(response, errorBody)
+
+ case strings.EqualFold("InvalidClusterStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidClusterStateFault(response, errorBody)
+
+ case strings.EqualFold("InvalidEndpointStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidEndpointStateFault(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsAwsquery_deserializeOpDeleteEventSubscription struct {
+}
+
+func (*awsAwsquery_deserializeOpDeleteEventSubscription) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsquery_deserializeOpDeleteEventSubscription) 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, awsAwsquery_deserializeOpErrorDeleteEventSubscription(response, &metadata)
+ }
+ output := &DeleteEventSubscriptionOutput{}
+ out.Result = output
+
+ if _, err = io.Copy(ioutil.Discard, response.Body); err != nil {
+ return out, metadata, &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to discard response body, %w", err),
+ }
+ }
+
+ return out, metadata, err
+}
+
+func awsAwsquery_deserializeOpErrorDeleteEventSubscription(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)}
@@ -4728,14 +5106,14 @@ func awsAwsquery_deserializeOpErrorDescribeDefaultClusterParameters(response *sm
}
}
-type awsAwsquery_deserializeOpDescribeEventCategories struct {
+type awsAwsquery_deserializeOpDescribeEndpointAccess struct {
}
-func (*awsAwsquery_deserializeOpDescribeEventCategories) ID() string {
+func (*awsAwsquery_deserializeOpDescribeEndpointAccess) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeEventCategories) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeEndpointAccess) 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)
@@ -4749,9 +5127,9 @@ func (m *awsAwsquery_deserializeOpDescribeEventCategories) HandleDeserialize(ctx
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeEventCategories(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeEndpointAccess(response, &metadata)
}
- output := &DescribeEventCategoriesOutput{}
+ output := &DescribeEndpointAccessOutput{}
out.Result = output
var buff [1024]byte
@@ -4772,7 +5150,7 @@ func (m *awsAwsquery_deserializeOpDescribeEventCategories) HandleDeserialize(ctx
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeEventCategoriesResult")
+ t, err = decoder.GetElement("DescribeEndpointAccessResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -4784,7 +5162,7 @@ func (m *awsAwsquery_deserializeOpDescribeEventCategories) HandleDeserialize(ctx
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeEventCategoriesOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeEndpointAccessOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -4798,7 +5176,7 @@ func (m *awsAwsquery_deserializeOpDescribeEventCategories) HandleDeserialize(ctx
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeEventCategories(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeEndpointAccess(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)}
@@ -4823,6 +5201,15 @@ func awsAwsquery_deserializeOpErrorDescribeEventCategories(response *smithyhttp.
}
errorBody.Seek(0, io.SeekStart)
switch {
+ case strings.EqualFold("ClusterNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("EndpointNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorEndpointNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("InvalidClusterStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidClusterStateFault(response, errorBody)
+
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
@@ -4833,14 +5220,14 @@ func awsAwsquery_deserializeOpErrorDescribeEventCategories(response *smithyhttp.
}
}
-type awsAwsquery_deserializeOpDescribeEvents struct {
+type awsAwsquery_deserializeOpDescribeEndpointAuthorization struct {
}
-func (*awsAwsquery_deserializeOpDescribeEvents) ID() string {
+func (*awsAwsquery_deserializeOpDescribeEndpointAuthorization) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeEvents) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeEndpointAuthorization) 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)
@@ -4854,9 +5241,9 @@ func (m *awsAwsquery_deserializeOpDescribeEvents) HandleDeserialize(ctx context.
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeEvents(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeEndpointAuthorization(response, &metadata)
}
- output := &DescribeEventsOutput{}
+ output := &DescribeEndpointAuthorizationOutput{}
out.Result = output
var buff [1024]byte
@@ -4877,7 +5264,7 @@ func (m *awsAwsquery_deserializeOpDescribeEvents) HandleDeserialize(ctx context.
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeEventsResult")
+ t, err = decoder.GetElement("DescribeEndpointAuthorizationResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -4889,7 +5276,7 @@ func (m *awsAwsquery_deserializeOpDescribeEvents) HandleDeserialize(ctx context.
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeEventsOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeEndpointAuthorizationOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -4903,7 +5290,7 @@ func (m *awsAwsquery_deserializeOpDescribeEvents) HandleDeserialize(ctx context.
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeEvents(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeEndpointAuthorization(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)}
@@ -4928,6 +5315,12 @@ func awsAwsquery_deserializeOpErrorDescribeEvents(response *smithyhttp.Response,
}
errorBody.Seek(0, io.SeekStart)
switch {
+ case strings.EqualFold("ClusterNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("UnsupportedOperationFault", errorCode):
+ return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody)
+
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
@@ -4938,14 +5331,14 @@ func awsAwsquery_deserializeOpErrorDescribeEvents(response *smithyhttp.Response,
}
}
-type awsAwsquery_deserializeOpDescribeEventSubscriptions struct {
+type awsAwsquery_deserializeOpDescribeEventCategories struct {
}
-func (*awsAwsquery_deserializeOpDescribeEventSubscriptions) ID() string {
+func (*awsAwsquery_deserializeOpDescribeEventCategories) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeEventSubscriptions) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeEventCategories) 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)
@@ -4959,9 +5352,9 @@ func (m *awsAwsquery_deserializeOpDescribeEventSubscriptions) HandleDeserialize(
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeEventSubscriptions(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeEventCategories(response, &metadata)
}
- output := &DescribeEventSubscriptionsOutput{}
+ output := &DescribeEventCategoriesOutput{}
out.Result = output
var buff [1024]byte
@@ -4982,7 +5375,7 @@ func (m *awsAwsquery_deserializeOpDescribeEventSubscriptions) HandleDeserialize(
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeEventSubscriptionsResult")
+ t, err = decoder.GetElement("DescribeEventCategoriesResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -4994,7 +5387,7 @@ func (m *awsAwsquery_deserializeOpDescribeEventSubscriptions) HandleDeserialize(
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeEventSubscriptionsOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeEventCategoriesOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5008,7 +5401,7 @@ func (m *awsAwsquery_deserializeOpDescribeEventSubscriptions) HandleDeserialize(
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeEventSubscriptions(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeEventCategories(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)}
@@ -5033,12 +5426,6 @@ func awsAwsquery_deserializeOpErrorDescribeEventSubscriptions(response *smithyht
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("InvalidTagFault", errorCode):
- return awsAwsquery_deserializeErrorInvalidTagFault(response, errorBody)
-
- case strings.EqualFold("SubscriptionNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorSubscriptionNotFoundFault(response, errorBody)
-
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
@@ -5049,14 +5436,14 @@ func awsAwsquery_deserializeOpErrorDescribeEventSubscriptions(response *smithyht
}
}
-type awsAwsquery_deserializeOpDescribeHsmClientCertificates struct {
+type awsAwsquery_deserializeOpDescribeEvents struct {
}
-func (*awsAwsquery_deserializeOpDescribeHsmClientCertificates) ID() string {
+func (*awsAwsquery_deserializeOpDescribeEvents) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeHsmClientCertificates) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeEvents) 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)
@@ -5070,9 +5457,9 @@ func (m *awsAwsquery_deserializeOpDescribeHsmClientCertificates) HandleDeseriali
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeHsmClientCertificates(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeEvents(response, &metadata)
}
- output := &DescribeHsmClientCertificatesOutput{}
+ output := &DescribeEventsOutput{}
out.Result = output
var buff [1024]byte
@@ -5093,7 +5480,7 @@ func (m *awsAwsquery_deserializeOpDescribeHsmClientCertificates) HandleDeseriali
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeHsmClientCertificatesResult")
+ t, err = decoder.GetElement("DescribeEventsResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5105,7 +5492,7 @@ func (m *awsAwsquery_deserializeOpDescribeHsmClientCertificates) HandleDeseriali
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeHsmClientCertificatesOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeEventsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5119,7 +5506,7 @@ func (m *awsAwsquery_deserializeOpDescribeHsmClientCertificates) HandleDeseriali
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeHsmClientCertificates(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeEvents(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)}
@@ -5144,12 +5531,6 @@ func awsAwsquery_deserializeOpErrorDescribeHsmClientCertificates(response *smith
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("HsmClientCertificateNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorHsmClientCertificateNotFoundFault(response, errorBody)
-
- case strings.EqualFold("InvalidTagFault", errorCode):
- return awsAwsquery_deserializeErrorInvalidTagFault(response, errorBody)
-
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
@@ -5160,14 +5541,14 @@ func awsAwsquery_deserializeOpErrorDescribeHsmClientCertificates(response *smith
}
}
-type awsAwsquery_deserializeOpDescribeHsmConfigurations struct {
+type awsAwsquery_deserializeOpDescribeEventSubscriptions struct {
}
-func (*awsAwsquery_deserializeOpDescribeHsmConfigurations) ID() string {
+func (*awsAwsquery_deserializeOpDescribeEventSubscriptions) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeHsmConfigurations) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeEventSubscriptions) 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)
@@ -5181,9 +5562,9 @@ func (m *awsAwsquery_deserializeOpDescribeHsmConfigurations) HandleDeserialize(c
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeHsmConfigurations(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeEventSubscriptions(response, &metadata)
}
- output := &DescribeHsmConfigurationsOutput{}
+ output := &DescribeEventSubscriptionsOutput{}
out.Result = output
var buff [1024]byte
@@ -5204,7 +5585,7 @@ func (m *awsAwsquery_deserializeOpDescribeHsmConfigurations) HandleDeserialize(c
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeHsmConfigurationsResult")
+ t, err = decoder.GetElement("DescribeEventSubscriptionsResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5216,7 +5597,7 @@ func (m *awsAwsquery_deserializeOpDescribeHsmConfigurations) HandleDeserialize(c
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeHsmConfigurationsOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeEventSubscriptionsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5230,7 +5611,7 @@ func (m *awsAwsquery_deserializeOpDescribeHsmConfigurations) HandleDeserialize(c
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeHsmConfigurations(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeEventSubscriptions(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)}
@@ -5255,12 +5636,12 @@ func awsAwsquery_deserializeOpErrorDescribeHsmConfigurations(response *smithyhtt
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("HsmConfigurationNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorHsmConfigurationNotFoundFault(response, errorBody)
-
case strings.EqualFold("InvalidTagFault", errorCode):
return awsAwsquery_deserializeErrorInvalidTagFault(response, errorBody)
+ case strings.EqualFold("SubscriptionNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorSubscriptionNotFoundFault(response, errorBody)
+
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
@@ -5271,14 +5652,14 @@ func awsAwsquery_deserializeOpErrorDescribeHsmConfigurations(response *smithyhtt
}
}
-type awsAwsquery_deserializeOpDescribeLoggingStatus struct {
+type awsAwsquery_deserializeOpDescribeHsmClientCertificates struct {
}
-func (*awsAwsquery_deserializeOpDescribeLoggingStatus) ID() string {
+func (*awsAwsquery_deserializeOpDescribeHsmClientCertificates) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeLoggingStatus) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeHsmClientCertificates) 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)
@@ -5292,9 +5673,9 @@ func (m *awsAwsquery_deserializeOpDescribeLoggingStatus) HandleDeserialize(ctx c
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeLoggingStatus(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeHsmClientCertificates(response, &metadata)
}
- output := &DescribeLoggingStatusOutput{}
+ output := &DescribeHsmClientCertificatesOutput{}
out.Result = output
var buff [1024]byte
@@ -5315,7 +5696,7 @@ func (m *awsAwsquery_deserializeOpDescribeLoggingStatus) HandleDeserialize(ctx c
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeLoggingStatusResult")
+ t, err = decoder.GetElement("DescribeHsmClientCertificatesResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5327,7 +5708,7 @@ func (m *awsAwsquery_deserializeOpDescribeLoggingStatus) HandleDeserialize(ctx c
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeLoggingStatusOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeHsmClientCertificatesOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5341,7 +5722,7 @@ func (m *awsAwsquery_deserializeOpDescribeLoggingStatus) HandleDeserialize(ctx c
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeLoggingStatus(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeHsmClientCertificates(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)}
@@ -5366,8 +5747,11 @@ func awsAwsquery_deserializeOpErrorDescribeLoggingStatus(response *smithyhttp.Re
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("ClusterNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
+ case strings.EqualFold("HsmClientCertificateNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorHsmClientCertificateNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("InvalidTagFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidTagFault(response, errorBody)
default:
genericError := &smithy.GenericAPIError{
@@ -5379,14 +5763,14 @@ func awsAwsquery_deserializeOpErrorDescribeLoggingStatus(response *smithyhttp.Re
}
}
-type awsAwsquery_deserializeOpDescribeNodeConfigurationOptions struct {
+type awsAwsquery_deserializeOpDescribeHsmConfigurations struct {
}
-func (*awsAwsquery_deserializeOpDescribeNodeConfigurationOptions) ID() string {
+func (*awsAwsquery_deserializeOpDescribeHsmConfigurations) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeNodeConfigurationOptions) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeHsmConfigurations) 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)
@@ -5400,9 +5784,9 @@ func (m *awsAwsquery_deserializeOpDescribeNodeConfigurationOptions) HandleDeseri
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeNodeConfigurationOptions(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeHsmConfigurations(response, &metadata)
}
- output := &DescribeNodeConfigurationOptionsOutput{}
+ output := &DescribeHsmConfigurationsOutput{}
out.Result = output
var buff [1024]byte
@@ -5423,7 +5807,7 @@ func (m *awsAwsquery_deserializeOpDescribeNodeConfigurationOptions) HandleDeseri
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeNodeConfigurationOptionsResult")
+ t, err = decoder.GetElement("DescribeHsmConfigurationsResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5435,7 +5819,7 @@ func (m *awsAwsquery_deserializeOpDescribeNodeConfigurationOptions) HandleDeseri
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeNodeConfigurationOptionsOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeHsmConfigurationsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5449,7 +5833,7 @@ func (m *awsAwsquery_deserializeOpDescribeNodeConfigurationOptions) HandleDeseri
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeNodeConfigurationOptions(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeHsmConfigurations(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)}
@@ -5474,17 +5858,11 @@ func awsAwsquery_deserializeOpErrorDescribeNodeConfigurationOptions(response *sm
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("AccessToSnapshotDeniedFault", errorCode):
- return awsAwsquery_deserializeErrorAccessToSnapshotDeniedFault(response, errorBody)
-
- case strings.EqualFold("ClusterNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
-
- case strings.EqualFold("ClusterSnapshotNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorClusterSnapshotNotFoundFault(response, errorBody)
+ case strings.EqualFold("HsmConfigurationNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorHsmConfigurationNotFoundFault(response, errorBody)
- case strings.EqualFold("InvalidClusterSnapshotStateFault", errorCode):
- return awsAwsquery_deserializeErrorInvalidClusterSnapshotStateFault(response, errorBody)
+ case strings.EqualFold("InvalidTagFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidTagFault(response, errorBody)
default:
genericError := &smithy.GenericAPIError{
@@ -5496,14 +5874,14 @@ func awsAwsquery_deserializeOpErrorDescribeNodeConfigurationOptions(response *sm
}
}
-type awsAwsquery_deserializeOpDescribeOrderableClusterOptions struct {
+type awsAwsquery_deserializeOpDescribeLoggingStatus struct {
}
-func (*awsAwsquery_deserializeOpDescribeOrderableClusterOptions) ID() string {
+func (*awsAwsquery_deserializeOpDescribeLoggingStatus) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeOrderableClusterOptions) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeLoggingStatus) 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)
@@ -5517,9 +5895,9 @@ func (m *awsAwsquery_deserializeOpDescribeOrderableClusterOptions) HandleDeseria
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeOrderableClusterOptions(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeLoggingStatus(response, &metadata)
}
- output := &DescribeOrderableClusterOptionsOutput{}
+ output := &DescribeLoggingStatusOutput{}
out.Result = output
var buff [1024]byte
@@ -5540,7 +5918,7 @@ func (m *awsAwsquery_deserializeOpDescribeOrderableClusterOptions) HandleDeseria
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeOrderableClusterOptionsResult")
+ t, err = decoder.GetElement("DescribeLoggingStatusResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5552,7 +5930,7 @@ func (m *awsAwsquery_deserializeOpDescribeOrderableClusterOptions) HandleDeseria
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeOrderableClusterOptionsOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeLoggingStatusOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5566,7 +5944,7 @@ func (m *awsAwsquery_deserializeOpDescribeOrderableClusterOptions) HandleDeseria
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeOrderableClusterOptions(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeLoggingStatus(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)}
@@ -5591,6 +5969,9 @@ func awsAwsquery_deserializeOpErrorDescribeOrderableClusterOptions(response *smi
}
errorBody.Seek(0, io.SeekStart)
switch {
+ case strings.EqualFold("ClusterNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
+
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
@@ -5601,14 +5982,14 @@ func awsAwsquery_deserializeOpErrorDescribeOrderableClusterOptions(response *smi
}
}
-type awsAwsquery_deserializeOpDescribeReservedNodeOfferings struct {
+type awsAwsquery_deserializeOpDescribeNodeConfigurationOptions struct {
}
-func (*awsAwsquery_deserializeOpDescribeReservedNodeOfferings) ID() string {
+func (*awsAwsquery_deserializeOpDescribeNodeConfigurationOptions) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeReservedNodeOfferings) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeNodeConfigurationOptions) 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)
@@ -5622,9 +6003,9 @@ func (m *awsAwsquery_deserializeOpDescribeReservedNodeOfferings) HandleDeseriali
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeReservedNodeOfferings(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeNodeConfigurationOptions(response, &metadata)
}
- output := &DescribeReservedNodeOfferingsOutput{}
+ output := &DescribeNodeConfigurationOptionsOutput{}
out.Result = output
var buff [1024]byte
@@ -5645,7 +6026,7 @@ func (m *awsAwsquery_deserializeOpDescribeReservedNodeOfferings) HandleDeseriali
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeReservedNodeOfferingsResult")
+ t, err = decoder.GetElement("DescribeNodeConfigurationOptionsResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5657,7 +6038,7 @@ func (m *awsAwsquery_deserializeOpDescribeReservedNodeOfferings) HandleDeseriali
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeReservedNodeOfferingsOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeNodeConfigurationOptionsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5671,7 +6052,7 @@ func (m *awsAwsquery_deserializeOpDescribeReservedNodeOfferings) HandleDeseriali
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeReservedNodeOfferings(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeNodeConfigurationOptions(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)}
@@ -5696,14 +6077,17 @@ func awsAwsquery_deserializeOpErrorDescribeReservedNodeOfferings(response *smith
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("DependentServiceUnavailableFault", errorCode):
- return awsAwsquery_deserializeErrorDependentServiceUnavailableFault(response, errorBody)
+ case strings.EqualFold("AccessToSnapshotDeniedFault", errorCode):
+ return awsAwsquery_deserializeErrorAccessToSnapshotDeniedFault(response, errorBody)
- case strings.EqualFold("ReservedNodeOfferingNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorReservedNodeOfferingNotFoundFault(response, errorBody)
+ case strings.EqualFold("ClusterNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
- case strings.EqualFold("UnsupportedOperationFault", errorCode):
- return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody)
+ case strings.EqualFold("ClusterSnapshotNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorClusterSnapshotNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("InvalidClusterSnapshotStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidClusterSnapshotStateFault(response, errorBody)
default:
genericError := &smithy.GenericAPIError{
@@ -5715,14 +6099,14 @@ func awsAwsquery_deserializeOpErrorDescribeReservedNodeOfferings(response *smith
}
}
-type awsAwsquery_deserializeOpDescribeReservedNodes struct {
+type awsAwsquery_deserializeOpDescribeOrderableClusterOptions struct {
}
-func (*awsAwsquery_deserializeOpDescribeReservedNodes) ID() string {
+func (*awsAwsquery_deserializeOpDescribeOrderableClusterOptions) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeReservedNodes) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeOrderableClusterOptions) 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)
@@ -5736,9 +6120,9 @@ func (m *awsAwsquery_deserializeOpDescribeReservedNodes) HandleDeserialize(ctx c
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeReservedNodes(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeOrderableClusterOptions(response, &metadata)
}
- output := &DescribeReservedNodesOutput{}
+ output := &DescribeOrderableClusterOptionsOutput{}
out.Result = output
var buff [1024]byte
@@ -5759,7 +6143,7 @@ func (m *awsAwsquery_deserializeOpDescribeReservedNodes) HandleDeserialize(ctx c
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeReservedNodesResult")
+ t, err = decoder.GetElement("DescribeOrderableClusterOptionsResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5771,7 +6155,7 @@ func (m *awsAwsquery_deserializeOpDescribeReservedNodes) HandleDeserialize(ctx c
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeReservedNodesOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeOrderableClusterOptionsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5785,7 +6169,7 @@ func (m *awsAwsquery_deserializeOpDescribeReservedNodes) HandleDeserialize(ctx c
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeReservedNodes(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeOrderableClusterOptions(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)}
@@ -5810,12 +6194,6 @@ func awsAwsquery_deserializeOpErrorDescribeReservedNodes(response *smithyhttp.Re
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("DependentServiceUnavailableFault", errorCode):
- return awsAwsquery_deserializeErrorDependentServiceUnavailableFault(response, errorBody)
-
- case strings.EqualFold("ReservedNodeNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorReservedNodeNotFoundFault(response, errorBody)
-
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
@@ -5826,14 +6204,14 @@ func awsAwsquery_deserializeOpErrorDescribeReservedNodes(response *smithyhttp.Re
}
}
-type awsAwsquery_deserializeOpDescribeResize struct {
+type awsAwsquery_deserializeOpDescribeReservedNodeOfferings struct {
}
-func (*awsAwsquery_deserializeOpDescribeResize) ID() string {
+func (*awsAwsquery_deserializeOpDescribeReservedNodeOfferings) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeResize) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeReservedNodeOfferings) 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)
@@ -5847,9 +6225,9 @@ func (m *awsAwsquery_deserializeOpDescribeResize) HandleDeserialize(ctx context.
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeResize(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeReservedNodeOfferings(response, &metadata)
}
- output := &DescribeResizeOutput{}
+ output := &DescribeReservedNodeOfferingsOutput{}
out.Result = output
var buff [1024]byte
@@ -5870,7 +6248,7 @@ func (m *awsAwsquery_deserializeOpDescribeResize) HandleDeserialize(ctx context.
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeResizeResult")
+ t, err = decoder.GetElement("DescribeReservedNodeOfferingsResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5882,7 +6260,7 @@ func (m *awsAwsquery_deserializeOpDescribeResize) HandleDeserialize(ctx context.
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeResizeOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeReservedNodeOfferingsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5896,7 +6274,7 @@ func (m *awsAwsquery_deserializeOpDescribeResize) HandleDeserialize(ctx context.
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeResize(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeReservedNodeOfferings(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)}
@@ -5921,11 +6299,14 @@ func awsAwsquery_deserializeOpErrorDescribeResize(response *smithyhttp.Response,
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("ClusterNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
+ case strings.EqualFold("DependentServiceUnavailableFault", errorCode):
+ return awsAwsquery_deserializeErrorDependentServiceUnavailableFault(response, errorBody)
- case strings.EqualFold("ResizeNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorResizeNotFoundFault(response, errorBody)
+ case strings.EqualFold("ReservedNodeOfferingNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorReservedNodeOfferingNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("UnsupportedOperationFault", errorCode):
+ return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody)
default:
genericError := &smithy.GenericAPIError{
@@ -5937,14 +6318,14 @@ func awsAwsquery_deserializeOpErrorDescribeResize(response *smithyhttp.Response,
}
}
-type awsAwsquery_deserializeOpDescribeScheduledActions struct {
+type awsAwsquery_deserializeOpDescribeReservedNodes struct {
}
-func (*awsAwsquery_deserializeOpDescribeScheduledActions) ID() string {
+func (*awsAwsquery_deserializeOpDescribeReservedNodes) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeScheduledActions) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeReservedNodes) 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)
@@ -5958,9 +6339,9 @@ func (m *awsAwsquery_deserializeOpDescribeScheduledActions) HandleDeserialize(ct
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeScheduledActions(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeReservedNodes(response, &metadata)
}
- output := &DescribeScheduledActionsOutput{}
+ output := &DescribeReservedNodesOutput{}
out.Result = output
var buff [1024]byte
@@ -5981,7 +6362,7 @@ func (m *awsAwsquery_deserializeOpDescribeScheduledActions) HandleDeserialize(ct
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeScheduledActionsResult")
+ t, err = decoder.GetElement("DescribeReservedNodesResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5993,7 +6374,7 @@ func (m *awsAwsquery_deserializeOpDescribeScheduledActions) HandleDeserialize(ct
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeScheduledActionsOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeReservedNodesOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6007,7 +6388,7 @@ func (m *awsAwsquery_deserializeOpDescribeScheduledActions) HandleDeserialize(ct
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeScheduledActions(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeReservedNodes(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)}
@@ -6032,11 +6413,11 @@ func awsAwsquery_deserializeOpErrorDescribeScheduledActions(response *smithyhttp
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("ScheduledActionNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorScheduledActionNotFoundFault(response, errorBody)
+ case strings.EqualFold("DependentServiceUnavailableFault", errorCode):
+ return awsAwsquery_deserializeErrorDependentServiceUnavailableFault(response, errorBody)
- case strings.EqualFold("UnauthorizedOperation", errorCode):
- return awsAwsquery_deserializeErrorUnauthorizedOperation(response, errorBody)
+ case strings.EqualFold("ReservedNodeNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorReservedNodeNotFoundFault(response, errorBody)
default:
genericError := &smithy.GenericAPIError{
@@ -6048,14 +6429,14 @@ func awsAwsquery_deserializeOpErrorDescribeScheduledActions(response *smithyhttp
}
}
-type awsAwsquery_deserializeOpDescribeSnapshotCopyGrants struct {
+type awsAwsquery_deserializeOpDescribeResize struct {
}
-func (*awsAwsquery_deserializeOpDescribeSnapshotCopyGrants) ID() string {
+func (*awsAwsquery_deserializeOpDescribeResize) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeSnapshotCopyGrants) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeResize) 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)
@@ -6069,9 +6450,9 @@ func (m *awsAwsquery_deserializeOpDescribeSnapshotCopyGrants) HandleDeserialize(
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeSnapshotCopyGrants(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeResize(response, &metadata)
}
- output := &DescribeSnapshotCopyGrantsOutput{}
+ output := &DescribeResizeOutput{}
out.Result = output
var buff [1024]byte
@@ -6092,7 +6473,7 @@ func (m *awsAwsquery_deserializeOpDescribeSnapshotCopyGrants) HandleDeserialize(
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeSnapshotCopyGrantsResult")
+ t, err = decoder.GetElement("DescribeResizeResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6104,7 +6485,7 @@ func (m *awsAwsquery_deserializeOpDescribeSnapshotCopyGrants) HandleDeserialize(
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeSnapshotCopyGrantsOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeResizeOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6118,7 +6499,7 @@ func (m *awsAwsquery_deserializeOpDescribeSnapshotCopyGrants) HandleDeserialize(
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeSnapshotCopyGrants(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeResize(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)}
@@ -6143,11 +6524,11 @@ func awsAwsquery_deserializeOpErrorDescribeSnapshotCopyGrants(response *smithyht
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("InvalidTagFault", errorCode):
- return awsAwsquery_deserializeErrorInvalidTagFault(response, errorBody)
+ case strings.EqualFold("ClusterNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
- case strings.EqualFold("SnapshotCopyGrantNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorSnapshotCopyGrantNotFoundFault(response, errorBody)
+ case strings.EqualFold("ResizeNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorResizeNotFoundFault(response, errorBody)
default:
genericError := &smithy.GenericAPIError{
@@ -6159,14 +6540,14 @@ func awsAwsquery_deserializeOpErrorDescribeSnapshotCopyGrants(response *smithyht
}
}
-type awsAwsquery_deserializeOpDescribeSnapshotSchedules struct {
+type awsAwsquery_deserializeOpDescribeScheduledActions struct {
}
-func (*awsAwsquery_deserializeOpDescribeSnapshotSchedules) ID() string {
+func (*awsAwsquery_deserializeOpDescribeScheduledActions) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeSnapshotSchedules) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeScheduledActions) 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)
@@ -6180,9 +6561,9 @@ func (m *awsAwsquery_deserializeOpDescribeSnapshotSchedules) HandleDeserialize(c
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeSnapshotSchedules(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeScheduledActions(response, &metadata)
}
- output := &DescribeSnapshotSchedulesOutput{}
+ output := &DescribeScheduledActionsOutput{}
out.Result = output
var buff [1024]byte
@@ -6203,7 +6584,7 @@ func (m *awsAwsquery_deserializeOpDescribeSnapshotSchedules) HandleDeserialize(c
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeSnapshotSchedulesResult")
+ t, err = decoder.GetElement("DescribeScheduledActionsResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6215,7 +6596,7 @@ func (m *awsAwsquery_deserializeOpDescribeSnapshotSchedules) HandleDeserialize(c
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeSnapshotSchedulesOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeScheduledActionsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6229,7 +6610,7 @@ func (m *awsAwsquery_deserializeOpDescribeSnapshotSchedules) HandleDeserialize(c
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeSnapshotSchedules(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeScheduledActions(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)}
@@ -6254,6 +6635,12 @@ func awsAwsquery_deserializeOpErrorDescribeSnapshotSchedules(response *smithyhtt
}
errorBody.Seek(0, io.SeekStart)
switch {
+ case strings.EqualFold("ScheduledActionNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorScheduledActionNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("UnauthorizedOperation", errorCode):
+ return awsAwsquery_deserializeErrorUnauthorizedOperation(response, errorBody)
+
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
@@ -6264,14 +6651,14 @@ func awsAwsquery_deserializeOpErrorDescribeSnapshotSchedules(response *smithyhtt
}
}
-type awsAwsquery_deserializeOpDescribeStorage struct {
+type awsAwsquery_deserializeOpDescribeSnapshotCopyGrants struct {
}
-func (*awsAwsquery_deserializeOpDescribeStorage) ID() string {
+func (*awsAwsquery_deserializeOpDescribeSnapshotCopyGrants) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeStorage) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeSnapshotCopyGrants) 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)
@@ -6285,9 +6672,9 @@ func (m *awsAwsquery_deserializeOpDescribeStorage) HandleDeserialize(ctx context
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeStorage(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeSnapshotCopyGrants(response, &metadata)
}
- output := &DescribeStorageOutput{}
+ output := &DescribeSnapshotCopyGrantsOutput{}
out.Result = output
var buff [1024]byte
@@ -6308,7 +6695,7 @@ func (m *awsAwsquery_deserializeOpDescribeStorage) HandleDeserialize(ctx context
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeStorageResult")
+ t, err = decoder.GetElement("DescribeSnapshotCopyGrantsResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6320,7 +6707,7 @@ func (m *awsAwsquery_deserializeOpDescribeStorage) HandleDeserialize(ctx context
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeStorageOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeSnapshotCopyGrantsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6334,7 +6721,7 @@ func (m *awsAwsquery_deserializeOpDescribeStorage) HandleDeserialize(ctx context
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeStorage(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeSnapshotCopyGrants(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)}
@@ -6359,6 +6746,12 @@ func awsAwsquery_deserializeOpErrorDescribeStorage(response *smithyhttp.Response
}
errorBody.Seek(0, io.SeekStart)
switch {
+ case strings.EqualFold("InvalidTagFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidTagFault(response, errorBody)
+
+ case strings.EqualFold("SnapshotCopyGrantNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorSnapshotCopyGrantNotFoundFault(response, errorBody)
+
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
@@ -6369,14 +6762,14 @@ func awsAwsquery_deserializeOpErrorDescribeStorage(response *smithyhttp.Response
}
}
-type awsAwsquery_deserializeOpDescribeTableRestoreStatus struct {
+type awsAwsquery_deserializeOpDescribeSnapshotSchedules struct {
}
-func (*awsAwsquery_deserializeOpDescribeTableRestoreStatus) ID() string {
+func (*awsAwsquery_deserializeOpDescribeSnapshotSchedules) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeTableRestoreStatus) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeSnapshotSchedules) 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)
@@ -6390,9 +6783,9 @@ func (m *awsAwsquery_deserializeOpDescribeTableRestoreStatus) HandleDeserialize(
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeTableRestoreStatus(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeSnapshotSchedules(response, &metadata)
}
- output := &DescribeTableRestoreStatusOutput{}
+ output := &DescribeSnapshotSchedulesOutput{}
out.Result = output
var buff [1024]byte
@@ -6413,7 +6806,7 @@ func (m *awsAwsquery_deserializeOpDescribeTableRestoreStatus) HandleDeserialize(
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeTableRestoreStatusResult")
+ t, err = decoder.GetElement("DescribeSnapshotSchedulesResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6425,7 +6818,7 @@ func (m *awsAwsquery_deserializeOpDescribeTableRestoreStatus) HandleDeserialize(
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeTableRestoreStatusOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeSnapshotSchedulesOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6439,7 +6832,7 @@ func (m *awsAwsquery_deserializeOpDescribeTableRestoreStatus) HandleDeserialize(
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeTableRestoreStatus(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeSnapshotSchedules(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)}
@@ -6464,12 +6857,6 @@ func awsAwsquery_deserializeOpErrorDescribeTableRestoreStatus(response *smithyht
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("ClusterNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
-
- case strings.EqualFold("TableRestoreNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorTableRestoreNotFoundFault(response, errorBody)
-
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
@@ -6480,14 +6867,14 @@ func awsAwsquery_deserializeOpErrorDescribeTableRestoreStatus(response *smithyht
}
}
-type awsAwsquery_deserializeOpDescribeTags struct {
+type awsAwsquery_deserializeOpDescribeStorage struct {
}
-func (*awsAwsquery_deserializeOpDescribeTags) ID() string {
+func (*awsAwsquery_deserializeOpDescribeStorage) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeTags) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeStorage) 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)
@@ -6501,9 +6888,9 @@ func (m *awsAwsquery_deserializeOpDescribeTags) HandleDeserialize(ctx context.Co
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeTags(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeStorage(response, &metadata)
}
- output := &DescribeTagsOutput{}
+ output := &DescribeStorageOutput{}
out.Result = output
var buff [1024]byte
@@ -6524,7 +6911,7 @@ func (m *awsAwsquery_deserializeOpDescribeTags) HandleDeserialize(ctx context.Co
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeTagsResult")
+ t, err = decoder.GetElement("DescribeStorageResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6536,7 +6923,7 @@ func (m *awsAwsquery_deserializeOpDescribeTags) HandleDeserialize(ctx context.Co
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeTagsOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeStorageOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6550,7 +6937,7 @@ func (m *awsAwsquery_deserializeOpDescribeTags) HandleDeserialize(ctx context.Co
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeTags(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeStorage(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)}
@@ -6575,12 +6962,6 @@ func awsAwsquery_deserializeOpErrorDescribeTags(response *smithyhttp.Response, m
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("InvalidTagFault", errorCode):
- return awsAwsquery_deserializeErrorInvalidTagFault(response, errorBody)
-
- case strings.EqualFold("ResourceNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorResourceNotFoundFault(response, errorBody)
-
default:
genericError := &smithy.GenericAPIError{
Code: errorCode,
@@ -6591,14 +6972,14 @@ func awsAwsquery_deserializeOpErrorDescribeTags(response *smithyhttp.Response, m
}
}
-type awsAwsquery_deserializeOpDescribeUsageLimits struct {
+type awsAwsquery_deserializeOpDescribeTableRestoreStatus struct {
}
-func (*awsAwsquery_deserializeOpDescribeUsageLimits) ID() string {
+func (*awsAwsquery_deserializeOpDescribeTableRestoreStatus) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDescribeUsageLimits) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeTableRestoreStatus) 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)
@@ -6612,9 +6993,9 @@ func (m *awsAwsquery_deserializeOpDescribeUsageLimits) HandleDeserialize(ctx con
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDescribeUsageLimits(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeTableRestoreStatus(response, &metadata)
}
- output := &DescribeUsageLimitsOutput{}
+ output := &DescribeTableRestoreStatusOutput{}
out.Result = output
var buff [1024]byte
@@ -6635,7 +7016,7 @@ func (m *awsAwsquery_deserializeOpDescribeUsageLimits) HandleDeserialize(ctx con
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DescribeUsageLimitsResult")
+ t, err = decoder.GetElement("DescribeTableRestoreStatusResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6647,7 +7028,7 @@ func (m *awsAwsquery_deserializeOpDescribeUsageLimits) HandleDeserialize(ctx con
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDescribeUsageLimitsOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeTableRestoreStatusOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6661,7 +7042,7 @@ func (m *awsAwsquery_deserializeOpDescribeUsageLimits) HandleDeserialize(ctx con
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDescribeUsageLimits(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeTableRestoreStatus(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)}
@@ -6689,8 +7070,8 @@ func awsAwsquery_deserializeOpErrorDescribeUsageLimits(response *smithyhttp.Resp
case strings.EqualFold("ClusterNotFoundFault", errorCode):
return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
- case strings.EqualFold("UnsupportedOperationFault", errorCode):
- return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody)
+ case strings.EqualFold("TableRestoreNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorTableRestoreNotFoundFault(response, errorBody)
default:
genericError := &smithy.GenericAPIError{
@@ -6702,14 +7083,14 @@ func awsAwsquery_deserializeOpErrorDescribeUsageLimits(response *smithyhttp.Resp
}
}
-type awsAwsquery_deserializeOpDisableLogging struct {
+type awsAwsquery_deserializeOpDescribeTags struct {
}
-func (*awsAwsquery_deserializeOpDisableLogging) ID() string {
+func (*awsAwsquery_deserializeOpDescribeTags) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDisableLogging) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeTags) 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)
@@ -6723,9 +7104,9 @@ func (m *awsAwsquery_deserializeOpDisableLogging) HandleDeserialize(ctx context.
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDisableLogging(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeTags(response, &metadata)
}
- output := &DisableLoggingOutput{}
+ output := &DescribeTagsOutput{}
out.Result = output
var buff [1024]byte
@@ -6746,7 +7127,7 @@ func (m *awsAwsquery_deserializeOpDisableLogging) HandleDeserialize(ctx context.
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DisableLoggingResult")
+ t, err = decoder.GetElement("DescribeTagsResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6758,7 +7139,7 @@ func (m *awsAwsquery_deserializeOpDisableLogging) HandleDeserialize(ctx context.
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDisableLoggingOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeTagsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6772,7 +7153,7 @@ func (m *awsAwsquery_deserializeOpDisableLogging) HandleDeserialize(ctx context.
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDisableLogging(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeTags(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)}
@@ -6797,8 +7178,11 @@ func awsAwsquery_deserializeOpErrorDisableLogging(response *smithyhttp.Response,
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("ClusterNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
+ case strings.EqualFold("InvalidTagFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidTagFault(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorResourceNotFoundFault(response, errorBody)
default:
genericError := &smithy.GenericAPIError{
@@ -6810,14 +7194,14 @@ func awsAwsquery_deserializeOpErrorDisableLogging(response *smithyhttp.Response,
}
}
-type awsAwsquery_deserializeOpDisableSnapshotCopy struct {
+type awsAwsquery_deserializeOpDescribeUsageLimits struct {
}
-func (*awsAwsquery_deserializeOpDisableSnapshotCopy) ID() string {
+func (*awsAwsquery_deserializeOpDescribeUsageLimits) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpDisableSnapshotCopy) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpDescribeUsageLimits) 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)
@@ -6831,9 +7215,9 @@ func (m *awsAwsquery_deserializeOpDisableSnapshotCopy) HandleDeserialize(ctx con
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorDisableSnapshotCopy(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorDescribeUsageLimits(response, &metadata)
}
- output := &DisableSnapshotCopyOutput{}
+ output := &DescribeUsageLimitsOutput{}
out.Result = output
var buff [1024]byte
@@ -6854,7 +7238,7 @@ func (m *awsAwsquery_deserializeOpDisableSnapshotCopy) HandleDeserialize(ctx con
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("DisableSnapshotCopyResult")
+ t, err = decoder.GetElement("DescribeUsageLimitsResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6866,7 +7250,7 @@ func (m *awsAwsquery_deserializeOpDisableSnapshotCopy) HandleDeserialize(ctx con
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentDisableSnapshotCopyOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentDescribeUsageLimitsOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -6880,7 +7264,226 @@ func (m *awsAwsquery_deserializeOpDisableSnapshotCopy) HandleDeserialize(ctx con
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorDisableSnapshotCopy(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorDescribeUsageLimits(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 := awsxml.GetErrorResponseComponents(errorBody, false)
+ if err != nil {
+ return err
+ }
+ if reqID := errorComponents.RequestID; len(reqID) != 0 {
+ awsmiddleware.SetRequestIDMetadata(metadata, reqID)
+ }
+ if len(errorComponents.Code) != 0 {
+ errorCode = errorComponents.Code
+ }
+ if len(errorComponents.Message) != 0 {
+ errorMessage = errorComponents.Message
+ }
+ errorBody.Seek(0, io.SeekStart)
+ switch {
+ case strings.EqualFold("ClusterNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("UnsupportedOperationFault", errorCode):
+ return awsAwsquery_deserializeErrorUnsupportedOperationFault(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsAwsquery_deserializeOpDisableLogging struct {
+}
+
+func (*awsAwsquery_deserializeOpDisableLogging) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsquery_deserializeOpDisableLogging) 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, awsAwsquery_deserializeOpErrorDisableLogging(response, &metadata)
+ }
+ output := &DisableLoggingOutput{}
+ 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)
+ t, err = decoder.GetElement("DisableLoggingResult")
+ 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
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeOpDocumentDisableLoggingOutput(&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 awsAwsquery_deserializeOpErrorDisableLogging(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 := awsxml.GetErrorResponseComponents(errorBody, false)
+ if err != nil {
+ return err
+ }
+ if reqID := errorComponents.RequestID; len(reqID) != 0 {
+ awsmiddleware.SetRequestIDMetadata(metadata, reqID)
+ }
+ if len(errorComponents.Code) != 0 {
+ errorCode = errorComponents.Code
+ }
+ if len(errorComponents.Message) != 0 {
+ errorMessage = errorComponents.Message
+ }
+ errorBody.Seek(0, io.SeekStart)
+ switch {
+ case strings.EqualFold("ClusterNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsAwsquery_deserializeOpDisableSnapshotCopy struct {
+}
+
+func (*awsAwsquery_deserializeOpDisableSnapshotCopy) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsquery_deserializeOpDisableSnapshotCopy) 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, awsAwsquery_deserializeOpErrorDisableSnapshotCopy(response, &metadata)
+ }
+ output := &DisableSnapshotCopyOutput{}
+ 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)
+ t, err = decoder.GetElement("DisableSnapshotCopyResult")
+ 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
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeOpDocumentDisableSnapshotCopyOutput(&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 awsAwsquery_deserializeOpErrorDisableSnapshotCopy(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)}
@@ -8347,14 +8950,14 @@ func awsAwsquery_deserializeOpErrorModifyClusterSubnetGroup(response *smithyhttp
}
}
-type awsAwsquery_deserializeOpModifyEventSubscription struct {
+type awsAwsquery_deserializeOpModifyEndpointAccess struct {
}
-func (*awsAwsquery_deserializeOpModifyEventSubscription) ID() string {
+func (*awsAwsquery_deserializeOpModifyEndpointAccess) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpModifyEventSubscription) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpModifyEndpointAccess) 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)
@@ -8368,9 +8971,9 @@ func (m *awsAwsquery_deserializeOpModifyEventSubscription) HandleDeserialize(ctx
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorModifyEventSubscription(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorModifyEndpointAccess(response, &metadata)
}
- output := &ModifyEventSubscriptionOutput{}
+ output := &ModifyEndpointAccessOutput{}
out.Result = output
var buff [1024]byte
@@ -8391,7 +8994,7 @@ func (m *awsAwsquery_deserializeOpModifyEventSubscription) HandleDeserialize(ctx
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("ModifyEventSubscriptionResult")
+ t, err = decoder.GetElement("ModifyEndpointAccessResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -8403,7 +9006,7 @@ func (m *awsAwsquery_deserializeOpModifyEventSubscription) HandleDeserialize(ctx
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentModifyEventSubscriptionOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentModifyEndpointAccessOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -8417,7 +9020,7 @@ func (m *awsAwsquery_deserializeOpModifyEventSubscription) HandleDeserialize(ctx
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorModifyEventSubscription(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorModifyEndpointAccess(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)}
@@ -8442,32 +9045,23 @@ func awsAwsquery_deserializeOpErrorModifyEventSubscription(response *smithyhttp.
}
errorBody.Seek(0, io.SeekStart)
switch {
- case strings.EqualFold("InvalidSubscriptionStateFault", errorCode):
- return awsAwsquery_deserializeErrorInvalidSubscriptionStateFault(response, errorBody)
-
- case strings.EqualFold("SNSInvalidTopicFault", errorCode):
- return awsAwsquery_deserializeErrorSNSInvalidTopicFault(response, errorBody)
-
- case strings.EqualFold("SNSNoAuthorizationFault", errorCode):
- return awsAwsquery_deserializeErrorSNSNoAuthorizationFault(response, errorBody)
-
- case strings.EqualFold("SNSTopicArnNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorSNSTopicArnNotFoundFault(response, errorBody)
+ case strings.EqualFold("ClusterNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
- case strings.EqualFold("SourceNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorSourceNotFoundFault(response, errorBody)
+ case strings.EqualFold("EndpointNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorEndpointNotFoundFault(response, errorBody)
- case strings.EqualFold("SubscriptionCategoryNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorSubscriptionCategoryNotFoundFault(response, errorBody)
+ case strings.EqualFold("InvalidClusterSecurityGroupStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidClusterSecurityGroupStateFault(response, errorBody)
- case strings.EqualFold("SubscriptionEventIdNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorSubscriptionEventIdNotFoundFault(response, errorBody)
+ case strings.EqualFold("InvalidClusterStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidClusterStateFault(response, errorBody)
- case strings.EqualFold("SubscriptionNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorSubscriptionNotFoundFault(response, errorBody)
+ case strings.EqualFold("InvalidEndpointStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidEndpointStateFault(response, errorBody)
- case strings.EqualFold("SubscriptionSeverityNotFoundFault", errorCode):
- return awsAwsquery_deserializeErrorSubscriptionSeverityNotFoundFault(response, errorBody)
+ case strings.EqualFold("UnauthorizedOperation", errorCode):
+ return awsAwsquery_deserializeErrorUnauthorizedOperation(response, errorBody)
default:
genericError := &smithy.GenericAPIError{
@@ -8479,14 +9073,14 @@ func awsAwsquery_deserializeOpErrorModifyEventSubscription(response *smithyhttp.
}
}
-type awsAwsquery_deserializeOpModifyScheduledAction struct {
+type awsAwsquery_deserializeOpModifyEventSubscription struct {
}
-func (*awsAwsquery_deserializeOpModifyScheduledAction) ID() string {
+func (*awsAwsquery_deserializeOpModifyEventSubscription) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsquery_deserializeOpModifyScheduledAction) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsquery_deserializeOpModifyEventSubscription) 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)
@@ -8500,9 +9094,9 @@ func (m *awsAwsquery_deserializeOpModifyScheduledAction) HandleDeserialize(ctx c
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsquery_deserializeOpErrorModifyScheduledAction(response, &metadata)
+ return out, metadata, awsAwsquery_deserializeOpErrorModifyEventSubscription(response, &metadata)
}
- output := &ModifyScheduledActionOutput{}
+ output := &ModifyEventSubscriptionOutput{}
out.Result = output
var buff [1024]byte
@@ -8523,7 +9117,7 @@ func (m *awsAwsquery_deserializeOpModifyScheduledAction) HandleDeserialize(ctx c
}
decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("ModifyScheduledActionResult")
+ t, err = decoder.GetElement("ModifyEventSubscriptionResult")
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -8535,7 +9129,7 @@ func (m *awsAwsquery_deserializeOpModifyScheduledAction) HandleDeserialize(ctx c
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeOpDocumentModifyScheduledActionOutput(&output, decoder)
+ err = awsAwsquery_deserializeOpDocumentModifyEventSubscriptionOutput(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -8549,7 +9143,139 @@ func (m *awsAwsquery_deserializeOpModifyScheduledAction) HandleDeserialize(ctx c
return out, metadata, err
}
-func awsAwsquery_deserializeOpErrorModifyScheduledAction(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsquery_deserializeOpErrorModifyEventSubscription(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 := awsxml.GetErrorResponseComponents(errorBody, false)
+ if err != nil {
+ return err
+ }
+ if reqID := errorComponents.RequestID; len(reqID) != 0 {
+ awsmiddleware.SetRequestIDMetadata(metadata, reqID)
+ }
+ if len(errorComponents.Code) != 0 {
+ errorCode = errorComponents.Code
+ }
+ if len(errorComponents.Message) != 0 {
+ errorMessage = errorComponents.Message
+ }
+ errorBody.Seek(0, io.SeekStart)
+ switch {
+ case strings.EqualFold("InvalidSubscriptionStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidSubscriptionStateFault(response, errorBody)
+
+ case strings.EqualFold("SNSInvalidTopicFault", errorCode):
+ return awsAwsquery_deserializeErrorSNSInvalidTopicFault(response, errorBody)
+
+ case strings.EqualFold("SNSNoAuthorizationFault", errorCode):
+ return awsAwsquery_deserializeErrorSNSNoAuthorizationFault(response, errorBody)
+
+ case strings.EqualFold("SNSTopicArnNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorSNSTopicArnNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("SourceNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorSourceNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("SubscriptionCategoryNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorSubscriptionCategoryNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("SubscriptionEventIdNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorSubscriptionEventIdNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("SubscriptionNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorSubscriptionNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("SubscriptionSeverityNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorSubscriptionSeverityNotFoundFault(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsAwsquery_deserializeOpModifyScheduledAction struct {
+}
+
+func (*awsAwsquery_deserializeOpModifyScheduledAction) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsquery_deserializeOpModifyScheduledAction) 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, awsAwsquery_deserializeOpErrorModifyScheduledAction(response, &metadata)
+ }
+ output := &ModifyScheduledActionOutput{}
+ 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)
+ t, err = decoder.GetElement("ModifyScheduledActionResult")
+ 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
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeOpDocumentModifyScheduledActionOutput(&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 awsAwsquery_deserializeOpErrorModifyScheduledAction(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)}
@@ -10063,6 +10789,132 @@ func awsAwsquery_deserializeOpErrorRevokeClusterSecurityGroupIngress(response *s
}
}
+type awsAwsquery_deserializeOpRevokeEndpointAccess struct {
+}
+
+func (*awsAwsquery_deserializeOpRevokeEndpointAccess) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsquery_deserializeOpRevokeEndpointAccess) 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, awsAwsquery_deserializeOpErrorRevokeEndpointAccess(response, &metadata)
+ }
+ output := &RevokeEndpointAccessOutput{}
+ 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)
+ t, err = decoder.GetElement("RevokeEndpointAccessResult")
+ 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
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeOpDocumentRevokeEndpointAccessOutput(&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 awsAwsquery_deserializeOpErrorRevokeEndpointAccess(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 := awsxml.GetErrorResponseComponents(errorBody, false)
+ if err != nil {
+ return err
+ }
+ if reqID := errorComponents.RequestID; len(reqID) != 0 {
+ awsmiddleware.SetRequestIDMetadata(metadata, reqID)
+ }
+ if len(errorComponents.Code) != 0 {
+ errorCode = errorComponents.Code
+ }
+ if len(errorComponents.Message) != 0 {
+ errorMessage = errorComponents.Message
+ }
+ errorBody.Seek(0, io.SeekStart)
+ switch {
+ case strings.EqualFold("ClusterNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorClusterNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("EndpointAuthorizationNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorEndpointAuthorizationNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("EndpointNotFoundFault", errorCode):
+ return awsAwsquery_deserializeErrorEndpointNotFoundFault(response, errorBody)
+
+ case strings.EqualFold("InvalidAuthorizationStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidAuthorizationStateFault(response, errorBody)
+
+ case strings.EqualFold("InvalidClusterSecurityGroupStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidClusterSecurityGroupStateFault(response, errorBody)
+
+ case strings.EqualFold("InvalidClusterStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidClusterStateFault(response, errorBody)
+
+ case strings.EqualFold("InvalidEndpointStateFault", errorCode):
+ return awsAwsquery_deserializeErrorInvalidEndpointStateFault(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
type awsAwsquery_deserializeOpRevokeSnapshotAccess struct {
}
@@ -10291,8 +11143,8 @@ func awsAwsquery_deserializeOpErrorRotateEncryptionKey(response *smithyhttp.Resp
}
}
-func awsAwsquery_deserializeErrorAccessToSnapshotDeniedFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.AccessToSnapshotDeniedFault{}
+func awsAwsquery_deserializeErrorAccessToClusterDeniedFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.AccessToClusterDeniedFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -10322,7 +11174,7 @@ func awsAwsquery_deserializeErrorAccessToSnapshotDeniedFault(response *smithyhtt
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentAccessToSnapshotDeniedFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentAccessToClusterDeniedFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -10335,8 +11187,8 @@ func awsAwsquery_deserializeErrorAccessToSnapshotDeniedFault(response *smithyhtt
return output
}
-func awsAwsquery_deserializeErrorAuthorizationAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.AuthorizationAlreadyExistsFault{}
+func awsAwsquery_deserializeErrorAccessToSnapshotDeniedFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.AccessToSnapshotDeniedFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -10366,7 +11218,7 @@ func awsAwsquery_deserializeErrorAuthorizationAlreadyExistsFault(response *smith
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentAuthorizationAlreadyExistsFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentAccessToSnapshotDeniedFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -10379,8 +11231,8 @@ func awsAwsquery_deserializeErrorAuthorizationAlreadyExistsFault(response *smith
return output
}
-func awsAwsquery_deserializeErrorAuthorizationNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.AuthorizationNotFoundFault{}
+func awsAwsquery_deserializeErrorAuthorizationAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.AuthorizationAlreadyExistsFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -10410,7 +11262,7 @@ func awsAwsquery_deserializeErrorAuthorizationNotFoundFault(response *smithyhttp
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentAuthorizationNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentAuthorizationAlreadyExistsFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -10423,8 +11275,52 @@ func awsAwsquery_deserializeErrorAuthorizationNotFoundFault(response *smithyhttp
return output
}
-func awsAwsquery_deserializeErrorAuthorizationQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.AuthorizationQuotaExceededFault{}
+func awsAwsquery_deserializeErrorAuthorizationNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.AuthorizationNotFoundFault{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+ body := io.TeeReader(errorBody, ringBuffer)
+ rootDecoder := xml.NewDecoder(body)
+ t, err := smithyxml.FetchRootElement(rootDecoder)
+ if err == io.EOF {
+ return output
+ }
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("Error")
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeDocumentAuthorizationNotFoundFault(&output, decoder)
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ return output
+}
+
+func awsAwsquery_deserializeErrorAuthorizationQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.AuthorizationQuotaExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -11479,8 +12375,8 @@ func awsAwsquery_deserializeErrorDependentServiceUnavailableFault(response *smit
return output
}
-func awsAwsquery_deserializeErrorEventSubscriptionQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.EventSubscriptionQuotaExceededFault{}
+func awsAwsquery_deserializeErrorEndpointAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.EndpointAlreadyExistsFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -11510,7 +12406,7 @@ func awsAwsquery_deserializeErrorEventSubscriptionQuotaExceededFault(response *s
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentEventSubscriptionQuotaExceededFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentEndpointAlreadyExistsFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -11523,8 +12419,8 @@ func awsAwsquery_deserializeErrorEventSubscriptionQuotaExceededFault(response *s
return output
}
-func awsAwsquery_deserializeErrorHsmClientCertificateAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.HsmClientCertificateAlreadyExistsFault{}
+func awsAwsquery_deserializeErrorEndpointAuthorizationAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.EndpointAuthorizationAlreadyExistsFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -11554,7 +12450,7 @@ func awsAwsquery_deserializeErrorHsmClientCertificateAlreadyExistsFault(response
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentHsmClientCertificateAlreadyExistsFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentEndpointAuthorizationAlreadyExistsFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -11567,8 +12463,8 @@ func awsAwsquery_deserializeErrorHsmClientCertificateAlreadyExistsFault(response
return output
}
-func awsAwsquery_deserializeErrorHsmClientCertificateNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.HsmClientCertificateNotFoundFault{}
+func awsAwsquery_deserializeErrorEndpointAuthorizationNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.EndpointAuthorizationNotFoundFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -11598,7 +12494,7 @@ func awsAwsquery_deserializeErrorHsmClientCertificateNotFoundFault(response *smi
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentHsmClientCertificateNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentEndpointAuthorizationNotFoundFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -11611,8 +12507,8 @@ func awsAwsquery_deserializeErrorHsmClientCertificateNotFoundFault(response *smi
return output
}
-func awsAwsquery_deserializeErrorHsmClientCertificateQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.HsmClientCertificateQuotaExceededFault{}
+func awsAwsquery_deserializeErrorEndpointAuthorizationsPerClusterLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.EndpointAuthorizationsPerClusterLimitExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -11642,7 +12538,7 @@ func awsAwsquery_deserializeErrorHsmClientCertificateQuotaExceededFault(response
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentHsmClientCertificateQuotaExceededFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentEndpointAuthorizationsPerClusterLimitExceededFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -11655,8 +12551,8 @@ func awsAwsquery_deserializeErrorHsmClientCertificateQuotaExceededFault(response
return output
}
-func awsAwsquery_deserializeErrorHsmConfigurationAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.HsmConfigurationAlreadyExistsFault{}
+func awsAwsquery_deserializeErrorEndpointNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.EndpointNotFoundFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -11686,7 +12582,7 @@ func awsAwsquery_deserializeErrorHsmConfigurationAlreadyExistsFault(response *sm
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentHsmConfigurationAlreadyExistsFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentEndpointNotFoundFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -11699,8 +12595,8 @@ func awsAwsquery_deserializeErrorHsmConfigurationAlreadyExistsFault(response *sm
return output
}
-func awsAwsquery_deserializeErrorHsmConfigurationNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.HsmConfigurationNotFoundFault{}
+func awsAwsquery_deserializeErrorEndpointsPerAuthorizationLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.EndpointsPerAuthorizationLimitExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -11730,7 +12626,7 @@ func awsAwsquery_deserializeErrorHsmConfigurationNotFoundFault(response *smithyh
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentHsmConfigurationNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentEndpointsPerAuthorizationLimitExceededFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -11743,8 +12639,8 @@ func awsAwsquery_deserializeErrorHsmConfigurationNotFoundFault(response *smithyh
return output
}
-func awsAwsquery_deserializeErrorHsmConfigurationQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.HsmConfigurationQuotaExceededFault{}
+func awsAwsquery_deserializeErrorEndpointsPerClusterLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.EndpointsPerClusterLimitExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -11774,7 +12670,7 @@ func awsAwsquery_deserializeErrorHsmConfigurationQuotaExceededFault(response *sm
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentHsmConfigurationQuotaExceededFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentEndpointsPerClusterLimitExceededFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -11787,52 +12683,8 @@ func awsAwsquery_deserializeErrorHsmConfigurationQuotaExceededFault(response *sm
return output
}
-func awsAwsquery_deserializeErrorIncompatibleOrderableOptions(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.IncompatibleOrderableOptions{}
- var buff [1024]byte
- ringBuffer := smithyio.NewRingBuffer(buff[:])
- body := io.TeeReader(errorBody, ringBuffer)
- rootDecoder := xml.NewDecoder(body)
- t, err := smithyxml.FetchRootElement(rootDecoder)
- if err == io.EOF {
- return output
- }
- if err != nil {
- var snapshot bytes.Buffer
- io.Copy(&snapshot, ringBuffer)
- return &smithy.DeserializationError{
- Err: fmt.Errorf("failed to decode response body, %w", err),
- Snapshot: snapshot.Bytes(),
- }
- }
-
- decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
- t, err = decoder.GetElement("Error")
- if err != nil {
- var snapshot bytes.Buffer
- io.Copy(&snapshot, ringBuffer)
- return &smithy.DeserializationError{
- Err: fmt.Errorf("failed to decode response body, %w", err),
- Snapshot: snapshot.Bytes(),
- }
- }
-
- decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentIncompatibleOrderableOptions(&output, decoder)
- if err != nil {
- var snapshot bytes.Buffer
- io.Copy(&snapshot, ringBuffer)
- return &smithy.DeserializationError{
- Err: fmt.Errorf("failed to decode response body, %w", err),
- Snapshot: snapshot.Bytes(),
- }
- }
-
- return output
-}
-
-func awsAwsquery_deserializeErrorInProgressTableRestoreQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InProgressTableRestoreQuotaExceededFault{}
+func awsAwsquery_deserializeErrorEventSubscriptionQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.EventSubscriptionQuotaExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -11862,7 +12714,7 @@ func awsAwsquery_deserializeErrorInProgressTableRestoreQuotaExceededFault(respon
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInProgressTableRestoreQuotaExceededFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentEventSubscriptionQuotaExceededFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -11875,8 +12727,8 @@ func awsAwsquery_deserializeErrorInProgressTableRestoreQuotaExceededFault(respon
return output
}
-func awsAwsquery_deserializeErrorInsufficientClusterCapacityFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InsufficientClusterCapacityFault{}
+func awsAwsquery_deserializeErrorHsmClientCertificateAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.HsmClientCertificateAlreadyExistsFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -11906,7 +12758,7 @@ func awsAwsquery_deserializeErrorInsufficientClusterCapacityFault(response *smit
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInsufficientClusterCapacityFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentHsmClientCertificateAlreadyExistsFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -11919,8 +12771,8 @@ func awsAwsquery_deserializeErrorInsufficientClusterCapacityFault(response *smit
return output
}
-func awsAwsquery_deserializeErrorInsufficientS3BucketPolicyFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InsufficientS3BucketPolicyFault{}
+func awsAwsquery_deserializeErrorHsmClientCertificateNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.HsmClientCertificateNotFoundFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -11950,7 +12802,7 @@ func awsAwsquery_deserializeErrorInsufficientS3BucketPolicyFault(response *smith
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInsufficientS3BucketPolicyFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentHsmClientCertificateNotFoundFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -11963,8 +12815,8 @@ func awsAwsquery_deserializeErrorInsufficientS3BucketPolicyFault(response *smith
return output
}
-func awsAwsquery_deserializeErrorInvalidClusterParameterGroupStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidClusterParameterGroupStateFault{}
+func awsAwsquery_deserializeErrorHsmClientCertificateQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.HsmClientCertificateQuotaExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -11994,7 +12846,7 @@ func awsAwsquery_deserializeErrorInvalidClusterParameterGroupStateFault(response
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidClusterParameterGroupStateFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentHsmClientCertificateQuotaExceededFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12007,8 +12859,8 @@ func awsAwsquery_deserializeErrorInvalidClusterParameterGroupStateFault(response
return output
}
-func awsAwsquery_deserializeErrorInvalidClusterSecurityGroupStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidClusterSecurityGroupStateFault{}
+func awsAwsquery_deserializeErrorHsmConfigurationAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.HsmConfigurationAlreadyExistsFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12038,7 +12890,7 @@ func awsAwsquery_deserializeErrorInvalidClusterSecurityGroupStateFault(response
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidClusterSecurityGroupStateFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentHsmConfigurationAlreadyExistsFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12051,8 +12903,8 @@ func awsAwsquery_deserializeErrorInvalidClusterSecurityGroupStateFault(response
return output
}
-func awsAwsquery_deserializeErrorInvalidClusterSnapshotScheduleStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidClusterSnapshotScheduleStateFault{}
+func awsAwsquery_deserializeErrorHsmConfigurationNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.HsmConfigurationNotFoundFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12082,7 +12934,7 @@ func awsAwsquery_deserializeErrorInvalidClusterSnapshotScheduleStateFault(respon
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidClusterSnapshotScheduleStateFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentHsmConfigurationNotFoundFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12095,8 +12947,8 @@ func awsAwsquery_deserializeErrorInvalidClusterSnapshotScheduleStateFault(respon
return output
}
-func awsAwsquery_deserializeErrorInvalidClusterSnapshotStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidClusterSnapshotStateFault{}
+func awsAwsquery_deserializeErrorHsmConfigurationQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.HsmConfigurationQuotaExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12126,7 +12978,7 @@ func awsAwsquery_deserializeErrorInvalidClusterSnapshotStateFault(response *smit
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidClusterSnapshotStateFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentHsmConfigurationQuotaExceededFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12139,8 +12991,8 @@ func awsAwsquery_deserializeErrorInvalidClusterSnapshotStateFault(response *smit
return output
}
-func awsAwsquery_deserializeErrorInvalidClusterStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidClusterStateFault{}
+func awsAwsquery_deserializeErrorIncompatibleOrderableOptions(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.IncompatibleOrderableOptions{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12170,7 +13022,7 @@ func awsAwsquery_deserializeErrorInvalidClusterStateFault(response *smithyhttp.R
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidClusterStateFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentIncompatibleOrderableOptions(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12183,8 +13035,8 @@ func awsAwsquery_deserializeErrorInvalidClusterStateFault(response *smithyhttp.R
return output
}
-func awsAwsquery_deserializeErrorInvalidClusterSubnetGroupStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidClusterSubnetGroupStateFault{}
+func awsAwsquery_deserializeErrorInProgressTableRestoreQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InProgressTableRestoreQuotaExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12214,7 +13066,7 @@ func awsAwsquery_deserializeErrorInvalidClusterSubnetGroupStateFault(response *s
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidClusterSubnetGroupStateFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInProgressTableRestoreQuotaExceededFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12227,8 +13079,8 @@ func awsAwsquery_deserializeErrorInvalidClusterSubnetGroupStateFault(response *s
return output
}
-func awsAwsquery_deserializeErrorInvalidClusterSubnetStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidClusterSubnetStateFault{}
+func awsAwsquery_deserializeErrorInsufficientClusterCapacityFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InsufficientClusterCapacityFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12258,7 +13110,7 @@ func awsAwsquery_deserializeErrorInvalidClusterSubnetStateFault(response *smithy
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidClusterSubnetStateFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInsufficientClusterCapacityFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12271,8 +13123,8 @@ func awsAwsquery_deserializeErrorInvalidClusterSubnetStateFault(response *smithy
return output
}
-func awsAwsquery_deserializeErrorInvalidClusterTrackFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidClusterTrackFault{}
+func awsAwsquery_deserializeErrorInsufficientS3BucketPolicyFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InsufficientS3BucketPolicyFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12302,7 +13154,7 @@ func awsAwsquery_deserializeErrorInvalidClusterTrackFault(response *smithyhttp.R
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidClusterTrackFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInsufficientS3BucketPolicyFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12315,8 +13167,8 @@ func awsAwsquery_deserializeErrorInvalidClusterTrackFault(response *smithyhttp.R
return output
}
-func awsAwsquery_deserializeErrorInvalidElasticIpFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidElasticIpFault{}
+func awsAwsquery_deserializeErrorInvalidAuthorizationStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidAuthorizationStateFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12346,7 +13198,7 @@ func awsAwsquery_deserializeErrorInvalidElasticIpFault(response *smithyhttp.Resp
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidElasticIpFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidAuthorizationStateFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12359,8 +13211,8 @@ func awsAwsquery_deserializeErrorInvalidElasticIpFault(response *smithyhttp.Resp
return output
}
-func awsAwsquery_deserializeErrorInvalidHsmClientCertificateStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidHsmClientCertificateStateFault{}
+func awsAwsquery_deserializeErrorInvalidClusterParameterGroupStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidClusterParameterGroupStateFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12390,7 +13242,7 @@ func awsAwsquery_deserializeErrorInvalidHsmClientCertificateStateFault(response
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidHsmClientCertificateStateFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidClusterParameterGroupStateFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12403,8 +13255,8 @@ func awsAwsquery_deserializeErrorInvalidHsmClientCertificateStateFault(response
return output
}
-func awsAwsquery_deserializeErrorInvalidHsmConfigurationStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidHsmConfigurationStateFault{}
+func awsAwsquery_deserializeErrorInvalidClusterSecurityGroupStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidClusterSecurityGroupStateFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12434,7 +13286,7 @@ func awsAwsquery_deserializeErrorInvalidHsmConfigurationStateFault(response *smi
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidHsmConfigurationStateFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidClusterSecurityGroupStateFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12447,8 +13299,8 @@ func awsAwsquery_deserializeErrorInvalidHsmConfigurationStateFault(response *smi
return output
}
-func awsAwsquery_deserializeErrorInvalidReservedNodeStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidReservedNodeStateFault{}
+func awsAwsquery_deserializeErrorInvalidClusterSnapshotScheduleStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidClusterSnapshotScheduleStateFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12478,7 +13330,7 @@ func awsAwsquery_deserializeErrorInvalidReservedNodeStateFault(response *smithyh
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidReservedNodeStateFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidClusterSnapshotScheduleStateFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12491,8 +13343,8 @@ func awsAwsquery_deserializeErrorInvalidReservedNodeStateFault(response *smithyh
return output
}
-func awsAwsquery_deserializeErrorInvalidRestoreFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidRestoreFault{}
+func awsAwsquery_deserializeErrorInvalidClusterSnapshotStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidClusterSnapshotStateFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12522,7 +13374,7 @@ func awsAwsquery_deserializeErrorInvalidRestoreFault(response *smithyhttp.Respon
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidRestoreFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidClusterSnapshotStateFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12535,8 +13387,8 @@ func awsAwsquery_deserializeErrorInvalidRestoreFault(response *smithyhttp.Respon
return output
}
-func awsAwsquery_deserializeErrorInvalidRetentionPeriodFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidRetentionPeriodFault{}
+func awsAwsquery_deserializeErrorInvalidClusterStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidClusterStateFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12566,7 +13418,7 @@ func awsAwsquery_deserializeErrorInvalidRetentionPeriodFault(response *smithyhtt
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidRetentionPeriodFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidClusterStateFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12579,8 +13431,8 @@ func awsAwsquery_deserializeErrorInvalidRetentionPeriodFault(response *smithyhtt
return output
}
-func awsAwsquery_deserializeErrorInvalidS3BucketNameFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidS3BucketNameFault{}
+func awsAwsquery_deserializeErrorInvalidClusterSubnetGroupStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidClusterSubnetGroupStateFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12610,7 +13462,7 @@ func awsAwsquery_deserializeErrorInvalidS3BucketNameFault(response *smithyhttp.R
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidS3BucketNameFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidClusterSubnetGroupStateFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12623,8 +13475,8 @@ func awsAwsquery_deserializeErrorInvalidS3BucketNameFault(response *smithyhttp.R
return output
}
-func awsAwsquery_deserializeErrorInvalidS3KeyPrefixFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidS3KeyPrefixFault{}
+func awsAwsquery_deserializeErrorInvalidClusterSubnetStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidClusterSubnetStateFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12654,7 +13506,7 @@ func awsAwsquery_deserializeErrorInvalidS3KeyPrefixFault(response *smithyhttp.Re
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidS3KeyPrefixFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidClusterSubnetStateFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12667,8 +13519,8 @@ func awsAwsquery_deserializeErrorInvalidS3KeyPrefixFault(response *smithyhttp.Re
return output
}
-func awsAwsquery_deserializeErrorInvalidScheduledActionFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidScheduledActionFault{}
+func awsAwsquery_deserializeErrorInvalidClusterTrackFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidClusterTrackFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12698,7 +13550,7 @@ func awsAwsquery_deserializeErrorInvalidScheduledActionFault(response *smithyhtt
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidScheduledActionFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidClusterTrackFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12711,8 +13563,8 @@ func awsAwsquery_deserializeErrorInvalidScheduledActionFault(response *smithyhtt
return output
}
-func awsAwsquery_deserializeErrorInvalidScheduleFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidScheduleFault{}
+func awsAwsquery_deserializeErrorInvalidElasticIpFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidElasticIpFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12742,7 +13594,7 @@ func awsAwsquery_deserializeErrorInvalidScheduleFault(response *smithyhttp.Respo
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidScheduleFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidElasticIpFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12755,8 +13607,8 @@ func awsAwsquery_deserializeErrorInvalidScheduleFault(response *smithyhttp.Respo
return output
}
-func awsAwsquery_deserializeErrorInvalidSnapshotCopyGrantStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidSnapshotCopyGrantStateFault{}
+func awsAwsquery_deserializeErrorInvalidEndpointStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidEndpointStateFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12786,7 +13638,7 @@ func awsAwsquery_deserializeErrorInvalidSnapshotCopyGrantStateFault(response *sm
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidSnapshotCopyGrantStateFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidEndpointStateFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12799,8 +13651,8 @@ func awsAwsquery_deserializeErrorInvalidSnapshotCopyGrantStateFault(response *sm
return output
}
-func awsAwsquery_deserializeErrorInvalidSubnet(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidSubnet{}
+func awsAwsquery_deserializeErrorInvalidHsmClientCertificateStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidHsmClientCertificateStateFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12830,7 +13682,7 @@ func awsAwsquery_deserializeErrorInvalidSubnet(response *smithyhttp.Response, er
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidSubnet(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidHsmClientCertificateStateFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12843,8 +13695,8 @@ func awsAwsquery_deserializeErrorInvalidSubnet(response *smithyhttp.Response, er
return output
}
-func awsAwsquery_deserializeErrorInvalidSubscriptionStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidSubscriptionStateFault{}
+func awsAwsquery_deserializeErrorInvalidHsmConfigurationStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidHsmConfigurationStateFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12874,7 +13726,7 @@ func awsAwsquery_deserializeErrorInvalidSubscriptionStateFault(response *smithyh
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidSubscriptionStateFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidHsmConfigurationStateFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12887,8 +13739,8 @@ func awsAwsquery_deserializeErrorInvalidSubscriptionStateFault(response *smithyh
return output
}
-func awsAwsquery_deserializeErrorInvalidTableRestoreArgumentFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidTableRestoreArgumentFault{}
+func awsAwsquery_deserializeErrorInvalidReservedNodeStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidReservedNodeStateFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12918,7 +13770,7 @@ func awsAwsquery_deserializeErrorInvalidTableRestoreArgumentFault(response *smit
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidTableRestoreArgumentFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidReservedNodeStateFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12931,8 +13783,8 @@ func awsAwsquery_deserializeErrorInvalidTableRestoreArgumentFault(response *smit
return output
}
-func awsAwsquery_deserializeErrorInvalidTagFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidTagFault{}
+func awsAwsquery_deserializeErrorInvalidRestoreFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidRestoreFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -12962,7 +13814,7 @@ func awsAwsquery_deserializeErrorInvalidTagFault(response *smithyhttp.Response,
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidTagFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidRestoreFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -12975,8 +13827,8 @@ func awsAwsquery_deserializeErrorInvalidTagFault(response *smithyhttp.Response,
return output
}
-func awsAwsquery_deserializeErrorInvalidUsageLimitFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidUsageLimitFault{}
+func awsAwsquery_deserializeErrorInvalidRetentionPeriodFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidRetentionPeriodFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13006,7 +13858,7 @@ func awsAwsquery_deserializeErrorInvalidUsageLimitFault(response *smithyhttp.Res
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidUsageLimitFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidRetentionPeriodFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13019,8 +13871,8 @@ func awsAwsquery_deserializeErrorInvalidUsageLimitFault(response *smithyhttp.Res
return output
}
-func awsAwsquery_deserializeErrorInvalidVPCNetworkStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.InvalidVPCNetworkStateFault{}
+func awsAwsquery_deserializeErrorInvalidS3BucketNameFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidS3BucketNameFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13050,7 +13902,7 @@ func awsAwsquery_deserializeErrorInvalidVPCNetworkStateFault(response *smithyhtt
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentInvalidVPCNetworkStateFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidS3BucketNameFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13063,8 +13915,8 @@ func awsAwsquery_deserializeErrorInvalidVPCNetworkStateFault(response *smithyhtt
return output
}
-func awsAwsquery_deserializeErrorLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.LimitExceededFault{}
+func awsAwsquery_deserializeErrorInvalidS3KeyPrefixFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidS3KeyPrefixFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13094,7 +13946,7 @@ func awsAwsquery_deserializeErrorLimitExceededFault(response *smithyhttp.Respons
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentLimitExceededFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidS3KeyPrefixFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13107,8 +13959,8 @@ func awsAwsquery_deserializeErrorLimitExceededFault(response *smithyhttp.Respons
return output
}
-func awsAwsquery_deserializeErrorNumberOfNodesPerClusterLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.NumberOfNodesPerClusterLimitExceededFault{}
+func awsAwsquery_deserializeErrorInvalidScheduledActionFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidScheduledActionFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13138,7 +13990,7 @@ func awsAwsquery_deserializeErrorNumberOfNodesPerClusterLimitExceededFault(respo
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentNumberOfNodesPerClusterLimitExceededFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidScheduledActionFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13151,8 +14003,8 @@ func awsAwsquery_deserializeErrorNumberOfNodesPerClusterLimitExceededFault(respo
return output
}
-func awsAwsquery_deserializeErrorNumberOfNodesQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.NumberOfNodesQuotaExceededFault{}
+func awsAwsquery_deserializeErrorInvalidScheduleFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidScheduleFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13182,7 +14034,7 @@ func awsAwsquery_deserializeErrorNumberOfNodesQuotaExceededFault(response *smith
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentNumberOfNodesQuotaExceededFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidScheduleFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13195,8 +14047,8 @@ func awsAwsquery_deserializeErrorNumberOfNodesQuotaExceededFault(response *smith
return output
}
-func awsAwsquery_deserializeErrorReservedNodeAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.ReservedNodeAlreadyExistsFault{}
+func awsAwsquery_deserializeErrorInvalidSnapshotCopyGrantStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidSnapshotCopyGrantStateFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13226,7 +14078,7 @@ func awsAwsquery_deserializeErrorReservedNodeAlreadyExistsFault(response *smithy
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentReservedNodeAlreadyExistsFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidSnapshotCopyGrantStateFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13239,8 +14091,8 @@ func awsAwsquery_deserializeErrorReservedNodeAlreadyExistsFault(response *smithy
return output
}
-func awsAwsquery_deserializeErrorReservedNodeAlreadyMigratedFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.ReservedNodeAlreadyMigratedFault{}
+func awsAwsquery_deserializeErrorInvalidSubnet(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidSubnet{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13270,7 +14122,7 @@ func awsAwsquery_deserializeErrorReservedNodeAlreadyMigratedFault(response *smit
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentReservedNodeAlreadyMigratedFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidSubnet(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13283,8 +14135,8 @@ func awsAwsquery_deserializeErrorReservedNodeAlreadyMigratedFault(response *smit
return output
}
-func awsAwsquery_deserializeErrorReservedNodeNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.ReservedNodeNotFoundFault{}
+func awsAwsquery_deserializeErrorInvalidSubscriptionStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidSubscriptionStateFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13314,7 +14166,7 @@ func awsAwsquery_deserializeErrorReservedNodeNotFoundFault(response *smithyhttp.
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentReservedNodeNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidSubscriptionStateFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13327,8 +14179,8 @@ func awsAwsquery_deserializeErrorReservedNodeNotFoundFault(response *smithyhttp.
return output
}
-func awsAwsquery_deserializeErrorReservedNodeOfferingNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.ReservedNodeOfferingNotFoundFault{}
+func awsAwsquery_deserializeErrorInvalidTableRestoreArgumentFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidTableRestoreArgumentFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13358,7 +14210,7 @@ func awsAwsquery_deserializeErrorReservedNodeOfferingNotFoundFault(response *smi
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentReservedNodeOfferingNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidTableRestoreArgumentFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13371,8 +14223,8 @@ func awsAwsquery_deserializeErrorReservedNodeOfferingNotFoundFault(response *smi
return output
}
-func awsAwsquery_deserializeErrorReservedNodeQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.ReservedNodeQuotaExceededFault{}
+func awsAwsquery_deserializeErrorInvalidTagFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidTagFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13402,7 +14254,7 @@ func awsAwsquery_deserializeErrorReservedNodeQuotaExceededFault(response *smithy
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentReservedNodeQuotaExceededFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidTagFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13415,8 +14267,8 @@ func awsAwsquery_deserializeErrorReservedNodeQuotaExceededFault(response *smithy
return output
}
-func awsAwsquery_deserializeErrorResizeNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.ResizeNotFoundFault{}
+func awsAwsquery_deserializeErrorInvalidUsageLimitFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidUsageLimitFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13446,7 +14298,7 @@ func awsAwsquery_deserializeErrorResizeNotFoundFault(response *smithyhttp.Respon
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentResizeNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidUsageLimitFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13459,8 +14311,8 @@ func awsAwsquery_deserializeErrorResizeNotFoundFault(response *smithyhttp.Respon
return output
}
-func awsAwsquery_deserializeErrorResourceNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.ResourceNotFoundFault{}
+func awsAwsquery_deserializeErrorInvalidVPCNetworkStateFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.InvalidVPCNetworkStateFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13490,7 +14342,7 @@ func awsAwsquery_deserializeErrorResourceNotFoundFault(response *smithyhttp.Resp
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentResourceNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentInvalidVPCNetworkStateFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13503,8 +14355,8 @@ func awsAwsquery_deserializeErrorResourceNotFoundFault(response *smithyhttp.Resp
return output
}
-func awsAwsquery_deserializeErrorScheduledActionAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.ScheduledActionAlreadyExistsFault{}
+func awsAwsquery_deserializeErrorLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.LimitExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13534,7 +14386,7 @@ func awsAwsquery_deserializeErrorScheduledActionAlreadyExistsFault(response *smi
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentScheduledActionAlreadyExistsFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentLimitExceededFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13547,8 +14399,8 @@ func awsAwsquery_deserializeErrorScheduledActionAlreadyExistsFault(response *smi
return output
}
-func awsAwsquery_deserializeErrorScheduledActionNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.ScheduledActionNotFoundFault{}
+func awsAwsquery_deserializeErrorNumberOfNodesPerClusterLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.NumberOfNodesPerClusterLimitExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13578,7 +14430,7 @@ func awsAwsquery_deserializeErrorScheduledActionNotFoundFault(response *smithyht
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentScheduledActionNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentNumberOfNodesPerClusterLimitExceededFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13591,8 +14443,8 @@ func awsAwsquery_deserializeErrorScheduledActionNotFoundFault(response *smithyht
return output
}
-func awsAwsquery_deserializeErrorScheduledActionQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.ScheduledActionQuotaExceededFault{}
+func awsAwsquery_deserializeErrorNumberOfNodesQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.NumberOfNodesQuotaExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13622,7 +14474,7 @@ func awsAwsquery_deserializeErrorScheduledActionQuotaExceededFault(response *smi
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentScheduledActionQuotaExceededFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentNumberOfNodesQuotaExceededFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13635,8 +14487,8 @@ func awsAwsquery_deserializeErrorScheduledActionQuotaExceededFault(response *smi
return output
}
-func awsAwsquery_deserializeErrorScheduledActionTypeUnsupportedFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.ScheduledActionTypeUnsupportedFault{}
+func awsAwsquery_deserializeErrorReservedNodeAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ReservedNodeAlreadyExistsFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13666,7 +14518,7 @@ func awsAwsquery_deserializeErrorScheduledActionTypeUnsupportedFault(response *s
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentScheduledActionTypeUnsupportedFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentReservedNodeAlreadyExistsFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13679,8 +14531,8 @@ func awsAwsquery_deserializeErrorScheduledActionTypeUnsupportedFault(response *s
return output
}
-func awsAwsquery_deserializeErrorScheduleDefinitionTypeUnsupportedFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.ScheduleDefinitionTypeUnsupportedFault{}
+func awsAwsquery_deserializeErrorReservedNodeAlreadyMigratedFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ReservedNodeAlreadyMigratedFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13710,7 +14562,7 @@ func awsAwsquery_deserializeErrorScheduleDefinitionTypeUnsupportedFault(response
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentScheduleDefinitionTypeUnsupportedFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentReservedNodeAlreadyMigratedFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13723,8 +14575,8 @@ func awsAwsquery_deserializeErrorScheduleDefinitionTypeUnsupportedFault(response
return output
}
-func awsAwsquery_deserializeErrorSnapshotCopyAlreadyDisabledFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SnapshotCopyAlreadyDisabledFault{}
+func awsAwsquery_deserializeErrorReservedNodeNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ReservedNodeNotFoundFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13754,7 +14606,7 @@ func awsAwsquery_deserializeErrorSnapshotCopyAlreadyDisabledFault(response *smit
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSnapshotCopyAlreadyDisabledFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentReservedNodeNotFoundFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13767,8 +14619,8 @@ func awsAwsquery_deserializeErrorSnapshotCopyAlreadyDisabledFault(response *smit
return output
}
-func awsAwsquery_deserializeErrorSnapshotCopyAlreadyEnabledFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SnapshotCopyAlreadyEnabledFault{}
+func awsAwsquery_deserializeErrorReservedNodeOfferingNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ReservedNodeOfferingNotFoundFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13798,7 +14650,7 @@ func awsAwsquery_deserializeErrorSnapshotCopyAlreadyEnabledFault(response *smith
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSnapshotCopyAlreadyEnabledFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentReservedNodeOfferingNotFoundFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13811,8 +14663,8 @@ func awsAwsquery_deserializeErrorSnapshotCopyAlreadyEnabledFault(response *smith
return output
}
-func awsAwsquery_deserializeErrorSnapshotCopyDisabledFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SnapshotCopyDisabledFault{}
+func awsAwsquery_deserializeErrorReservedNodeQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ReservedNodeQuotaExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13842,7 +14694,7 @@ func awsAwsquery_deserializeErrorSnapshotCopyDisabledFault(response *smithyhttp.
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSnapshotCopyDisabledFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentReservedNodeQuotaExceededFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13855,8 +14707,8 @@ func awsAwsquery_deserializeErrorSnapshotCopyDisabledFault(response *smithyhttp.
return output
}
-func awsAwsquery_deserializeErrorSnapshotCopyGrantAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SnapshotCopyGrantAlreadyExistsFault{}
+func awsAwsquery_deserializeErrorResizeNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ResizeNotFoundFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13886,7 +14738,7 @@ func awsAwsquery_deserializeErrorSnapshotCopyGrantAlreadyExistsFault(response *s
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSnapshotCopyGrantAlreadyExistsFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentResizeNotFoundFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13899,8 +14751,8 @@ func awsAwsquery_deserializeErrorSnapshotCopyGrantAlreadyExistsFault(response *s
return output
}
-func awsAwsquery_deserializeErrorSnapshotCopyGrantNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SnapshotCopyGrantNotFoundFault{}
+func awsAwsquery_deserializeErrorResourceNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ResourceNotFoundFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13930,7 +14782,7 @@ func awsAwsquery_deserializeErrorSnapshotCopyGrantNotFoundFault(response *smithy
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSnapshotCopyGrantNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentResourceNotFoundFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13943,8 +14795,8 @@ func awsAwsquery_deserializeErrorSnapshotCopyGrantNotFoundFault(response *smithy
return output
}
-func awsAwsquery_deserializeErrorSnapshotCopyGrantQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SnapshotCopyGrantQuotaExceededFault{}
+func awsAwsquery_deserializeErrorScheduledActionAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ScheduledActionAlreadyExistsFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -13974,7 +14826,7 @@ func awsAwsquery_deserializeErrorSnapshotCopyGrantQuotaExceededFault(response *s
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSnapshotCopyGrantQuotaExceededFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentScheduledActionAlreadyExistsFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -13987,8 +14839,8 @@ func awsAwsquery_deserializeErrorSnapshotCopyGrantQuotaExceededFault(response *s
return output
}
-func awsAwsquery_deserializeErrorSnapshotScheduleAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SnapshotScheduleAlreadyExistsFault{}
+func awsAwsquery_deserializeErrorScheduledActionNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ScheduledActionNotFoundFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14018,7 +14870,7 @@ func awsAwsquery_deserializeErrorSnapshotScheduleAlreadyExistsFault(response *sm
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSnapshotScheduleAlreadyExistsFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentScheduledActionNotFoundFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14031,8 +14883,8 @@ func awsAwsquery_deserializeErrorSnapshotScheduleAlreadyExistsFault(response *sm
return output
}
-func awsAwsquery_deserializeErrorSnapshotScheduleNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SnapshotScheduleNotFoundFault{}
+func awsAwsquery_deserializeErrorScheduledActionQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ScheduledActionQuotaExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14062,7 +14914,7 @@ func awsAwsquery_deserializeErrorSnapshotScheduleNotFoundFault(response *smithyh
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSnapshotScheduleNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentScheduledActionQuotaExceededFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14075,8 +14927,8 @@ func awsAwsquery_deserializeErrorSnapshotScheduleNotFoundFault(response *smithyh
return output
}
-func awsAwsquery_deserializeErrorSnapshotScheduleQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SnapshotScheduleQuotaExceededFault{}
+func awsAwsquery_deserializeErrorScheduledActionTypeUnsupportedFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ScheduledActionTypeUnsupportedFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14106,7 +14958,7 @@ func awsAwsquery_deserializeErrorSnapshotScheduleQuotaExceededFault(response *sm
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSnapshotScheduleQuotaExceededFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentScheduledActionTypeUnsupportedFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14119,8 +14971,8 @@ func awsAwsquery_deserializeErrorSnapshotScheduleQuotaExceededFault(response *sm
return output
}
-func awsAwsquery_deserializeErrorSnapshotScheduleUpdateInProgressFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SnapshotScheduleUpdateInProgressFault{}
+func awsAwsquery_deserializeErrorScheduleDefinitionTypeUnsupportedFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.ScheduleDefinitionTypeUnsupportedFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14150,7 +15002,7 @@ func awsAwsquery_deserializeErrorSnapshotScheduleUpdateInProgressFault(response
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSnapshotScheduleUpdateInProgressFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentScheduleDefinitionTypeUnsupportedFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14163,8 +15015,8 @@ func awsAwsquery_deserializeErrorSnapshotScheduleUpdateInProgressFault(response
return output
}
-func awsAwsquery_deserializeErrorSNSInvalidTopicFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SNSInvalidTopicFault{}
+func awsAwsquery_deserializeErrorSnapshotCopyAlreadyDisabledFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SnapshotCopyAlreadyDisabledFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14194,7 +15046,7 @@ func awsAwsquery_deserializeErrorSNSInvalidTopicFault(response *smithyhttp.Respo
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSNSInvalidTopicFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentSnapshotCopyAlreadyDisabledFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14207,8 +15059,8 @@ func awsAwsquery_deserializeErrorSNSInvalidTopicFault(response *smithyhttp.Respo
return output
}
-func awsAwsquery_deserializeErrorSNSNoAuthorizationFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SNSNoAuthorizationFault{}
+func awsAwsquery_deserializeErrorSnapshotCopyAlreadyEnabledFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SnapshotCopyAlreadyEnabledFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14238,7 +15090,7 @@ func awsAwsquery_deserializeErrorSNSNoAuthorizationFault(response *smithyhttp.Re
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSNSNoAuthorizationFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentSnapshotCopyAlreadyEnabledFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14251,8 +15103,8 @@ func awsAwsquery_deserializeErrorSNSNoAuthorizationFault(response *smithyhttp.Re
return output
}
-func awsAwsquery_deserializeErrorSNSTopicArnNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SNSTopicArnNotFoundFault{}
+func awsAwsquery_deserializeErrorSnapshotCopyDisabledFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SnapshotCopyDisabledFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14282,7 +15134,7 @@ func awsAwsquery_deserializeErrorSNSTopicArnNotFoundFault(response *smithyhttp.R
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSNSTopicArnNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentSnapshotCopyDisabledFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14295,8 +15147,8 @@ func awsAwsquery_deserializeErrorSNSTopicArnNotFoundFault(response *smithyhttp.R
return output
}
-func awsAwsquery_deserializeErrorSourceNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SourceNotFoundFault{}
+func awsAwsquery_deserializeErrorSnapshotCopyGrantAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SnapshotCopyGrantAlreadyExistsFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14326,7 +15178,7 @@ func awsAwsquery_deserializeErrorSourceNotFoundFault(response *smithyhttp.Respon
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSourceNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentSnapshotCopyGrantAlreadyExistsFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14339,8 +15191,8 @@ func awsAwsquery_deserializeErrorSourceNotFoundFault(response *smithyhttp.Respon
return output
}
-func awsAwsquery_deserializeErrorSubnetAlreadyInUse(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SubnetAlreadyInUse{}
+func awsAwsquery_deserializeErrorSnapshotCopyGrantNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SnapshotCopyGrantNotFoundFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14370,7 +15222,7 @@ func awsAwsquery_deserializeErrorSubnetAlreadyInUse(response *smithyhttp.Respons
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSubnetAlreadyInUse(&output, decoder)
+ err = awsAwsquery_deserializeDocumentSnapshotCopyGrantNotFoundFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14383,8 +15235,8 @@ func awsAwsquery_deserializeErrorSubnetAlreadyInUse(response *smithyhttp.Respons
return output
}
-func awsAwsquery_deserializeErrorSubscriptionAlreadyExistFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SubscriptionAlreadyExistFault{}
+func awsAwsquery_deserializeErrorSnapshotCopyGrantQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SnapshotCopyGrantQuotaExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14414,7 +15266,7 @@ func awsAwsquery_deserializeErrorSubscriptionAlreadyExistFault(response *smithyh
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSubscriptionAlreadyExistFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentSnapshotCopyGrantQuotaExceededFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14427,8 +15279,8 @@ func awsAwsquery_deserializeErrorSubscriptionAlreadyExistFault(response *smithyh
return output
}
-func awsAwsquery_deserializeErrorSubscriptionCategoryNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SubscriptionCategoryNotFoundFault{}
+func awsAwsquery_deserializeErrorSnapshotScheduleAlreadyExistsFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SnapshotScheduleAlreadyExistsFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14458,7 +15310,7 @@ func awsAwsquery_deserializeErrorSubscriptionCategoryNotFoundFault(response *smi
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSubscriptionCategoryNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentSnapshotScheduleAlreadyExistsFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14471,8 +15323,8 @@ func awsAwsquery_deserializeErrorSubscriptionCategoryNotFoundFault(response *smi
return output
}
-func awsAwsquery_deserializeErrorSubscriptionEventIdNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SubscriptionEventIdNotFoundFault{}
+func awsAwsquery_deserializeErrorSnapshotScheduleNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SnapshotScheduleNotFoundFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14502,7 +15354,7 @@ func awsAwsquery_deserializeErrorSubscriptionEventIdNotFoundFault(response *smit
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSubscriptionEventIdNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentSnapshotScheduleNotFoundFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14515,8 +15367,8 @@ func awsAwsquery_deserializeErrorSubscriptionEventIdNotFoundFault(response *smit
return output
}
-func awsAwsquery_deserializeErrorSubscriptionNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SubscriptionNotFoundFault{}
+func awsAwsquery_deserializeErrorSnapshotScheduleQuotaExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SnapshotScheduleQuotaExceededFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14546,7 +15398,7 @@ func awsAwsquery_deserializeErrorSubscriptionNotFoundFault(response *smithyhttp.
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSubscriptionNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentSnapshotScheduleQuotaExceededFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14559,8 +15411,8 @@ func awsAwsquery_deserializeErrorSubscriptionNotFoundFault(response *smithyhttp.
return output
}
-func awsAwsquery_deserializeErrorSubscriptionSeverityNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.SubscriptionSeverityNotFoundFault{}
+func awsAwsquery_deserializeErrorSnapshotScheduleUpdateInProgressFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SnapshotScheduleUpdateInProgressFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14590,7 +15442,7 @@ func awsAwsquery_deserializeErrorSubscriptionSeverityNotFoundFault(response *smi
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentSubscriptionSeverityNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentSnapshotScheduleUpdateInProgressFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14603,8 +15455,8 @@ func awsAwsquery_deserializeErrorSubscriptionSeverityNotFoundFault(response *smi
return output
}
-func awsAwsquery_deserializeErrorTableLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.TableLimitExceededFault{}
+func awsAwsquery_deserializeErrorSNSInvalidTopicFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SNSInvalidTopicFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14634,7 +15486,7 @@ func awsAwsquery_deserializeErrorTableLimitExceededFault(response *smithyhttp.Re
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentTableLimitExceededFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentSNSInvalidTopicFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14647,8 +15499,8 @@ func awsAwsquery_deserializeErrorTableLimitExceededFault(response *smithyhttp.Re
return output
}
-func awsAwsquery_deserializeErrorTableRestoreNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.TableRestoreNotFoundFault{}
+func awsAwsquery_deserializeErrorSNSNoAuthorizationFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SNSNoAuthorizationFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14678,7 +15530,7 @@ func awsAwsquery_deserializeErrorTableRestoreNotFoundFault(response *smithyhttp.
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentTableRestoreNotFoundFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentSNSNoAuthorizationFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14691,8 +15543,8 @@ func awsAwsquery_deserializeErrorTableRestoreNotFoundFault(response *smithyhttp.
return output
}
-func awsAwsquery_deserializeErrorTagLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.TagLimitExceededFault{}
+func awsAwsquery_deserializeErrorSNSTopicArnNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SNSTopicArnNotFoundFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14722,7 +15574,7 @@ func awsAwsquery_deserializeErrorTagLimitExceededFault(response *smithyhttp.Resp
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentTagLimitExceededFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentSNSTopicArnNotFoundFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14735,8 +15587,8 @@ func awsAwsquery_deserializeErrorTagLimitExceededFault(response *smithyhttp.Resp
return output
}
-func awsAwsquery_deserializeErrorUnauthorizedOperation(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.UnauthorizedOperation{}
+func awsAwsquery_deserializeErrorSourceNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SourceNotFoundFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14766,7 +15618,7 @@ func awsAwsquery_deserializeErrorUnauthorizedOperation(response *smithyhttp.Resp
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentUnauthorizedOperation(&output, decoder)
+ err = awsAwsquery_deserializeDocumentSourceNotFoundFault(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14779,8 +15631,8 @@ func awsAwsquery_deserializeErrorUnauthorizedOperation(response *smithyhttp.Resp
return output
}
-func awsAwsquery_deserializeErrorUnknownSnapshotCopyRegionFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.UnknownSnapshotCopyRegionFault{}
+func awsAwsquery_deserializeErrorSubnetAlreadyInUse(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SubnetAlreadyInUse{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14810,7 +15662,7 @@ func awsAwsquery_deserializeErrorUnknownSnapshotCopyRegionFault(response *smithy
}
decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- err = awsAwsquery_deserializeDocumentUnknownSnapshotCopyRegionFault(&output, decoder)
+ err = awsAwsquery_deserializeDocumentSubnetAlreadyInUse(&output, decoder)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -14823,8 +15675,448 @@ func awsAwsquery_deserializeErrorUnknownSnapshotCopyRegionFault(response *smithy
return output
}
-func awsAwsquery_deserializeErrorUnsupportedOperationFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
- output := &types.UnsupportedOperationFault{}
+func awsAwsquery_deserializeErrorSubscriptionAlreadyExistFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SubscriptionAlreadyExistFault{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+ body := io.TeeReader(errorBody, ringBuffer)
+ rootDecoder := xml.NewDecoder(body)
+ t, err := smithyxml.FetchRootElement(rootDecoder)
+ if err == io.EOF {
+ return output
+ }
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("Error")
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeDocumentSubscriptionAlreadyExistFault(&output, decoder)
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ return output
+}
+
+func awsAwsquery_deserializeErrorSubscriptionCategoryNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SubscriptionCategoryNotFoundFault{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+ body := io.TeeReader(errorBody, ringBuffer)
+ rootDecoder := xml.NewDecoder(body)
+ t, err := smithyxml.FetchRootElement(rootDecoder)
+ if err == io.EOF {
+ return output
+ }
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("Error")
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeDocumentSubscriptionCategoryNotFoundFault(&output, decoder)
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ return output
+}
+
+func awsAwsquery_deserializeErrorSubscriptionEventIdNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SubscriptionEventIdNotFoundFault{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+ body := io.TeeReader(errorBody, ringBuffer)
+ rootDecoder := xml.NewDecoder(body)
+ t, err := smithyxml.FetchRootElement(rootDecoder)
+ if err == io.EOF {
+ return output
+ }
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("Error")
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeDocumentSubscriptionEventIdNotFoundFault(&output, decoder)
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ return output
+}
+
+func awsAwsquery_deserializeErrorSubscriptionNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SubscriptionNotFoundFault{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+ body := io.TeeReader(errorBody, ringBuffer)
+ rootDecoder := xml.NewDecoder(body)
+ t, err := smithyxml.FetchRootElement(rootDecoder)
+ if err == io.EOF {
+ return output
+ }
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("Error")
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeDocumentSubscriptionNotFoundFault(&output, decoder)
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ return output
+}
+
+func awsAwsquery_deserializeErrorSubscriptionSeverityNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.SubscriptionSeverityNotFoundFault{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+ body := io.TeeReader(errorBody, ringBuffer)
+ rootDecoder := xml.NewDecoder(body)
+ t, err := smithyxml.FetchRootElement(rootDecoder)
+ if err == io.EOF {
+ return output
+ }
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("Error")
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeDocumentSubscriptionSeverityNotFoundFault(&output, decoder)
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ return output
+}
+
+func awsAwsquery_deserializeErrorTableLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.TableLimitExceededFault{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+ body := io.TeeReader(errorBody, ringBuffer)
+ rootDecoder := xml.NewDecoder(body)
+ t, err := smithyxml.FetchRootElement(rootDecoder)
+ if err == io.EOF {
+ return output
+ }
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("Error")
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeDocumentTableLimitExceededFault(&output, decoder)
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ return output
+}
+
+func awsAwsquery_deserializeErrorTableRestoreNotFoundFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.TableRestoreNotFoundFault{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+ body := io.TeeReader(errorBody, ringBuffer)
+ rootDecoder := xml.NewDecoder(body)
+ t, err := smithyxml.FetchRootElement(rootDecoder)
+ if err == io.EOF {
+ return output
+ }
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("Error")
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeDocumentTableRestoreNotFoundFault(&output, decoder)
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ return output
+}
+
+func awsAwsquery_deserializeErrorTagLimitExceededFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.TagLimitExceededFault{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+ body := io.TeeReader(errorBody, ringBuffer)
+ rootDecoder := xml.NewDecoder(body)
+ t, err := smithyxml.FetchRootElement(rootDecoder)
+ if err == io.EOF {
+ return output
+ }
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("Error")
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeDocumentTagLimitExceededFault(&output, decoder)
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ return output
+}
+
+func awsAwsquery_deserializeErrorUnauthorizedOperation(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.UnauthorizedOperation{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+ body := io.TeeReader(errorBody, ringBuffer)
+ rootDecoder := xml.NewDecoder(body)
+ t, err := smithyxml.FetchRootElement(rootDecoder)
+ if err == io.EOF {
+ return output
+ }
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("Error")
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeDocumentUnauthorizedOperation(&output, decoder)
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ return output
+}
+
+func awsAwsquery_deserializeErrorUnknownSnapshotCopyRegionFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.UnknownSnapshotCopyRegionFault{}
+ var buff [1024]byte
+ ringBuffer := smithyio.NewRingBuffer(buff[:])
+ body := io.TeeReader(errorBody, ringBuffer)
+ rootDecoder := xml.NewDecoder(body)
+ t, err := smithyxml.FetchRootElement(rootDecoder)
+ if err == io.EOF {
+ return output
+ }
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder := smithyxml.WrapNodeDecoder(rootDecoder, t)
+ t, err = decoder.GetElement("Error")
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ decoder = smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ err = awsAwsquery_deserializeDocumentUnknownSnapshotCopyRegionFault(&output, decoder)
+ if err != nil {
+ var snapshot bytes.Buffer
+ io.Copy(&snapshot, ringBuffer)
+ return &smithy.DeserializationError{
+ Err: fmt.Errorf("failed to decode response body, %w", err),
+ Snapshot: snapshot.Bytes(),
+ }
+ }
+
+ return output
+}
+
+func awsAwsquery_deserializeErrorUnsupportedOperationFault(response *smithyhttp.Response, errorBody *bytes.Reader) error {
+ output := &types.UnsupportedOperationFault{}
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
body := io.TeeReader(errorBody, ringBuffer)
@@ -14999,6 +16291,55 @@ func awsAwsquery_deserializeErrorUsageLimitNotFoundFault(response *smithyhttp.Re
return output
}
+func awsAwsquery_deserializeDocumentAccessToClusterDeniedFault(v **types.AccessToClusterDeniedFault, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.AccessToClusterDeniedFault
+ if *v == nil {
+ sv = &types.AccessToClusterDeniedFault{}
+ } 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("message", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Message = 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 awsAwsquery_deserializeDocumentAccessToSnapshotDeniedFault(v **types.AccessToSnapshotDeniedFault, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -19574,13 +20915,847 @@ func awsAwsquery_deserializeDocumentDependentServiceUnavailableFault(v **types.D
return nil
}
-func awsAwsquery_deserializeDocumentEC2SecurityGroup(v **types.EC2SecurityGroup, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentEC2SecurityGroup(v **types.EC2SecurityGroup, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.EC2SecurityGroup
+ if *v == nil {
+ sv = &types.EC2SecurityGroup{}
+ } 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("EC2SecurityGroupName", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.EC2SecurityGroupName = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("EC2SecurityGroupOwnerId", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.EC2SecurityGroupOwnerId = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Status", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Status = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Tags", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentTagList(&sv.Tags, nodeDecoder); err != nil {
+ return err
+ }
+
+ 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 awsAwsquery_deserializeDocumentEC2SecurityGroupList(v *[]types.EC2SecurityGroup, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv []types.EC2SecurityGroup
+ if *v == nil {
+ sv = make([]types.EC2SecurityGroup, 0)
+ } else {
+ sv = *v
+ }
+
+ originalDecoder := decoder
+ for {
+ t, done, err := decoder.Token()
+ if err != nil {
+ return err
+ }
+ if done {
+ break
+ }
+ switch {
+ case strings.EqualFold("EC2SecurityGroup", t.Name.Local):
+ var col types.EC2SecurityGroup
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &col
+ if err := awsAwsquery_deserializeDocumentEC2SecurityGroup(&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 awsAwsquery_deserializeDocumentEC2SecurityGroupListUnwrapped(v *[]types.EC2SecurityGroup, decoder smithyxml.NodeDecoder) error {
+ var sv []types.EC2SecurityGroup
+ if *v == nil {
+ sv = make([]types.EC2SecurityGroup, 0)
+ } else {
+ sv = *v
+ }
+
+ switch {
+ default:
+ var mv types.EC2SecurityGroup
+ t := decoder.StartEl
+ _ = t
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &mv
+ if err := awsAwsquery_deserializeDocumentEC2SecurityGroup(&destAddr, nodeDecoder); err != nil {
+ return err
+ }
+ mv = *destAddr
+ sv = append(sv, mv)
+ }
+ *v = sv
+ return nil
+}
+func awsAwsquery_deserializeDocumentElasticIpStatus(v **types.ElasticIpStatus, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.ElasticIpStatus
+ if *v == nil {
+ sv = &types.ElasticIpStatus{}
+ } 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("ElasticIp", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ElasticIp = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Status", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Status = 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 awsAwsquery_deserializeDocumentEligibleTracksToUpdateList(v *[]types.UpdateTarget, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv []types.UpdateTarget
+ if *v == nil {
+ sv = make([]types.UpdateTarget, 0)
+ } else {
+ sv = *v
+ }
+
+ originalDecoder := decoder
+ for {
+ t, done, err := decoder.Token()
+ if err != nil {
+ return err
+ }
+ if done {
+ break
+ }
+ switch {
+ case strings.EqualFold("UpdateTarget", t.Name.Local):
+ var col types.UpdateTarget
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &col
+ if err := awsAwsquery_deserializeDocumentUpdateTarget(&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 awsAwsquery_deserializeDocumentEligibleTracksToUpdateListUnwrapped(v *[]types.UpdateTarget, decoder smithyxml.NodeDecoder) error {
+ var sv []types.UpdateTarget
+ if *v == nil {
+ sv = make([]types.UpdateTarget, 0)
+ } else {
+ sv = *v
+ }
+
+ switch {
+ default:
+ var mv types.UpdateTarget
+ t := decoder.StartEl
+ _ = t
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &mv
+ if err := awsAwsquery_deserializeDocumentUpdateTarget(&destAddr, nodeDecoder); err != nil {
+ return err
+ }
+ mv = *destAddr
+ sv = append(sv, mv)
+ }
+ *v = sv
+ return nil
+}
+func awsAwsquery_deserializeDocumentEndpoint(v **types.Endpoint, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.Endpoint
+ if *v == nil {
+ sv = &types.Endpoint{}
+ } 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("Address", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Address = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Port", 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.Port = int32(i64)
+ }
+
+ case strings.EqualFold("VpcEndpoints", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentVpcEndpointsList(&sv.VpcEndpoints, nodeDecoder); err != nil {
+ return err
+ }
+
+ 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 awsAwsquery_deserializeDocumentEndpointAccess(v **types.EndpointAccess, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.EndpointAccess
+ if *v == nil {
+ sv = &types.EndpointAccess{}
+ } 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("Address", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Address = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("ClusterIdentifier", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ClusterIdentifier = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("EndpointCreateTime", 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.EndpointCreateTime = ptr.Time(t)
+ }
+
+ case strings.EqualFold("EndpointName", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.EndpointName = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("EndpointStatus", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.EndpointStatus = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Port", 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.Port = int32(i64)
+ }
+
+ case strings.EqualFold("ResourceOwner", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ResourceOwner = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("SubnetGroupName", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.SubnetGroupName = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("VpcEndpoint", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentVpcEndpoint(&sv.VpcEndpoint, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("VpcSecurityGroups", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentVpcSecurityGroupMembershipList(&sv.VpcSecurityGroups, nodeDecoder); err != nil {
+ return err
+ }
+
+ 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 awsAwsquery_deserializeDocumentEndpointAccesses(v *[]types.EndpointAccess, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv []types.EndpointAccess
+ if *v == nil {
+ sv = make([]types.EndpointAccess, 0)
+ } else {
+ sv = *v
+ }
+
+ originalDecoder := decoder
+ for {
+ t, done, err := decoder.Token()
+ if err != nil {
+ return err
+ }
+ if done {
+ break
+ }
+ switch {
+ case strings.EqualFold("member", t.Name.Local):
+ var col types.EndpointAccess
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &col
+ if err := awsAwsquery_deserializeDocumentEndpointAccess(&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 awsAwsquery_deserializeDocumentEndpointAccessesUnwrapped(v *[]types.EndpointAccess, decoder smithyxml.NodeDecoder) error {
+ var sv []types.EndpointAccess
+ if *v == nil {
+ sv = make([]types.EndpointAccess, 0)
+ } else {
+ sv = *v
+ }
+
+ switch {
+ default:
+ var mv types.EndpointAccess
+ t := decoder.StartEl
+ _ = t
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ destAddr := &mv
+ if err := awsAwsquery_deserializeDocumentEndpointAccess(&destAddr, nodeDecoder); err != nil {
+ return err
+ }
+ mv = *destAddr
+ sv = append(sv, mv)
+ }
+ *v = sv
+ return nil
+}
+func awsAwsquery_deserializeDocumentEndpointAlreadyExistsFault(v **types.EndpointAlreadyExistsFault, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.EndpointAlreadyExistsFault
+ if *v == nil {
+ sv = &types.EndpointAlreadyExistsFault{}
+ } 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("message", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Message = 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 awsAwsquery_deserializeDocumentEndpointAuthorization(v **types.EndpointAuthorization, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.EndpointAuthorization
+ if *v == nil {
+ sv = &types.EndpointAuthorization{}
+ } 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("AllowedAllVPCs", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv, err := strconv.ParseBool(string(val))
+ if err != nil {
+ return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", val)
+ }
+ sv.AllowedAllVPCs = xtv
+ }
+
+ case strings.EqualFold("AllowedVPCs", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentVpcIdentifierList(&sv.AllowedVPCs, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("AuthorizeTime", 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.AuthorizeTime = ptr.Time(t)
+ }
+
+ case strings.EqualFold("ClusterIdentifier", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ClusterIdentifier = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("ClusterStatus", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ClusterStatus = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("EndpointCount", 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.EndpointCount = int32(i64)
+ }
+
+ case strings.EqualFold("Grantee", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Grantee = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Grantor", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Grantor = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Status", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Status = types.AuthorizationStatus(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 awsAwsquery_deserializeDocumentEndpointAuthorizationAlreadyExistsFault(v **types.EndpointAuthorizationAlreadyExistsFault, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.EndpointAuthorizationAlreadyExistsFault
+ if *v == nil {
+ sv = &types.EndpointAuthorizationAlreadyExistsFault{}
+ } 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("message", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Message = 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 awsAwsquery_deserializeDocumentEndpointAuthorizationNotFoundFault(v **types.EndpointAuthorizationNotFoundFault, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.EC2SecurityGroup
+ var sv *types.EndpointAuthorizationNotFoundFault
if *v == nil {
- sv = &types.EC2SecurityGroup{}
+ sv = &types.EndpointAuthorizationNotFoundFault{}
} else {
sv = *v
}
@@ -19596,33 +21771,7 @@ func awsAwsquery_deserializeDocumentEC2SecurityGroup(v **types.EC2SecurityGroup,
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("EC2SecurityGroupName", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
- return err
- }
- if val == nil {
- break
- }
- {
- xtv := string(val)
- sv.EC2SecurityGroupName = ptr.String(xtv)
- }
-
- case strings.EqualFold("EC2SecurityGroupOwnerId", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
- return err
- }
- if val == nil {
- break
- }
- {
- xtv := string(val)
- sv.EC2SecurityGroupOwnerId = ptr.String(xtv)
- }
-
- case strings.EqualFold("Status", t.Name.Local):
+ case strings.EqualFold("message", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -19632,13 +21781,7 @@ func awsAwsquery_deserializeDocumentEC2SecurityGroup(v **types.EC2SecurityGroup,
}
{
xtv := string(val)
- sv.Status = ptr.String(xtv)
- }
-
- case strings.EqualFold("Tags", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentTagList(&sv.Tags, nodeDecoder); err != nil {
- return err
+ sv.Message = ptr.String(xtv)
}
default:
@@ -19655,13 +21798,13 @@ func awsAwsquery_deserializeDocumentEC2SecurityGroup(v **types.EC2SecurityGroup,
return nil
}
-func awsAwsquery_deserializeDocumentEC2SecurityGroupList(v *[]types.EC2SecurityGroup, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentEndpointAuthorizations(v *[]types.EndpointAuthorization, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv []types.EC2SecurityGroup
+ var sv []types.EndpointAuthorization
if *v == nil {
- sv = make([]types.EC2SecurityGroup, 0)
+ sv = make([]types.EndpointAuthorization, 0)
} else {
sv = *v
}
@@ -19676,11 +21819,11 @@ func awsAwsquery_deserializeDocumentEC2SecurityGroupList(v *[]types.EC2SecurityG
break
}
switch {
- case strings.EqualFold("EC2SecurityGroup", t.Name.Local):
- var col types.EC2SecurityGroup
+ case strings.EqualFold("member", t.Name.Local):
+ var col types.EndpointAuthorization
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
destAddr := &col
- if err := awsAwsquery_deserializeDocumentEC2SecurityGroup(&destAddr, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentEndpointAuthorization(&destAddr, nodeDecoder); err != nil {
return err
}
col = *destAddr
@@ -19699,22 +21842,22 @@ func awsAwsquery_deserializeDocumentEC2SecurityGroupList(v *[]types.EC2SecurityG
return nil
}
-func awsAwsquery_deserializeDocumentEC2SecurityGroupListUnwrapped(v *[]types.EC2SecurityGroup, decoder smithyxml.NodeDecoder) error {
- var sv []types.EC2SecurityGroup
+func awsAwsquery_deserializeDocumentEndpointAuthorizationsUnwrapped(v *[]types.EndpointAuthorization, decoder smithyxml.NodeDecoder) error {
+ var sv []types.EndpointAuthorization
if *v == nil {
- sv = make([]types.EC2SecurityGroup, 0)
+ sv = make([]types.EndpointAuthorization, 0)
} else {
sv = *v
}
switch {
default:
- var mv types.EC2SecurityGroup
+ var mv types.EndpointAuthorization
t := decoder.StartEl
_ = t
nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
destAddr := &mv
- if err := awsAwsquery_deserializeDocumentEC2SecurityGroup(&destAddr, nodeDecoder); err != nil {
+ if err := awsAwsquery_deserializeDocumentEndpointAuthorization(&destAddr, nodeDecoder); err != nil {
return err
}
mv = *destAddr
@@ -19723,13 +21866,13 @@ func awsAwsquery_deserializeDocumentEC2SecurityGroupListUnwrapped(v *[]types.EC2
*v = sv
return nil
}
-func awsAwsquery_deserializeDocumentElasticIpStatus(v **types.ElasticIpStatus, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentEndpointAuthorizationsPerClusterLimitExceededFault(v **types.EndpointAuthorizationsPerClusterLimitExceededFault, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.ElasticIpStatus
+ var sv *types.EndpointAuthorizationsPerClusterLimitExceededFault
if *v == nil {
- sv = &types.ElasticIpStatus{}
+ sv = &types.EndpointAuthorizationsPerClusterLimitExceededFault{}
} else {
sv = *v
}
@@ -19745,20 +21888,7 @@ func awsAwsquery_deserializeDocumentElasticIpStatus(v **types.ElasticIpStatus, d
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("ElasticIp", t.Name.Local):
- val, err := decoder.Value()
- if err != nil {
- return err
- }
- if val == nil {
- break
- }
- {
- xtv := string(val)
- sv.ElasticIp = ptr.String(xtv)
- }
-
- case strings.EqualFold("Status", t.Name.Local):
+ case strings.EqualFold("message", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -19768,7 +21898,7 @@ func awsAwsquery_deserializeDocumentElasticIpStatus(v **types.ElasticIpStatus, d
}
{
xtv := string(val)
- sv.Status = ptr.String(xtv)
+ sv.Message = ptr.String(xtv)
}
default:
@@ -19785,18 +21915,17 @@ func awsAwsquery_deserializeDocumentElasticIpStatus(v **types.ElasticIpStatus, d
return nil
}
-func awsAwsquery_deserializeDocumentEligibleTracksToUpdateList(v *[]types.UpdateTarget, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentEndpointNotFoundFault(v **types.EndpointNotFoundFault, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv []types.UpdateTarget
+ var sv *types.EndpointNotFoundFault
if *v == nil {
- sv = make([]types.UpdateTarget, 0)
+ sv = &types.EndpointNotFoundFault{}
} else {
sv = *v
}
- originalDecoder := decoder
for {
t, done, err := decoder.Token()
if err != nil {
@@ -19805,18 +21934,24 @@ func awsAwsquery_deserializeDocumentEligibleTracksToUpdateList(v *[]types.Update
if done {
break
}
+ originalDecoder := decoder
+ decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("UpdateTarget", t.Name.Local):
- var col types.UpdateTarget
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- destAddr := &col
- if err := awsAwsquery_deserializeDocumentUpdateTarget(&destAddr, nodeDecoder); err != nil {
+ case strings.EqualFold("message", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
return err
}
- col = *destAddr
- sv = append(sv, col)
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Message = ptr.String(xtv)
+ }
default:
+ // Do nothing and ignore the unexpected tag element
err = decoder.Decoder.Skip()
if err != nil {
return err
@@ -19829,37 +21964,13 @@ func awsAwsquery_deserializeDocumentEligibleTracksToUpdateList(v *[]types.Update
return nil
}
-func awsAwsquery_deserializeDocumentEligibleTracksToUpdateListUnwrapped(v *[]types.UpdateTarget, decoder smithyxml.NodeDecoder) error {
- var sv []types.UpdateTarget
- if *v == nil {
- sv = make([]types.UpdateTarget, 0)
- } else {
- sv = *v
- }
-
- switch {
- default:
- var mv types.UpdateTarget
- t := decoder.StartEl
- _ = t
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- destAddr := &mv
- if err := awsAwsquery_deserializeDocumentUpdateTarget(&destAddr, nodeDecoder); err != nil {
- return err
- }
- mv = *destAddr
- sv = append(sv, mv)
- }
- *v = sv
- return nil
-}
-func awsAwsquery_deserializeDocumentEndpoint(v **types.Endpoint, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentEndpointsPerAuthorizationLimitExceededFault(v **types.EndpointsPerAuthorizationLimitExceededFault, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.Endpoint
+ var sv *types.EndpointsPerAuthorizationLimitExceededFault
if *v == nil {
- sv = &types.Endpoint{}
+ sv = &types.EndpointsPerAuthorizationLimitExceededFault{}
} else {
sv = *v
}
@@ -19875,7 +21986,7 @@ func awsAwsquery_deserializeDocumentEndpoint(v **types.Endpoint, decoder smithyx
originalDecoder := decoder
decoder = smithyxml.WrapNodeDecoder(originalDecoder.Decoder, t)
switch {
- case strings.EqualFold("Address", t.Name.Local):
+ case strings.EqualFold("message", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -19885,10 +21996,46 @@ func awsAwsquery_deserializeDocumentEndpoint(v **types.Endpoint, decoder smithyx
}
{
xtv := string(val)
- sv.Address = ptr.String(xtv)
+ sv.Message = ptr.String(xtv)
}
- case strings.EqualFold("Port", t.Name.Local):
+ 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 awsAwsquery_deserializeDocumentEndpointsPerClusterLimitExceededFault(v **types.EndpointsPerClusterLimitExceededFault, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.EndpointsPerClusterLimitExceededFault
+ if *v == nil {
+ sv = &types.EndpointsPerClusterLimitExceededFault{}
+ } 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("message", t.Name.Local):
val, err := decoder.Value()
if err != nil {
return err
@@ -19898,17 +22045,7 @@ func awsAwsquery_deserializeDocumentEndpoint(v **types.Endpoint, decoder smithyx
}
{
xtv := string(val)
- i64, err := strconv.ParseInt(xtv, 10, 64)
- if err != nil {
- return err
- }
- sv.Port = int32(i64)
- }
-
- case strings.EqualFold("VpcEndpoints", t.Name.Local):
- nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
- if err := awsAwsquery_deserializeDocumentVpcEndpointsList(&sv.VpcEndpoints, nodeDecoder); err != nil {
- return err
+ sv.Message = ptr.String(xtv)
}
default:
@@ -21854,6 +23991,55 @@ func awsAwsquery_deserializeDocumentInsufficientS3BucketPolicyFault(v **types.In
return nil
}
+func awsAwsquery_deserializeDocumentInvalidAuthorizationStateFault(v **types.InvalidAuthorizationStateFault, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.InvalidAuthorizationStateFault
+ if *v == nil {
+ sv = &types.InvalidAuthorizationStateFault{}
+ } 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("message", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Message = 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 awsAwsquery_deserializeDocumentInvalidClusterParameterGroupStateFault(v **types.InvalidClusterParameterGroupStateFault, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -21952,13 +24138,62 @@ func awsAwsquery_deserializeDocumentInvalidClusterSecurityGroupStateFault(v **ty
return nil
}
-func awsAwsquery_deserializeDocumentInvalidClusterSnapshotScheduleStateFault(v **types.InvalidClusterSnapshotScheduleStateFault, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentInvalidClusterSnapshotScheduleStateFault(v **types.InvalidClusterSnapshotScheduleStateFault, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *types.InvalidClusterSnapshotScheduleStateFault
+ if *v == nil {
+ sv = &types.InvalidClusterSnapshotScheduleStateFault{}
+ } 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("message", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Message = 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 awsAwsquery_deserializeDocumentInvalidClusterSnapshotStateFault(v **types.InvalidClusterSnapshotStateFault, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.InvalidClusterSnapshotScheduleStateFault
+ var sv *types.InvalidClusterSnapshotStateFault
if *v == nil {
- sv = &types.InvalidClusterSnapshotScheduleStateFault{}
+ sv = &types.InvalidClusterSnapshotStateFault{}
} else {
sv = *v
}
@@ -22001,13 +24236,13 @@ func awsAwsquery_deserializeDocumentInvalidClusterSnapshotScheduleStateFault(v *
return nil
}
-func awsAwsquery_deserializeDocumentInvalidClusterSnapshotStateFault(v **types.InvalidClusterSnapshotStateFault, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentInvalidClusterStateFault(v **types.InvalidClusterStateFault, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.InvalidClusterSnapshotStateFault
+ var sv *types.InvalidClusterStateFault
if *v == nil {
- sv = &types.InvalidClusterSnapshotStateFault{}
+ sv = &types.InvalidClusterStateFault{}
} else {
sv = *v
}
@@ -22050,13 +24285,13 @@ func awsAwsquery_deserializeDocumentInvalidClusterSnapshotStateFault(v **types.I
return nil
}
-func awsAwsquery_deserializeDocumentInvalidClusterStateFault(v **types.InvalidClusterStateFault, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentInvalidClusterSubnetGroupStateFault(v **types.InvalidClusterSubnetGroupStateFault, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.InvalidClusterStateFault
+ var sv *types.InvalidClusterSubnetGroupStateFault
if *v == nil {
- sv = &types.InvalidClusterStateFault{}
+ sv = &types.InvalidClusterSubnetGroupStateFault{}
} else {
sv = *v
}
@@ -22099,13 +24334,13 @@ func awsAwsquery_deserializeDocumentInvalidClusterStateFault(v **types.InvalidCl
return nil
}
-func awsAwsquery_deserializeDocumentInvalidClusterSubnetGroupStateFault(v **types.InvalidClusterSubnetGroupStateFault, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentInvalidClusterSubnetStateFault(v **types.InvalidClusterSubnetStateFault, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.InvalidClusterSubnetGroupStateFault
+ var sv *types.InvalidClusterSubnetStateFault
if *v == nil {
- sv = &types.InvalidClusterSubnetGroupStateFault{}
+ sv = &types.InvalidClusterSubnetStateFault{}
} else {
sv = *v
}
@@ -22148,13 +24383,13 @@ func awsAwsquery_deserializeDocumentInvalidClusterSubnetGroupStateFault(v **type
return nil
}
-func awsAwsquery_deserializeDocumentInvalidClusterSubnetStateFault(v **types.InvalidClusterSubnetStateFault, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentInvalidClusterTrackFault(v **types.InvalidClusterTrackFault, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.InvalidClusterSubnetStateFault
+ var sv *types.InvalidClusterTrackFault
if *v == nil {
- sv = &types.InvalidClusterSubnetStateFault{}
+ sv = &types.InvalidClusterTrackFault{}
} else {
sv = *v
}
@@ -22197,13 +24432,13 @@ func awsAwsquery_deserializeDocumentInvalidClusterSubnetStateFault(v **types.Inv
return nil
}
-func awsAwsquery_deserializeDocumentInvalidClusterTrackFault(v **types.InvalidClusterTrackFault, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentInvalidElasticIpFault(v **types.InvalidElasticIpFault, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.InvalidClusterTrackFault
+ var sv *types.InvalidElasticIpFault
if *v == nil {
- sv = &types.InvalidClusterTrackFault{}
+ sv = &types.InvalidElasticIpFault{}
} else {
sv = *v
}
@@ -22246,13 +24481,13 @@ func awsAwsquery_deserializeDocumentInvalidClusterTrackFault(v **types.InvalidCl
return nil
}
-func awsAwsquery_deserializeDocumentInvalidElasticIpFault(v **types.InvalidElasticIpFault, decoder smithyxml.NodeDecoder) error {
+func awsAwsquery_deserializeDocumentInvalidEndpointStateFault(v **types.InvalidEndpointStateFault, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
- var sv *types.InvalidElasticIpFault
+ var sv *types.InvalidEndpointStateFault
if *v == nil {
- sv = &types.InvalidElasticIpFault{}
+ sv = &types.InvalidEndpointStateFault{}
} else {
sv = *v
}
@@ -30828,6 +33063,86 @@ func awsAwsquery_deserializeDocumentVpcEndpointsListUnwrapped(v *[]types.VpcEndp
*v = sv
return nil
}
+func awsAwsquery_deserializeDocumentVpcIdentifierList(v *[]string, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv []string
+ if *v == nil {
+ sv = make([]string, 0)
+ } else {
+ sv = *v
+ }
+
+ originalDecoder := decoder
+ for {
+ t, done, err := decoder.Token()
+ if err != nil {
+ return err
+ }
+ if done {
+ break
+ }
+ memberDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ decoder = memberDecoder
+ switch {
+ case strings.EqualFold("VpcIdentifier", t.Name.Local):
+ var col string
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ col = xtv
+ }
+ sv = append(sv, col)
+
+ default:
+ err = decoder.Decoder.Skip()
+ if err != nil {
+ return err
+ }
+
+ }
+ decoder = originalDecoder
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsquery_deserializeDocumentVpcIdentifierListUnwrapped(v *[]string, decoder smithyxml.NodeDecoder) error {
+ var sv []string
+ if *v == nil {
+ sv = make([]string, 0)
+ } else {
+ sv = *v
+ }
+
+ switch {
+ default:
+ var mv string
+ t := decoder.StartEl
+ _ = t
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ mv = xtv
+ }
+ sv = append(sv, mv)
+ }
+ *v = sv
+ return nil
+}
func awsAwsquery_deserializeDocumentVpcSecurityGroupMembership(v **types.VpcSecurityGroupMembership, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -31042,6 +33357,163 @@ func awsAwsquery_deserializeOpDocumentAuthorizeClusterSecurityGroupIngressOutput
return nil
}
+func awsAwsquery_deserializeOpDocumentAuthorizeEndpointAccessOutput(v **AuthorizeEndpointAccessOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *AuthorizeEndpointAccessOutput
+ if *v == nil {
+ sv = &AuthorizeEndpointAccessOutput{}
+ } 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("AllowedAllVPCs", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv, err := strconv.ParseBool(string(val))
+ if err != nil {
+ return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", val)
+ }
+ sv.AllowedAllVPCs = xtv
+ }
+
+ case strings.EqualFold("AllowedVPCs", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentVpcIdentifierList(&sv.AllowedVPCs, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("AuthorizeTime", 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.AuthorizeTime = ptr.Time(t)
+ }
+
+ case strings.EqualFold("ClusterIdentifier", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ClusterIdentifier = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("ClusterStatus", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ClusterStatus = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("EndpointCount", 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.EndpointCount = int32(i64)
+ }
+
+ case strings.EqualFold("Grantee", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Grantee = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Grantor", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Grantor = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Status", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Status = types.AuthorizationStatus(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 awsAwsquery_deserializeOpDocumentAuthorizeSnapshotAccessOutput(v **AuthorizeSnapshotAccessOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -31683,6 +34155,166 @@ func awsAwsquery_deserializeOpDocumentCreateClusterSubnetGroupOutput(v **CreateC
return nil
}
+func awsAwsquery_deserializeOpDocumentCreateEndpointAccessOutput(v **CreateEndpointAccessOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *CreateEndpointAccessOutput
+ if *v == nil {
+ sv = &CreateEndpointAccessOutput{}
+ } 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("Address", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Address = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("ClusterIdentifier", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ClusterIdentifier = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("EndpointCreateTime", 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.EndpointCreateTime = ptr.Time(t)
+ }
+
+ case strings.EqualFold("EndpointName", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.EndpointName = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("EndpointStatus", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.EndpointStatus = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Port", 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.Port = int32(i64)
+ }
+
+ case strings.EqualFold("ResourceOwner", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ResourceOwner = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("SubnetGroupName", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.SubnetGroupName = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("VpcEndpoint", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentVpcEndpoint(&sv.VpcEndpoint, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("VpcSecurityGroups", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentVpcSecurityGroupMembershipList(&sv.VpcSecurityGroups, nodeDecoder); err != nil {
+ return err
+ }
+
+ 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 awsAwsquery_deserializeOpDocumentCreateEventSubscriptionOutput(v **CreateEventSubscriptionOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -32322,6 +34954,166 @@ func awsAwsquery_deserializeOpDocumentDeleteClusterSnapshotOutput(v **DeleteClus
return nil
}
+func awsAwsquery_deserializeOpDocumentDeleteEndpointAccessOutput(v **DeleteEndpointAccessOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *DeleteEndpointAccessOutput
+ if *v == nil {
+ sv = &DeleteEndpointAccessOutput{}
+ } 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("Address", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Address = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("ClusterIdentifier", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ClusterIdentifier = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("EndpointCreateTime", 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.EndpointCreateTime = ptr.Time(t)
+ }
+
+ case strings.EqualFold("EndpointName", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.EndpointName = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("EndpointStatus", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.EndpointStatus = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Port", 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.Port = int32(i64)
+ }
+
+ case strings.EqualFold("ResourceOwner", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ResourceOwner = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("SubnetGroupName", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.SubnetGroupName = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("VpcEndpoint", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentVpcEndpoint(&sv.VpcEndpoint, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("VpcSecurityGroups", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentVpcSecurityGroupMembershipList(&sv.VpcSecurityGroups, nodeDecoder); err != nil {
+ return err
+ }
+
+ 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 awsAwsquery_deserializeOpDocumentDescribeAccountAttributesOutput(v **DescribeAccountAttributesOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -32901,6 +35693,116 @@ func awsAwsquery_deserializeOpDocumentDescribeDefaultClusterParametersOutput(v *
return nil
}
+func awsAwsquery_deserializeOpDocumentDescribeEndpointAccessOutput(v **DescribeEndpointAccessOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *DescribeEndpointAccessOutput
+ if *v == nil {
+ sv = &DescribeEndpointAccessOutput{}
+ } 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("EndpointAccessList", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentEndpointAccesses(&sv.EndpointAccessList, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("Marker", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Marker = 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 awsAwsquery_deserializeOpDocumentDescribeEndpointAuthorizationOutput(v **DescribeEndpointAuthorizationOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *DescribeEndpointAuthorizationOutput
+ if *v == nil {
+ sv = &DescribeEndpointAuthorizationOutput{}
+ } 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("EndpointAuthorizationList", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentEndpointAuthorizations(&sv.EndpointAuthorizationList, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("Marker", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Marker = 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 awsAwsquery_deserializeOpDocumentDescribeEventCategoriesOutput(v **DescribeEventCategoriesOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -34941,6 +37843,166 @@ func awsAwsquery_deserializeOpDocumentModifyClusterSubnetGroupOutput(v **ModifyC
return nil
}
+func awsAwsquery_deserializeOpDocumentModifyEndpointAccessOutput(v **ModifyEndpointAccessOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *ModifyEndpointAccessOutput
+ if *v == nil {
+ sv = &ModifyEndpointAccessOutput{}
+ } 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("Address", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Address = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("ClusterIdentifier", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ClusterIdentifier = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("EndpointCreateTime", 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.EndpointCreateTime = ptr.Time(t)
+ }
+
+ case strings.EqualFold("EndpointName", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.EndpointName = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("EndpointStatus", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.EndpointStatus = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Port", 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.Port = int32(i64)
+ }
+
+ case strings.EqualFold("ResourceOwner", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ResourceOwner = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("SubnetGroupName", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.SubnetGroupName = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("VpcEndpoint", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentVpcEndpoint(&sv.VpcEndpoint, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("VpcSecurityGroups", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentVpcSecurityGroupMembershipList(&sv.VpcSecurityGroups, nodeDecoder); err != nil {
+ return err
+ }
+
+ 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 awsAwsquery_deserializeOpDocumentModifyEventSubscriptionOutput(v **ModifyEventSubscriptionOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -35810,6 +38872,163 @@ func awsAwsquery_deserializeOpDocumentRevokeClusterSecurityGroupIngressOutput(v
return nil
}
+func awsAwsquery_deserializeOpDocumentRevokeEndpointAccessOutput(v **RevokeEndpointAccessOutput, decoder smithyxml.NodeDecoder) error {
+ if v == nil {
+ return fmt.Errorf("unexpected nil of type %T", v)
+ }
+ var sv *RevokeEndpointAccessOutput
+ if *v == nil {
+ sv = &RevokeEndpointAccessOutput{}
+ } 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("AllowedAllVPCs", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv, err := strconv.ParseBool(string(val))
+ if err != nil {
+ return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", val)
+ }
+ sv.AllowedAllVPCs = xtv
+ }
+
+ case strings.EqualFold("AllowedVPCs", t.Name.Local):
+ nodeDecoder := smithyxml.WrapNodeDecoder(decoder.Decoder, t)
+ if err := awsAwsquery_deserializeDocumentVpcIdentifierList(&sv.AllowedVPCs, nodeDecoder); err != nil {
+ return err
+ }
+
+ case strings.EqualFold("AuthorizeTime", 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.AuthorizeTime = ptr.Time(t)
+ }
+
+ case strings.EqualFold("ClusterIdentifier", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ClusterIdentifier = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("ClusterStatus", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.ClusterStatus = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("EndpointCount", 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.EndpointCount = int32(i64)
+ }
+
+ case strings.EqualFold("Grantee", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Grantee = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Grantor", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Grantor = ptr.String(xtv)
+ }
+
+ case strings.EqualFold("Status", t.Name.Local):
+ val, err := decoder.Value()
+ if err != nil {
+ return err
+ }
+ if val == nil {
+ break
+ }
+ {
+ xtv := string(val)
+ sv.Status = types.AuthorizationStatus(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 awsAwsquery_deserializeOpDocumentRevokeSnapshotAccessOutput(v **RevokeSnapshotAccessOutput, decoder smithyxml.NodeDecoder) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
diff --git a/service/redshift/go.mod b/service/redshift/go.mod
index e7a406dc873..391b6fd0ae7 100644
--- a/service/redshift/go.mod
+++ b/service/redshift/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/redshift/go.sum b/service/redshift/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/redshift/go.sum
+++ b/service/redshift/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/redshift/serializers.go b/service/redshift/serializers.go
index b1f24d759da..3de7688a224 100644
--- a/service/redshift/serializers.go
+++ b/service/redshift/serializers.go
@@ -127,6 +127,62 @@ func (m *awsAwsquery_serializeOpAuthorizeClusterSecurityGroupIngress) HandleSeri
return next.HandleSerialize(ctx, in)
}
+type awsAwsquery_serializeOpAuthorizeEndpointAccess struct {
+}
+
+func (*awsAwsquery_serializeOpAuthorizeEndpointAccess) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsquery_serializeOpAuthorizeEndpointAccess) 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.(*AuthorizeEndpointAccessInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("AuthorizeEndpointAccess")
+ body.Key("Version").String("2012-12-01")
+
+ if err := awsAwsquery_serializeOpDocumentAuthorizeEndpointAccessInput(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 awsAwsquery_serializeOpAuthorizeSnapshotAccess struct {
}
@@ -687,6 +743,62 @@ func (m *awsAwsquery_serializeOpCreateClusterSubnetGroup) HandleSerialize(ctx co
return next.HandleSerialize(ctx, in)
}
+type awsAwsquery_serializeOpCreateEndpointAccess struct {
+}
+
+func (*awsAwsquery_serializeOpCreateEndpointAccess) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsquery_serializeOpCreateEndpointAccess) 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.(*CreateEndpointAccessInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("CreateEndpointAccess")
+ body.Key("Version").String("2012-12-01")
+
+ if err := awsAwsquery_serializeOpDocumentCreateEndpointAccessInput(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 awsAwsquery_serializeOpCreateEventSubscription struct {
}
@@ -1415,6 +1527,62 @@ func (m *awsAwsquery_serializeOpDeleteClusterSubnetGroup) HandleSerialize(ctx co
return next.HandleSerialize(ctx, in)
}
+type awsAwsquery_serializeOpDeleteEndpointAccess struct {
+}
+
+func (*awsAwsquery_serializeOpDeleteEndpointAccess) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsquery_serializeOpDeleteEndpointAccess) 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.(*DeleteEndpointAccessInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("DeleteEndpointAccess")
+ body.Key("Version").String("2012-12-01")
+
+ if err := awsAwsquery_serializeOpDocumentDeleteEndpointAccessInput(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 awsAwsquery_serializeOpDeleteEventSubscription struct {
}
@@ -2479,6 +2647,118 @@ func (m *awsAwsquery_serializeOpDescribeDefaultClusterParameters) HandleSerializ
return next.HandleSerialize(ctx, in)
}
+type awsAwsquery_serializeOpDescribeEndpointAccess struct {
+}
+
+func (*awsAwsquery_serializeOpDescribeEndpointAccess) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsquery_serializeOpDescribeEndpointAccess) 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.(*DescribeEndpointAccessInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("DescribeEndpointAccess")
+ body.Key("Version").String("2012-12-01")
+
+ if err := awsAwsquery_serializeOpDocumentDescribeEndpointAccessInput(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 awsAwsquery_serializeOpDescribeEndpointAuthorization struct {
+}
+
+func (*awsAwsquery_serializeOpDescribeEndpointAuthorization) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsquery_serializeOpDescribeEndpointAuthorization) 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.(*DescribeEndpointAuthorizationInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("DescribeEndpointAuthorization")
+ body.Key("Version").String("2012-12-01")
+
+ if err := awsAwsquery_serializeOpDocumentDescribeEndpointAuthorizationInput(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 awsAwsquery_serializeOpDescribeEventCategories struct {
}
@@ -4267,6 +4547,62 @@ func (m *awsAwsquery_serializeOpModifyClusterSubnetGroup) HandleSerialize(ctx co
return next.HandleSerialize(ctx, in)
}
+type awsAwsquery_serializeOpModifyEndpointAccess struct {
+}
+
+func (*awsAwsquery_serializeOpModifyEndpointAccess) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsquery_serializeOpModifyEndpointAccess) 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.(*ModifyEndpointAccessInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("ModifyEndpointAccess")
+ body.Key("Version").String("2012-12-01")
+
+ if err := awsAwsquery_serializeOpDocumentModifyEndpointAccessInput(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 awsAwsquery_serializeOpModifyEventSubscription struct {
}
@@ -5051,6 +5387,62 @@ func (m *awsAwsquery_serializeOpRevokeClusterSecurityGroupIngress) HandleSeriali
return next.HandleSerialize(ctx, in)
}
+type awsAwsquery_serializeOpRevokeEndpointAccess struct {
+}
+
+func (*awsAwsquery_serializeOpRevokeEndpointAccess) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsquery_serializeOpRevokeEndpointAccess) 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.(*RevokeEndpointAccessInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("RevokeEndpointAccess")
+ body.Key("Version").String("2012-12-01")
+
+ if err := awsAwsquery_serializeOpDocumentRevokeEndpointAccessInput(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 awsAwsquery_serializeOpRevokeSnapshotAccess struct {
}
@@ -5638,6 +6030,19 @@ func awsAwsquery_serializeDocumentValueStringList(v []string, value query.Value)
return nil
}
+func awsAwsquery_serializeDocumentVpcIdentifierList(v []string, value query.Value) error {
+ if len(v) == 0 {
+ return nil
+ }
+ array := value.Array("VpcIdentifier")
+
+ for i := range v {
+ av := array.Value()
+ av.String(v[i])
+ }
+ return nil
+}
+
func awsAwsquery_serializeDocumentVpcSecurityGroupIdList(v []string, value query.Value) error {
if len(v) == 0 {
return nil
@@ -5695,6 +6100,30 @@ func awsAwsquery_serializeOpDocumentAuthorizeClusterSecurityGroupIngressInput(v
return nil
}
+func awsAwsquery_serializeOpDocumentAuthorizeEndpointAccessInput(v *AuthorizeEndpointAccessInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.Account != nil {
+ objectKey := object.Key("Account")
+ objectKey.String(*v.Account)
+ }
+
+ if v.ClusterIdentifier != nil {
+ objectKey := object.Key("ClusterIdentifier")
+ objectKey.String(*v.ClusterIdentifier)
+ }
+
+ if v.VpcIds != nil {
+ objectKey := object.Key("VpcIds")
+ if err := awsAwsquery_serializeDocumentVpcIdentifierList(v.VpcIds, objectKey); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsAwsquery_serializeOpDocumentAuthorizeSnapshotAccessInput(v *AuthorizeSnapshotAccessInput, value query.Value) error {
object := value.Object()
_ = object
@@ -6077,6 +6506,40 @@ func awsAwsquery_serializeOpDocumentCreateClusterSubnetGroupInput(v *CreateClust
return nil
}
+func awsAwsquery_serializeOpDocumentCreateEndpointAccessInput(v *CreateEndpointAccessInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.ClusterIdentifier != nil {
+ objectKey := object.Key("ClusterIdentifier")
+ objectKey.String(*v.ClusterIdentifier)
+ }
+
+ if v.EndpointName != nil {
+ objectKey := object.Key("EndpointName")
+ objectKey.String(*v.EndpointName)
+ }
+
+ if v.ResourceOwner != nil {
+ objectKey := object.Key("ResourceOwner")
+ objectKey.String(*v.ResourceOwner)
+ }
+
+ if v.SubnetGroupName != nil {
+ objectKey := object.Key("SubnetGroupName")
+ objectKey.String(*v.SubnetGroupName)
+ }
+
+ if v.VpcSecurityGroupIds != nil {
+ objectKey := object.Key("VpcSecurityGroupIds")
+ if err := awsAwsquery_serializeDocumentVpcSecurityGroupIdList(v.VpcSecurityGroupIds, objectKey); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsAwsquery_serializeOpDocumentCreateEventSubscriptionInput(v *CreateEventSubscriptionInput, value query.Value) error {
object := value.Object()
_ = object
@@ -6450,6 +6913,18 @@ func awsAwsquery_serializeOpDocumentDeleteClusterSubnetGroupInput(v *DeleteClust
return nil
}
+func awsAwsquery_serializeOpDocumentDeleteEndpointAccessInput(v *DeleteEndpointAccessInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.EndpointName != nil {
+ objectKey := object.Key("EndpointName")
+ objectKey.String(*v.EndpointName)
+ }
+
+ return nil
+}
+
func awsAwsquery_serializeOpDocumentDeleteEventSubscriptionInput(v *DeleteEventSubscriptionInput, value query.Value) error {
object := value.Object()
_ = object
@@ -6904,6 +7379,75 @@ func awsAwsquery_serializeOpDocumentDescribeDefaultClusterParametersInput(v *Des
return nil
}
+func awsAwsquery_serializeOpDocumentDescribeEndpointAccessInput(v *DescribeEndpointAccessInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.ClusterIdentifier != nil {
+ objectKey := object.Key("ClusterIdentifier")
+ objectKey.String(*v.ClusterIdentifier)
+ }
+
+ if v.EndpointName != nil {
+ objectKey := object.Key("EndpointName")
+ objectKey.String(*v.EndpointName)
+ }
+
+ if v.Marker != nil {
+ objectKey := object.Key("Marker")
+ objectKey.String(*v.Marker)
+ }
+
+ if v.MaxRecords != nil {
+ objectKey := object.Key("MaxRecords")
+ objectKey.Integer(*v.MaxRecords)
+ }
+
+ if v.ResourceOwner != nil {
+ objectKey := object.Key("ResourceOwner")
+ objectKey.String(*v.ResourceOwner)
+ }
+
+ if v.VpcId != nil {
+ objectKey := object.Key("VpcId")
+ objectKey.String(*v.VpcId)
+ }
+
+ return nil
+}
+
+func awsAwsquery_serializeOpDocumentDescribeEndpointAuthorizationInput(v *DescribeEndpointAuthorizationInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.Account != nil {
+ objectKey := object.Key("Account")
+ objectKey.String(*v.Account)
+ }
+
+ if v.ClusterIdentifier != nil {
+ objectKey := object.Key("ClusterIdentifier")
+ objectKey.String(*v.ClusterIdentifier)
+ }
+
+ if v.Grantee != nil {
+ objectKey := object.Key("Grantee")
+ objectKey.Boolean(*v.Grantee)
+ }
+
+ if v.Marker != nil {
+ objectKey := object.Key("Marker")
+ objectKey.String(*v.Marker)
+ }
+
+ if v.MaxRecords != nil {
+ objectKey := object.Key("MaxRecords")
+ objectKey.Integer(*v.MaxRecords)
+ }
+
+ return nil
+}
+
func awsAwsquery_serializeOpDocumentDescribeEventCategoriesInput(v *DescribeEventCategoriesInput, value query.Value) error {
object := value.Object()
_ = object
@@ -7887,6 +8431,25 @@ func awsAwsquery_serializeOpDocumentModifyClusterSubnetGroupInput(v *ModifyClust
return nil
}
+func awsAwsquery_serializeOpDocumentModifyEndpointAccessInput(v *ModifyEndpointAccessInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.EndpointName != nil {
+ objectKey := object.Key("EndpointName")
+ objectKey.String(*v.EndpointName)
+ }
+
+ if v.VpcSecurityGroupIds != nil {
+ objectKey := object.Key("VpcSecurityGroupIds")
+ if err := awsAwsquery_serializeDocumentVpcSecurityGroupIdList(v.VpcSecurityGroupIds, objectKey); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsAwsquery_serializeOpDocumentModifyEventSubscriptionInput(v *ModifyEventSubscriptionInput, value query.Value) error {
object := value.Object()
_ = object
@@ -8376,6 +8939,35 @@ func awsAwsquery_serializeOpDocumentRevokeClusterSecurityGroupIngressInput(v *Re
return nil
}
+func awsAwsquery_serializeOpDocumentRevokeEndpointAccessInput(v *RevokeEndpointAccessInput, value query.Value) error {
+ object := value.Object()
+ _ = object
+
+ if v.Account != nil {
+ objectKey := object.Key("Account")
+ objectKey.String(*v.Account)
+ }
+
+ if v.ClusterIdentifier != nil {
+ objectKey := object.Key("ClusterIdentifier")
+ objectKey.String(*v.ClusterIdentifier)
+ }
+
+ if v.Force {
+ objectKey := object.Key("Force")
+ objectKey.Boolean(v.Force)
+ }
+
+ if v.VpcIds != nil {
+ objectKey := object.Key("VpcIds")
+ if err := awsAwsquery_serializeDocumentVpcIdentifierList(v.VpcIds, objectKey); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
func awsAwsquery_serializeOpDocumentRevokeSnapshotAccessInput(v *RevokeSnapshotAccessInput, value query.Value) error {
object := value.Object()
_ = object
diff --git a/service/redshift/types/enums.go b/service/redshift/types/enums.go
index be782f764bb..9b181491612 100644
--- a/service/redshift/types/enums.go
+++ b/service/redshift/types/enums.go
@@ -22,6 +22,24 @@ func (ActionType) Values() []ActionType {
}
}
+type AuthorizationStatus string
+
+// Enum values for AuthorizationStatus
+const (
+ AuthorizationStatusAuthorized AuthorizationStatus = "Authorized"
+ AuthorizationStatusRevoking AuthorizationStatus = "Revoking"
+)
+
+// Values returns all known values for AuthorizationStatus. 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 (AuthorizationStatus) Values() []AuthorizationStatus {
+ return []AuthorizationStatus{
+ "Authorized",
+ "Revoking",
+ }
+}
+
type Mode string
// Enum values for Mode
diff --git a/service/redshift/types/errors.go b/service/redshift/types/errors.go
index 15a6569d765..7347a4049cc 100644
--- a/service/redshift/types/errors.go
+++ b/service/redshift/types/errors.go
@@ -7,6 +7,23 @@ import (
smithy "github.com/aws/smithy-go"
)
+// You are not authorized to access the cluster.
+type AccessToClusterDeniedFault struct {
+ Message *string
+}
+
+func (e *AccessToClusterDeniedFault) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *AccessToClusterDeniedFault) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *AccessToClusterDeniedFault) ErrorCode() string { return "AccessToClusterDeniedFault" }
+func (e *AccessToClusterDeniedFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+
// The owner of the specified snapshot has not authorized your account to access
// the snapshot.
type AccessToSnapshotDeniedFault struct {
@@ -552,6 +569,147 @@ func (e *DependentServiceUnavailableFault) ErrorCode() string {
}
func (e *DependentServiceUnavailableFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+// The account already has a Redshift-managed VPC endpoint with the given
+// identifier.
+type EndpointAlreadyExistsFault struct {
+ Message *string
+}
+
+func (e *EndpointAlreadyExistsFault) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *EndpointAlreadyExistsFault) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *EndpointAlreadyExistsFault) ErrorCode() string { return "EndpointAlreadyExistsFault" }
+func (e *EndpointAlreadyExistsFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+
+// The authorization already exists for this endpoint.
+type EndpointAuthorizationAlreadyExistsFault struct {
+ Message *string
+}
+
+func (e *EndpointAuthorizationAlreadyExistsFault) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *EndpointAuthorizationAlreadyExistsFault) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *EndpointAuthorizationAlreadyExistsFault) ErrorCode() string {
+ return "EndpointAuthorizationAlreadyExistsFault"
+}
+func (e *EndpointAuthorizationAlreadyExistsFault) ErrorFault() smithy.ErrorFault {
+ return smithy.FaultClient
+}
+
+// The authorization for this endpoint can't be found.
+type EndpointAuthorizationNotFoundFault struct {
+ Message *string
+}
+
+func (e *EndpointAuthorizationNotFoundFault) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *EndpointAuthorizationNotFoundFault) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *EndpointAuthorizationNotFoundFault) ErrorCode() string {
+ return "EndpointAuthorizationNotFoundFault"
+}
+func (e *EndpointAuthorizationNotFoundFault) ErrorFault() smithy.ErrorFault {
+ return smithy.FaultClient
+}
+
+// The number of endpoint authorizations per cluster has exceeded its limit.
+type EndpointAuthorizationsPerClusterLimitExceededFault struct {
+ Message *string
+}
+
+func (e *EndpointAuthorizationsPerClusterLimitExceededFault) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *EndpointAuthorizationsPerClusterLimitExceededFault) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *EndpointAuthorizationsPerClusterLimitExceededFault) ErrorCode() string {
+ return "EndpointAuthorizationsPerClusterLimitExceededFault"
+}
+func (e *EndpointAuthorizationsPerClusterLimitExceededFault) ErrorFault() smithy.ErrorFault {
+ return smithy.FaultClient
+}
+
+// The endpoint name doesn't refer to an existing endpoint.
+type EndpointNotFoundFault struct {
+ Message *string
+}
+
+func (e *EndpointNotFoundFault) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *EndpointNotFoundFault) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *EndpointNotFoundFault) ErrorCode() string { return "EndpointNotFoundFault" }
+func (e *EndpointNotFoundFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+
+// The number of Redshift-managed VPC endpoints per authorization has exceeded its
+// limit.
+type EndpointsPerAuthorizationLimitExceededFault struct {
+ Message *string
+}
+
+func (e *EndpointsPerAuthorizationLimitExceededFault) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *EndpointsPerAuthorizationLimitExceededFault) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *EndpointsPerAuthorizationLimitExceededFault) ErrorCode() string {
+ return "EndpointsPerAuthorizationLimitExceededFault"
+}
+func (e *EndpointsPerAuthorizationLimitExceededFault) ErrorFault() smithy.ErrorFault {
+ return smithy.FaultClient
+}
+
+// The number of Redshift-managed VPC endpoints per cluster has exceeded its limit.
+type EndpointsPerClusterLimitExceededFault struct {
+ Message *string
+}
+
+func (e *EndpointsPerClusterLimitExceededFault) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *EndpointsPerClusterLimitExceededFault) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *EndpointsPerClusterLimitExceededFault) ErrorCode() string {
+ return "EndpointsPerClusterLimitExceededFault"
+}
+func (e *EndpointsPerClusterLimitExceededFault) ErrorFault() smithy.ErrorFault {
+ return smithy.FaultClient
+}
+
// The request would exceed the allowed number of event subscriptions for this
// account. For information about increasing your quota, go to Limits in Amazon
// Redshift
@@ -784,6 +942,23 @@ func (e *InsufficientS3BucketPolicyFault) ErrorCode() string {
}
func (e *InsufficientS3BucketPolicyFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+// The status of the authorization is not valid.
+type InvalidAuthorizationStateFault struct {
+ Message *string
+}
+
+func (e *InvalidAuthorizationStateFault) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *InvalidAuthorizationStateFault) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *InvalidAuthorizationStateFault) ErrorCode() string { return "InvalidAuthorizationStateFault" }
+func (e *InvalidAuthorizationStateFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+
// The cluster parameter group action can not be completed because another task is
// in progress that involves the parameter group. Wait a few moments and try the
// operation again.
@@ -958,6 +1133,23 @@ func (e *InvalidElasticIpFault) ErrorMessage() string {
func (e *InvalidElasticIpFault) ErrorCode() string { return "InvalidElasticIpFault" }
func (e *InvalidElasticIpFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+// The status of the endpoint is not valid.
+type InvalidEndpointStateFault struct {
+ Message *string
+}
+
+func (e *InvalidEndpointStateFault) Error() string {
+ return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
+}
+func (e *InvalidEndpointStateFault) ErrorMessage() string {
+ if e.Message == nil {
+ return ""
+ }
+ return *e.Message
+}
+func (e *InvalidEndpointStateFault) ErrorCode() string { return "InvalidEndpointStateFault" }
+func (e *InvalidEndpointStateFault) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
+
// The specified HSM client certificate is not in the available state, or it is
// still in use by one or more Amazon Redshift clusters.
type InvalidHsmClientCertificateStateFault struct {
diff --git a/service/redshift/types/types.go b/service/redshift/types/types.go
index 70510fc8308..4a8c8607634 100644
--- a/service/redshift/types/types.go
+++ b/service/redshift/types/types.go
@@ -636,6 +636,74 @@ type Endpoint struct {
VpcEndpoints []VpcEndpoint
}
+// Describes a Redshift-managed VPC endpoint.
+type EndpointAccess struct {
+
+ // The DNS address of the endpoint.
+ Address *string
+
+ // The cluster identifier of the cluster associated with the endpoint.
+ ClusterIdentifier *string
+
+ // The time (UTC) that the endpoint was created.
+ EndpointCreateTime *time.Time
+
+ // The name of the endpoint.
+ EndpointName *string
+
+ // The status of the endpoint.
+ EndpointStatus *string
+
+ // The port number on which the cluster accepts incoming connections.
+ Port int32
+
+ // The AWS account ID of the owner of the cluster.
+ ResourceOwner *string
+
+ // The subnet group name where Amazon Redshift chooses to deploy the endpoint.
+ SubnetGroupName *string
+
+ // The connection endpoint for connecting to an Amazon Redshift cluster through the
+ // proxy.
+ VpcEndpoint *VpcEndpoint
+
+ // The security groups associated with the endpoint.
+ VpcSecurityGroups []VpcSecurityGroupMembership
+}
+
+// Describes an endpoint authorization for authorizing Redshift-managed VPC
+// endpoint access to a cluster across AWS accounts.
+type EndpointAuthorization struct {
+
+ // Indicates whether all VPCs in the grantee account are allowed access to the
+ // cluster.
+ AllowedAllVPCs bool
+
+ // The VPCs allowed access to the cluster.
+ AllowedVPCs []string
+
+ // The time (UTC) when the authorization was created.
+ AuthorizeTime *time.Time
+
+ // The cluster identifier.
+ ClusterIdentifier *string
+
+ // The status of the cluster.
+ ClusterStatus *string
+
+ // The number of Redshift-managed VPC endpoints created for the authorization.
+ EndpointCount int32
+
+ // The AWS account ID of the grantee of the cluster.
+ Grantee *string
+
+ // The AWS account ID of the cluster owner.
+ Grantor *string
+
+ // The status of the authorization action.
+ Status AuthorizationStatus
+}
+
// Describes an event.
type Event struct {
@@ -1659,7 +1727,7 @@ type UsageLimit struct {
UsageLimitId *string
}
-// The connection endpoint for connecting an Amazon Redshift cluster through the
+// The connection endpoint for connecting to an Amazon Redshift cluster through the
// proxy.
type VpcEndpoint struct {
diff --git a/service/redshift/validators.go b/service/redshift/validators.go
index 8d79708a938..3e6e295ba67 100644
--- a/service/redshift/validators.go
+++ b/service/redshift/validators.go
@@ -50,6 +50,26 @@ func (m *validateOpAuthorizeClusterSecurityGroupIngress) HandleInitialize(ctx co
return next.HandleInitialize(ctx, in)
}
+type validateOpAuthorizeEndpointAccess struct {
+}
+
+func (*validateOpAuthorizeEndpointAccess) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpAuthorizeEndpointAccess) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*AuthorizeEndpointAccessInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpAuthorizeEndpointAccessInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpAuthorizeSnapshotAccess struct {
}
@@ -250,6 +270,26 @@ func (m *validateOpCreateClusterSubnetGroup) HandleInitialize(ctx context.Contex
return next.HandleInitialize(ctx, in)
}
+type validateOpCreateEndpointAccess struct {
+}
+
+func (*validateOpCreateEndpointAccess) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpCreateEndpointAccess) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*CreateEndpointAccessInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpCreateEndpointAccessInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpCreateEventSubscription struct {
}
@@ -490,6 +530,26 @@ func (m *validateOpDeleteClusterSubnetGroup) HandleInitialize(ctx context.Contex
return next.HandleInitialize(ctx, in)
}
+type validateOpDeleteEndpointAccess struct {
+}
+
+func (*validateOpDeleteEndpointAccess) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDeleteEndpointAccess) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DeleteEndpointAccessInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDeleteEndpointAccessInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpDeleteEventSubscription struct {
}
@@ -1070,6 +1130,26 @@ func (m *validateOpModifyClusterSubnetGroup) HandleInitialize(ctx context.Contex
return next.HandleInitialize(ctx, in)
}
+type validateOpModifyEndpointAccess struct {
+}
+
+func (*validateOpModifyEndpointAccess) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpModifyEndpointAccess) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*ModifyEndpointAccessInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpModifyEndpointAccessInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpModifyEventSubscription struct {
}
@@ -1398,6 +1478,10 @@ func addOpAuthorizeClusterSecurityGroupIngressValidationMiddleware(stack *middle
return stack.Initialize.Add(&validateOpAuthorizeClusterSecurityGroupIngress{}, middleware.After)
}
+func addOpAuthorizeEndpointAccessValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpAuthorizeEndpointAccess{}, middleware.After)
+}
+
func addOpAuthorizeSnapshotAccessValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpAuthorizeSnapshotAccess{}, middleware.After)
}
@@ -1438,6 +1522,10 @@ func addOpCreateClusterSubnetGroupValidationMiddleware(stack *middleware.Stack)
return stack.Initialize.Add(&validateOpCreateClusterSubnetGroup{}, middleware.After)
}
+func addOpCreateEndpointAccessValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpCreateEndpointAccess{}, middleware.After)
+}
+
func addOpCreateEventSubscriptionValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpCreateEventSubscription{}, middleware.After)
}
@@ -1486,6 +1574,10 @@ func addOpDeleteClusterSubnetGroupValidationMiddleware(stack *middleware.Stack)
return stack.Initialize.Add(&validateOpDeleteClusterSubnetGroup{}, middleware.After)
}
+func addOpDeleteEndpointAccessValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDeleteEndpointAccess{}, middleware.After)
+}
+
func addOpDeleteEventSubscriptionValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpDeleteEventSubscription{}, middleware.After)
}
@@ -1602,6 +1694,10 @@ func addOpModifyClusterSubnetGroupValidationMiddleware(stack *middleware.Stack)
return stack.Initialize.Add(&validateOpModifyClusterSubnetGroup{}, middleware.After)
}
+func addOpModifyEndpointAccessValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpModifyEndpointAccess{}, middleware.After)
+}
+
func addOpModifyEventSubscriptionValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpModifyEventSubscription{}, middleware.After)
}
@@ -1870,6 +1966,21 @@ func validateOpAuthorizeClusterSecurityGroupIngressInput(v *AuthorizeClusterSecu
}
}
+func validateOpAuthorizeEndpointAccessInput(v *AuthorizeEndpointAccessInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "AuthorizeEndpointAccessInput"}
+ if v.Account == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Account"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpAuthorizeSnapshotAccessInput(v *AuthorizeSnapshotAccessInput) error {
if v == nil {
return nil
@@ -2057,6 +2168,24 @@ func validateOpCreateClusterSubnetGroupInput(v *CreateClusterSubnetGroupInput) e
}
}
+func validateOpCreateEndpointAccessInput(v *CreateEndpointAccessInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CreateEndpointAccessInput"}
+ if v.EndpointName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("EndpointName"))
+ }
+ if v.SubnetGroupName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("SubnetGroupName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpCreateEventSubscriptionInput(v *CreateEventSubscriptionInput) error {
if v == nil {
return nil
@@ -2277,6 +2406,21 @@ func validateOpDeleteClusterSubnetGroupInput(v *DeleteClusterSubnetGroupInput) e
}
}
+func validateOpDeleteEndpointAccessInput(v *DeleteEndpointAccessInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DeleteEndpointAccessInput"}
+ if v.EndpointName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("EndpointName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpDeleteEventSubscriptionInput(v *DeleteEventSubscriptionInput) error {
if v == nil {
return nil
@@ -2737,6 +2881,21 @@ func validateOpModifyClusterSubnetGroupInput(v *ModifyClusterSubnetGroupInput) e
}
}
+func validateOpModifyEndpointAccessInput(v *ModifyEndpointAccessInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "ModifyEndpointAccessInput"}
+ if v.EndpointName == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("EndpointName"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpModifyEventSubscriptionInput(v *ModifyEventSubscriptionInput) error {
if v == nil {
return nil
diff --git a/service/redshiftdata/go.mod b/service/redshiftdata/go.mod
index ec68b8d95e2..66753269bff 100644
--- a/service/redshiftdata/go.mod
+++ b/service/redshiftdata/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/redshiftdata/go.sum b/service/redshiftdata/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/redshiftdata/go.sum
+++ b/service/redshiftdata/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/rekognition/api_op_CompareFaces.go b/service/rekognition/api_op_CompareFaces.go
index db4e2181003..1814a881993 100644
--- a/service/rekognition/api_op_CompareFaces.go
+++ b/service/rekognition/api_op_CompareFaces.go
@@ -14,34 +14,41 @@ import (
// Compares a face in the source input image with each of the 100 largest faces
// detected in the target input image. If the source image contains multiple faces,
// the service detects the largest face and compares it with each face detected in
-// the target image. You pass the input and target images either as base64-encoded
-// image bytes or as references to images in an Amazon S3 bucket. If you use the
-// AWS CLI to call Amazon Rekognition operations, passing image bytes isn't
-// supported. The image must be formatted as a PNG or JPEG file. In response, the
-// operation returns an array of face matches ordered by similarity score in
-// descending order. For each face match, the response provides a bounding box of
-// the face, facial landmarks, pose details (pitch, role, and yaw), quality
-// (brightness and sharpness), and confidence value (indicating the level of
-// confidence that the bounding box contains a face). The response also provides a
-// similarity score, which indicates how closely the faces match. By default, only
-// faces with a similarity score of greater than or equal to 80% are returned in
-// the response. You can change this value by specifying the SimilarityThreshold
-// parameter. CompareFaces also returns an array of faces that don't match the
-// source image. For each face, it returns a bounding box, confidence value,
-// landmarks, pose details, and quality. The response also returns information
-// about the face in the source image, including the bounding box of the face and
-// confidence value. The QualityFilter input parameter allows you to filter out
-// detected faces that don’t meet a required quality bar. The quality bar is based
-// on a variety of common use cases. Use QualityFilter to set the quality bar by
-// specifying LOW, MEDIUM, or HIGH. If you do not want to filter detected faces,
-// specify NONE. The default value is NONE. If the image doesn't contain Exif
-// metadata, CompareFaces returns orientation information for the source and target
-// images. Use these values to display the images with the correct image
-// orientation. If no faces are detected in the source or target images,
-// CompareFaces returns an InvalidParameterException error. This is a stateless API
-// operation. That is, data returned by this operation doesn't persist. For an
-// example, see Comparing Faces in Images in the Amazon Rekognition Developer
-// Guide. This operation requires permissions to perform the
+// the target image. CompareFaces uses machine learning algorithms, which are
+// probabilistic. A false negative is an incorrect prediction that a face in the
+// target image has a low similarity confidence score when compared to the face in
+// the source image. To reduce the probability of false negatives, we recommend
+// that you compare the target image against multiple source images. If you plan to
+// use CompareFaces to make a decision that impacts an individual's rights,
+// privacy, or access to services, we recommend that you pass the result to a human
+// for review and further validation before taking action. You pass the input and
+// target images either as base64-encoded image bytes or as references to images in
+// an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition
+// operations, passing image bytes isn't supported. The image must be formatted as
+// a PNG or JPEG file. In response, the operation returns an array of face matches
+// ordered by similarity score in descending order. For each face match, the
+// response provides a bounding box of the face, facial landmarks, pose details
+// (pitch, role, and yaw), quality (brightness and sharpness), and confidence value
+// (indicating the level of confidence that the bounding box contains a face). The
+// response also provides a similarity score, which indicates how closely the faces
+// match. By default, only faces with a similarity score of greater than or equal
+// to 80% are returned in the response. You can change this value by specifying the
+// SimilarityThreshold parameter. CompareFaces also returns an array of faces that
+// don't match the source image. For each face, it returns a bounding box,
+// confidence value, landmarks, pose details, and quality. The response also
+// returns information about the face in the source image, including the bounding
+// box of the face and confidence value. The QualityFilter input parameter allows
+// you to filter out detected faces that don’t meet a required quality bar. The
+// quality bar is based on a variety of common use cases. Use QualityFilter to set
+// the quality bar by specifying LOW, MEDIUM, or HIGH. If you do not want to filter
+// detected faces, specify NONE. The default value is NONE. If the image doesn't
+// contain Exif metadata, CompareFaces returns orientation information for the
+// source and target images. Use these values to display the images with the
+// correct image orientation. If no faces are detected in the source or target
+// images, CompareFaces returns an InvalidParameterException error. This is a
+// stateless API operation. That is, data returned by this operation doesn't
+// persist. For an example, see Comparing Faces in Images in the Amazon Rekognition
+// Developer Guide. This operation requires permissions to perform the
// rekognition:CompareFaces action.
func (c *Client) CompareFaces(ctx context.Context, params *CompareFacesInput, optFns ...func(*Options)) (*CompareFacesOutput, error) {
if params == nil {
diff --git a/service/rekognition/api_op_CreateCollection.go b/service/rekognition/api_op_CreateCollection.go
index 06063509e65..13ddd1717d6 100644
--- a/service/rekognition/api_op_CreateCollection.go
+++ b/service/rekognition/api_op_CreateCollection.go
@@ -39,6 +39,9 @@ type CreateCollectionInput struct {
//
// This member is required.
CollectionId *string
+
+ // A set of tags (key-value pairs) that you want to attach to the collection.
+ Tags map[string]string
}
type CreateCollectionOutput struct {
diff --git a/service/rekognition/api_op_CreateProjectVersion.go b/service/rekognition/api_op_CreateProjectVersion.go
index 9edeabf3318..8a09e9429d0 100644
--- a/service/rekognition/api_op_CreateProjectVersion.go
+++ b/service/rekognition/api_op_CreateProjectVersion.go
@@ -62,6 +62,9 @@ type CreateProjectVersionInput struct {
//
// This member is required.
VersionName *string
+
+ // A set of tags (key-value pairs) that you want to attach to the model.
+ Tags map[string]string
}
type CreateProjectVersionOutput struct {
diff --git a/service/rekognition/api_op_CreateStreamProcessor.go b/service/rekognition/api_op_CreateStreamProcessor.go
index 1c7efc254fe..06c5549407b 100644
--- a/service/rekognition/api_op_CreateStreamProcessor.go
+++ b/service/rekognition/api_op_CreateStreamProcessor.go
@@ -70,6 +70,9 @@ type CreateStreamProcessorInput struct {
//
// This member is required.
Settings *types.StreamProcessorSettings
+
+ // A set of tags (key-value pairs) that you want to attach to the stream processor.
+ Tags map[string]string
}
type CreateStreamProcessorOutput struct {
diff --git a/service/rekognition/api_op_ListTagsForResource.go b/service/rekognition/api_op_ListTagsForResource.go
new file mode 100644
index 00000000000..dbe3e8f7ea5
--- /dev/null
+++ b/service/rekognition/api_op_ListTagsForResource.go
@@ -0,0 +1,118 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package rekognition
+
+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"
+)
+
+// Returns a list of tags in an Amazon Rekognition collection, stream processor, or
+// Custom Labels model.
+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, addOperationListTagsForResourceMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ListTagsForResourceOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ListTagsForResourceInput struct {
+
+ // Amazon Resource Name (ARN) of the model, collection, or stream processor that
+ // contains the tags that you want a list of.
+ //
+ // This member is required.
+ ResourceArn *string
+}
+
+type ListTagsForResourceOutput struct {
+
+ // A list of key-value tags assigned to the resource.
+ Tags map[string]string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationListTagsForResourceMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpListTagsForResource{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_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: "rekognition",
+ OperationName: "ListTagsForResource",
+ }
+}
diff --git a/service/rekognition/api_op_TagResource.go b/service/rekognition/api_op_TagResource.go
new file mode 100644
index 00000000000..55a392085d0
--- /dev/null
+++ b/service/rekognition/api_op_TagResource.go
@@ -0,0 +1,120 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package rekognition
+
+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"
+)
+
+// Adds one or more key-value tags to an Amazon Rekognition collection, stream
+// processor, or Custom Labels model. For more information, see Tagging AWS
+// Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html).
+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, addOperationTagResourceMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*TagResourceOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type TagResourceInput struct {
+
+ // Amazon Resource Name (ARN) of the model, collection, or stream processor that
+ // you want to assign the tags to.
+ //
+ // This member is required.
+ ResourceArn *string
+
+ // The key-value tags to assign to the resource.
+ //
+ // This member is required.
+ Tags map[string]string
+}
+
+type TagResourceOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationTagResourceMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpTagResource{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_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: "rekognition",
+ OperationName: "TagResource",
+ }
+}
diff --git a/service/rekognition/api_op_UntagResource.go b/service/rekognition/api_op_UntagResource.go
new file mode 100644
index 00000000000..7f85ab34af3
--- /dev/null
+++ b/service/rekognition/api_op_UntagResource.go
@@ -0,0 +1,119 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package rekognition
+
+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"
+)
+
+// Removes one or more tags from an Amazon Rekognition collection, stream
+// processor, or Custom Labels model.
+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, addOperationUntagResourceMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*UntagResourceOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type UntagResourceInput struct {
+
+ // Amazon Resource Name (ARN) of the model, collection, or stream processor that
+ // you want to remove the tags from.
+ //
+ // This member is required.
+ ResourceArn *string
+
+ // A list of the tags that you want to remove.
+ //
+ // This member is required.
+ TagKeys []string
+}
+
+type UntagResourceOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationUntagResourceMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpUntagResource{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_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: "rekognition",
+ OperationName: "UntagResource",
+ }
+}
diff --git a/service/rekognition/deserializers.go b/service/rekognition/deserializers.go
index 4d38db1a16c..d94a631ef7b 100644
--- a/service/rekognition/deserializers.go
+++ b/service/rekognition/deserializers.go
@@ -264,6 +264,9 @@ func awsAwsjson11_deserializeOpErrorCreateCollection(response *smithyhttp.Respon
case strings.EqualFold("ResourceAlreadyExistsException", errorCode):
return awsAwsjson11_deserializeErrorResourceAlreadyExistsException(response, errorBody)
+ case strings.EqualFold("ServiceQuotaExceededException", errorCode):
+ return awsAwsjson11_deserializeErrorServiceQuotaExceededException(response, errorBody)
+
case strings.EqualFold("ThrottlingException", errorCode):
return awsAwsjson11_deserializeErrorThrottlingException(response, errorBody)
@@ -525,6 +528,9 @@ func awsAwsjson11_deserializeOpErrorCreateProjectVersion(response *smithyhttp.Re
case strings.EqualFold("ResourceNotFoundException", errorCode):
return awsAwsjson11_deserializeErrorResourceNotFoundException(response, errorBody)
+ case strings.EqualFold("ServiceQuotaExceededException", errorCode):
+ return awsAwsjson11_deserializeErrorServiceQuotaExceededException(response, errorBody)
+
case strings.EqualFold("ThrottlingException", errorCode):
return awsAwsjson11_deserializeErrorThrottlingException(response, errorBody)
@@ -654,6 +660,9 @@ func awsAwsjson11_deserializeOpErrorCreateStreamProcessor(response *smithyhttp.R
case strings.EqualFold("ResourceInUseException", errorCode):
return awsAwsjson11_deserializeErrorResourceInUseException(response, errorBody)
+ case strings.EqualFold("ServiceQuotaExceededException", errorCode):
+ return awsAwsjson11_deserializeErrorServiceQuotaExceededException(response, errorBody)
+
case strings.EqualFold("ThrottlingException", errorCode):
return awsAwsjson11_deserializeErrorThrottlingException(response, errorBody)
@@ -4297,6 +4306,132 @@ func awsAwsjson11_deserializeOpErrorListStreamProcessors(response *smithyhttp.Re
}
}
+type awsAwsjson11_deserializeOpListTagsForResource struct {
+}
+
+func (*awsAwsjson11_deserializeOpListTagsForResource) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_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, awsAwsjson11_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 = awsAwsjson11_deserializeOpDocumentListTagsForResourceOutput(&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_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 awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
+
+ case strings.EqualFold("InternalServerError", errorCode):
+ return awsAwsjson11_deserializeErrorInternalServerError(response, errorBody)
+
+ case strings.EqualFold("InvalidParameterException", errorCode):
+ return awsAwsjson11_deserializeErrorInvalidParameterException(response, errorBody)
+
+ case strings.EqualFold("ProvisionedThroughputExceededException", errorCode):
+ return awsAwsjson11_deserializeErrorProvisionedThroughputExceededException(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorResourceNotFoundException(response, errorBody)
+
+ case strings.EqualFold("ThrottlingException", errorCode):
+ return awsAwsjson11_deserializeErrorThrottlingException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
type awsAwsjson11_deserializeOpRecognizeCelebrities struct {
}
@@ -6292,6 +6427,261 @@ func awsAwsjson11_deserializeOpErrorStopStreamProcessor(response *smithyhttp.Res
}
}
+type awsAwsjson11_deserializeOpTagResource struct {
+}
+
+func (*awsAwsjson11_deserializeOpTagResource) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_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, awsAwsjson11_deserializeOpErrorTagResource(response, &metadata)
+ }
+ output := &TagResourceOutput{}
+ 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_deserializeOpDocumentTagResourceOutput(&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_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 awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
+
+ case strings.EqualFold("InternalServerError", errorCode):
+ return awsAwsjson11_deserializeErrorInternalServerError(response, errorBody)
+
+ case strings.EqualFold("InvalidParameterException", errorCode):
+ return awsAwsjson11_deserializeErrorInvalidParameterException(response, errorBody)
+
+ case strings.EqualFold("ProvisionedThroughputExceededException", errorCode):
+ return awsAwsjson11_deserializeErrorProvisionedThroughputExceededException(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorResourceNotFoundException(response, errorBody)
+
+ case strings.EqualFold("ServiceQuotaExceededException", errorCode):
+ return awsAwsjson11_deserializeErrorServiceQuotaExceededException(response, errorBody)
+
+ case strings.EqualFold("ThrottlingException", errorCode):
+ return awsAwsjson11_deserializeErrorThrottlingException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsAwsjson11_deserializeOpUntagResource struct {
+}
+
+func (*awsAwsjson11_deserializeOpUntagResource) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_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, awsAwsjson11_deserializeOpErrorUntagResource(response, &metadata)
+ }
+ output := &UntagResourceOutput{}
+ 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_deserializeOpDocumentUntagResourceOutput(&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_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 awsAwsjson11_deserializeErrorAccessDeniedException(response, errorBody)
+
+ case strings.EqualFold("InternalServerError", errorCode):
+ return awsAwsjson11_deserializeErrorInternalServerError(response, errorBody)
+
+ case strings.EqualFold("InvalidParameterException", errorCode):
+ return awsAwsjson11_deserializeErrorInvalidParameterException(response, errorBody)
+
+ case strings.EqualFold("ProvisionedThroughputExceededException", errorCode):
+ return awsAwsjson11_deserializeErrorProvisionedThroughputExceededException(response, errorBody)
+
+ case strings.EqualFold("ResourceNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorResourceNotFoundException(response, errorBody)
+
+ case strings.EqualFold("ThrottlingException", errorCode):
+ return awsAwsjson11_deserializeErrorThrottlingException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
func awsAwsjson11_deserializeErrorAccessDeniedException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
var buff [1024]byte
ringBuffer := smithyio.NewRingBuffer(buff[:])
@@ -12702,6 +13092,42 @@ func awsAwsjson11_deserializeDocumentSunglasses(v **types.Sunglasses, value inte
return nil
}
+func awsAwsjson11_deserializeDocumentTagMap(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 awsAwsjson11_deserializeDocumentTechnicalCueSegment(v **types.TechnicalCueSegment, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -15369,6 +15795,42 @@ func awsAwsjson11_deserializeOpDocumentListStreamProcessorsOutput(v **ListStream
return nil
}
+func awsAwsjson11_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 := awsAwsjson11_deserializeDocumentTagMap(&sv.Tags, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeOpDocumentRecognizeCelebritiesOutput(v **RecognizeCelebritiesOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -15997,3 +16459,65 @@ func awsAwsjson11_deserializeOpDocumentStopStreamProcessorOutput(v **StopStreamP
*v = sv
return nil
}
+
+func awsAwsjson11_deserializeOpDocumentTagResourceOutput(v **TagResourceOutput, 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 *TagResourceOutput
+ if *v == nil {
+ sv = &TagResourceOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeOpDocumentUntagResourceOutput(v **UntagResourceOutput, 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 *UntagResourceOutput
+ if *v == nil {
+ sv = &UntagResourceOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
diff --git a/service/rekognition/go.mod b/service/rekognition/go.mod
index 6202b7d1a38..efb86e66355 100644
--- a/service/rekognition/go.mod
+++ b/service/rekognition/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/rekognition/go.sum b/service/rekognition/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/rekognition/go.sum
+++ b/service/rekognition/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/rekognition/serializers.go b/service/rekognition/serializers.go
index 64aff635e82..1e40302fc64 100644
--- a/service/rekognition/serializers.go
+++ b/service/rekognition/serializers.go
@@ -1565,6 +1565,53 @@ func (m *awsAwsjson11_serializeOpListStreamProcessors) HandleSerialize(ctx conte
return next.HandleSerialize(ctx, in)
}
+type awsAwsjson11_serializeOpListTagsForResource struct {
+}
+
+func (*awsAwsjson11_serializeOpListTagsForResource) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_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)}
+ }
+
+ 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("RekognitionService.ListTagsForResource")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentListTagsForResourceInput(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_serializeOpRecognizeCelebrities struct {
}
@@ -2269,6 +2316,100 @@ func (m *awsAwsjson11_serializeOpStopStreamProcessor) HandleSerialize(ctx contex
return next.HandleSerialize(ctx, in)
}
+
+type awsAwsjson11_serializeOpTagResource struct {
+}
+
+func (*awsAwsjson11_serializeOpTagResource) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_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)}
+ }
+
+ 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("RekognitionService.TagResource")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_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 = httpBindingEncoder.Encode(request.Request); err != nil {
+ return out, metadata, &smithy.SerializationError{Err: err}
+ }
+ in.Request = request
+
+ return next.HandleSerialize(ctx, in)
+}
+
+type awsAwsjson11_serializeOpUntagResource struct {
+}
+
+func (*awsAwsjson11_serializeOpUntagResource) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_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)}
+ }
+
+ 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("RekognitionService.UntagResource")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentUntagResourceInput(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_serializeDocumentAsset(v *types.Asset, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -2743,6 +2884,28 @@ func awsAwsjson11_serializeDocumentStreamProcessorSettings(v *types.StreamProces
return nil
}
+func awsAwsjson11_serializeDocumentTagKeyList(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_serializeDocumentTagMap(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 awsAwsjson11_serializeDocumentTestingData(v *types.TestingData, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -2841,6 +3004,13 @@ func awsAwsjson11_serializeOpDocumentCreateCollectionInput(v *CreateCollectionIn
ok.String(*v.CollectionId)
}
+ if v.Tags != nil {
+ ok := object.Key("Tags")
+ if err := awsAwsjson11_serializeDocumentTagMap(v.Tags, ok); err != nil {
+ return err
+ }
+ }
+
return nil
}
@@ -2872,6 +3042,13 @@ func awsAwsjson11_serializeOpDocumentCreateProjectVersionInput(v *CreateProjectV
ok.String(*v.ProjectArn)
}
+ if v.Tags != nil {
+ ok := object.Key("Tags")
+ if err := awsAwsjson11_serializeDocumentTagMap(v.Tags, ok); err != nil {
+ return err
+ }
+ }
+
if v.TestingData != nil {
ok := object.Key("TestingData")
if err := awsAwsjson11_serializeDocumentTestingData(v.TestingData, ok); err != nil {
@@ -2929,6 +3106,13 @@ func awsAwsjson11_serializeOpDocumentCreateStreamProcessorInput(v *CreateStreamP
}
}
+ if v.Tags != nil {
+ ok := object.Key("Tags")
+ if err := awsAwsjson11_serializeDocumentTagMap(v.Tags, ok); err != nil {
+ return err
+ }
+ }
+
return nil
}
@@ -3521,6 +3705,18 @@ func awsAwsjson11_serializeOpDocumentListStreamProcessorsInput(v *ListStreamProc
return nil
}
+func awsAwsjson11_serializeOpDocumentListTagsForResourceInput(v *ListTagsForResourceInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.ResourceArn != nil {
+ ok := object.Key("ResourceArn")
+ ok.String(*v.ResourceArn)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeOpDocumentRecognizeCelebritiesInput(v *RecognizeCelebritiesInput, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -3942,3 +4138,41 @@ func awsAwsjson11_serializeOpDocumentStopStreamProcessorInput(v *StopStreamProce
return nil
}
+
+func awsAwsjson11_serializeOpDocumentTagResourceInput(v *TagResourceInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.ResourceArn != nil {
+ ok := object.Key("ResourceArn")
+ ok.String(*v.ResourceArn)
+ }
+
+ if v.Tags != nil {
+ ok := object.Key("Tags")
+ if err := awsAwsjson11_serializeDocumentTagMap(v.Tags, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsAwsjson11_serializeOpDocumentUntagResourceInput(v *UntagResourceInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.ResourceArn != nil {
+ ok := object.Key("ResourceArn")
+ ok.String(*v.ResourceArn)
+ }
+
+ if v.TagKeys != nil {
+ ok := object.Key("TagKeys")
+ if err := awsAwsjson11_serializeDocumentTagKeyList(v.TagKeys, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
diff --git a/service/rekognition/types/errors.go b/service/rekognition/types/errors.go
index 4f5a4b210f4..fdc916987a2 100644
--- a/service/rekognition/types/errors.go
+++ b/service/rekognition/types/errors.go
@@ -79,8 +79,10 @@ func (e *IdempotentParameterMismatchException) ErrorFault() smithy.ErrorFault {
return smithy.FaultClient
}
-// The input image size exceeds the allowed limit. For more information, see Limits
-// in Amazon Rekognition in the Amazon Rekognition Developer Guide.
+// The input image size exceeds the allowed limit. If you are calling
+// DetectProtectiveEquipment, the image size or resolution exceeds the allowed
+// limit. For more information, see Limits in Amazon Rekognition in the Amazon
+// Rekognition Developer Guide.
type ImageTooLargeException struct {
Message *string
@@ -333,8 +335,9 @@ func (e *ResourceNotReadyException) ErrorMessage() string {
func (e *ResourceNotReadyException) ErrorCode() string { return "ResourceNotReadyException" }
func (e *ResourceNotReadyException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
-// The size of the collection exceeds the allowed limit. For more information, see
-// Limits in Amazon Rekognition in the Amazon Rekognition Developer Guide.
+// The size of the collection or tag list exceeds the allowed limit. For more
+// information, see Limits in Amazon Rekognition in the Amazon Rekognition
+// Developer Guide.
type ServiceQuotaExceededException struct {
Message *string
diff --git a/service/rekognition/types/types.go b/service/rekognition/types/types.go
index 599ed3b660b..69413ee908a 100644
--- a/service/rekognition/types/types.go
+++ b/service/rekognition/types/types.go
@@ -247,9 +247,9 @@ type DetectionFilter struct {
// relative to the video frame width.
MinBoundingBoxWidth *float32
- // Sets confidence of word detection. Words with detection confidence below this
- // will be excluded from the result. Values should be between 0.5 and 1 as Text in
- // Video will not return any result below 0.5.
+ // Sets the confidence of word detection. Words with detection confidence below
+ // this will be excluded from the result. Values should be between 50 and 100 as
+ // Text in Video will not return any result below 50.
MinConfidence *float32
}
diff --git a/service/rekognition/validators.go b/service/rekognition/validators.go
index fcb4d020f30..078517a3f49 100644
--- a/service/rekognition/validators.go
+++ b/service/rekognition/validators.go
@@ -610,6 +610,26 @@ func (m *validateOpListFaces) HandleInitialize(ctx context.Context, in middlewar
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 validateOpRecognizeCelebrities struct {
}
@@ -910,6 +930,46 @@ func (m *validateOpStopStreamProcessor) HandleInitialize(ctx context.Context, in
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 addOpCompareFacesValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpCompareFaces{}, middleware.After)
}
@@ -1030,6 +1090,10 @@ func addOpListFacesValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpListFaces{}, middleware.After)
}
+func addOpListTagsForResourceValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpListTagsForResource{}, middleware.After)
+}
+
func addOpRecognizeCelebritiesValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpRecognizeCelebrities{}, middleware.After)
}
@@ -1090,6 +1154,14 @@ func addOpStopStreamProcessorValidationMiddleware(stack *middleware.Stack) error
return stack.Initialize.Add(&validateOpStopStreamProcessor{}, 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 validateHumanLoopConfig(v *types.HumanLoopConfig) error {
if v == nil {
return nil
@@ -1640,6 +1712,21 @@ func validateOpListFacesInput(v *ListFacesInput) 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 validateOpRecognizeCelebritiesInput(v *RecognizeCelebritiesInput) error {
if v == nil {
return nil
@@ -1919,3 +2006,39 @@ func validateOpStopStreamProcessorInput(v *StopStreamProcessorInput) error {
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/resourcegroups/go.mod b/service/resourcegroups/go.mod
index 0d71f7d09bb..592cdc3ae1c 100644
--- a/service/resourcegroups/go.mod
+++ b/service/resourcegroups/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/resourcegroups/go.sum b/service/resourcegroups/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/resourcegroups/go.sum
+++ b/service/resourcegroups/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/resourcegroupstaggingapi/go.mod b/service/resourcegroupstaggingapi/go.mod
index ae575334046..07e685a7afd 100644
--- a/service/resourcegroupstaggingapi/go.mod
+++ b/service/resourcegroupstaggingapi/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/resourcegroupstaggingapi/go.sum b/service/resourcegroupstaggingapi/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/resourcegroupstaggingapi/go.sum
+++ b/service/resourcegroupstaggingapi/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/robomaker/go.mod b/service/robomaker/go.mod
index 63c4502b76b..5cb2c80fb04 100644
--- a/service/robomaker/go.mod
+++ b/service/robomaker/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/robomaker/go.sum b/service/robomaker/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/robomaker/go.sum
+++ b/service/robomaker/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/route53/api_op_ListResourceRecordSets.go b/service/route53/api_op_ListResourceRecordSets.go
index b6a70b1159c..086779bd450 100644
--- a/service/route53/api_op_ListResourceRecordSets.go
+++ b/service/route53/api_op_ListResourceRecordSets.go
@@ -12,7 +12,7 @@ import (
)
// Lists the resource record sets in a specified hosted zone.
-// ListResourceRecordSets returns up to 100 resource record sets at a time in ASCII
+// ListResourceRecordSets returns up to 300 resource record sets at a time in ASCII
// order, beginning at a position specified by the name and type elements. Sort
// order ListResourceRecordSets sorts results first by DNS name with the labels
// reversed, for example: com.example.www. Note the trailing dot, which can change
diff --git a/service/route53/go.mod b/service/route53/go.mod
index 0fd966a5311..40c3082693f 100644
--- a/service/route53/go.mod
+++ b/service/route53/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/route53/go.sum b/service/route53/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/route53/go.sum
+++ b/service/route53/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/route53domains/go.mod b/service/route53domains/go.mod
index 50cd0b26059..9c869b6b52e 100644
--- a/service/route53domains/go.mod
+++ b/service/route53domains/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/route53domains/go.sum b/service/route53domains/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/route53domains/go.sum
+++ b/service/route53domains/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/route53resolver/go.mod b/service/route53resolver/go.mod
index 1ccf02f79fa..d4924636d1e 100644
--- a/service/route53resolver/go.mod
+++ b/service/route53resolver/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/route53resolver/go.sum b/service/route53resolver/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/route53resolver/go.sum
+++ b/service/route53resolver/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/s3/api_op_AbortMultipartUpload.go b/service/s3/api_op_AbortMultipartUpload.go
index 51f4077b4ef..2dca574206d 100644
--- a/service/s3/api_op_AbortMultipartUpload.go
+++ b/service/s3/api_op_AbortMultipartUpload.go
@@ -70,15 +70,15 @@ type AbortMultipartUploadInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_CompleteMultipartUpload.go b/service/s3/api_op_CompleteMultipartUpload.go
index c3b80ef2f62..169dba75f42 100644
--- a/service/s3/api_op_CompleteMultipartUpload.go
+++ b/service/s3/api_op_CompleteMultipartUpload.go
@@ -153,15 +153,15 @@ type CompleteMultipartUploadOutput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
Bucket *string
// Indicates whether the multipart upload uses an S3 Bucket Key for server-side
diff --git a/service/s3/api_op_CopyObject.go b/service/s3/api_op_CopyObject.go
index ec4d16f9024..2b673a5bf97 100644
--- a/service/s3/api_op_CopyObject.go
+++ b/service/s3/api_op_CopyObject.go
@@ -165,15 +165,15 @@ type CopyObjectInput struct {
// the access point ARN in place of the bucket name. For more information about
// access point ARNs, see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_CreateMultipartUpload.go b/service/s3/api_op_CreateMultipartUpload.go
index bfab4f0afe0..c8ee9381283 100644
--- a/service/s3/api_op_CreateMultipartUpload.go
+++ b/service/s3/api_op_CreateMultipartUpload.go
@@ -250,15 +250,15 @@ type CreateMultipartUploadInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
@@ -417,15 +417,15 @@ type CreateMultipartUploadOutput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
Bucket *string
// Indicates whether the multipart upload uses an S3 Bucket Key for server-side
diff --git a/service/s3/api_op_DeleteObject.go b/service/s3/api_op_DeleteObject.go
index 7673ecca76d..80646e27ad1 100644
--- a/service/s3/api_op_DeleteObject.go
+++ b/service/s3/api_op_DeleteObject.go
@@ -14,14 +14,15 @@ import (
// Removes the null version (if there is one) of an object and inserts a delete
// marker, which becomes the latest version of the object. If there isn't a null
-// version, Amazon S3 does not remove any objects. To remove a specific version,
-// you must be the bucket owner and you must use the version Id subresource. Using
-// this subresource permanently deletes the version. If the object deleted is a
-// delete marker, Amazon S3 sets the response header, x-amz-delete-marker, to true.
-// If the object you want to delete is in a bucket where the bucket versioning
-// configuration is MFA Delete enabled, you must include the x-amz-mfa request
-// header in the DELETE versionId request. Requests that include x-amz-mfa must use
-// HTTPS. For more information about MFA Delete, see Using MFA Delete
+// version, Amazon S3 does not remove any objects but will still respond that the
+// command was successful. To remove a specific version, you must be the bucket
+// owner and you must use the version Id subresource. Using this subresource
+// permanently deletes the version. If the object deleted is a delete marker,
+// Amazon S3 sets the response header, x-amz-delete-marker, to true. If the object
+// you want to delete is in a bucket where the bucket versioning configuration is
+// MFA Delete enabled, you must include the x-amz-mfa request header in the DELETE
+// versionId request. Requests that include x-amz-mfa must use HTTPS. For more
+// information about MFA Delete, see Using MFA Delete
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html). To see
// sample requests that use versioning, see Sample Request
// (https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete).
@@ -60,15 +61,15 @@ type DeleteObjectInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_DeleteObjectTagging.go b/service/s3/api_op_DeleteObjectTagging.go
index 7f402a08be6..fb99bfc50fb 100644
--- a/service/s3/api_op_DeleteObjectTagging.go
+++ b/service/s3/api_op_DeleteObjectTagging.go
@@ -51,15 +51,15 @@ type DeleteObjectTaggingInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_DeleteObjects.go b/service/s3/api_op_DeleteObjects.go
index dcb70424eb4..2dd42351e57 100644
--- a/service/s3/api_op_DeleteObjects.go
+++ b/service/s3/api_op_DeleteObjects.go
@@ -82,15 +82,15 @@ type DeleteObjectsInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_GetObject.go b/service/s3/api_op_GetObject.go
index b450f859306..b370fb9f1e8 100644
--- a/service/s3/api_op_GetObject.go
+++ b/service/s3/api_op_GetObject.go
@@ -159,15 +159,15 @@ type GetObjectInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_GetObjectAcl.go b/service/s3/api_op_GetObjectAcl.go
index 4ed3c8f65e8..fe7819146ca 100644
--- a/service/s3/api_op_GetObjectAcl.go
+++ b/service/s3/api_op_GetObjectAcl.go
@@ -53,7 +53,7 @@ type GetObjectAclInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide.
+ // in the Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_GetObjectLegalHold.go b/service/s3/api_op_GetObjectLegalHold.go
index 71a625ef8ef..8db280d57dd 100644
--- a/service/s3/api_op_GetObjectLegalHold.go
+++ b/service/s3/api_op_GetObjectLegalHold.go
@@ -40,7 +40,7 @@ type GetObjectLegalHoldInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide.
+ // in the Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_GetObjectLockConfiguration.go b/service/s3/api_op_GetObjectLockConfiguration.go
index 863ba308168..298d69073ae 100644
--- a/service/s3/api_op_GetObjectLockConfiguration.go
+++ b/service/s3/api_op_GetObjectLockConfiguration.go
@@ -41,7 +41,7 @@ type GetObjectLockConfigurationInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide.
+ // in the Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_GetObjectRetention.go b/service/s3/api_op_GetObjectRetention.go
index e9a81d4ecc8..89e018cc7df 100644
--- a/service/s3/api_op_GetObjectRetention.go
+++ b/service/s3/api_op_GetObjectRetention.go
@@ -40,7 +40,7 @@ type GetObjectRetentionInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide.
+ // in the Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_GetObjectTagging.go b/service/s3/api_op_GetObjectTagging.go
index 282b11f6003..1e2474df529 100644
--- a/service/s3/api_op_GetObjectTagging.go
+++ b/service/s3/api_op_GetObjectTagging.go
@@ -55,15 +55,15 @@ type GetObjectTaggingInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_HeadBucket.go b/service/s3/api_op_HeadBucket.go
index b09484c6285..11d2bbc2539 100644
--- a/service/s3/api_op_HeadBucket.go
+++ b/service/s3/api_op_HeadBucket.go
@@ -54,15 +54,15 @@ type HeadBucketInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_HeadObject.go b/service/s3/api_op_HeadObject.go
index 3af3676f468..e3786ed99a2 100644
--- a/service/s3/api_op_HeadObject.go
+++ b/service/s3/api_op_HeadObject.go
@@ -126,15 +126,15 @@ type HeadObjectInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
@@ -333,7 +333,7 @@ type HeadObjectOutput struct {
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html) or an
// archive copy is already restored. If an archive copy is already restored, the
// header value indicates when Amazon S3 is scheduled to delete the object copy.
- // For example: x-amz-restore: ongoing-request="false", expiry-date="Fri, 23 Dec
+ // For example: x-amz-restore: ongoing-request="false", expiry-date="Fri, 21 Dec
// 2012 00:00:00 GMT" If the object restoration is in progress, the header returns
// the value ongoing-request="true". For more information about archiving objects,
// see Transitioning Objects: General Considerations
diff --git a/service/s3/api_op_ListMultipartUploads.go b/service/s3/api_op_ListMultipartUploads.go
index 4d7a1ac3080..5e438c064db 100644
--- a/service/s3/api_op_ListMultipartUploads.go
+++ b/service/s3/api_op_ListMultipartUploads.go
@@ -77,15 +77,15 @@ type ListMultipartUploadsInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_ListObjectVersions.go b/service/s3/api_op_ListObjectVersions.go
index 108afc8800d..7a6bf0660bf 100644
--- a/service/s3/api_op_ListObjectVersions.go
+++ b/service/s3/api_op_ListObjectVersions.go
@@ -14,11 +14,13 @@ import (
// Returns metadata about all versions of the objects in a bucket. You can also use
// request parameters as selection criteria to return metadata about a subset of
-// all the object versions. A 200 OK response can contain valid or invalid XML.
-// Make sure to design your application to parse the contents of the response and
-// handle it appropriately. To use this operation, you must have READ access to the
-// bucket. This action is not supported by Amazon S3 on Outposts. The following
-// operations are related to ListObjectVersions:
+// all the object versions. To use this operation, you must have permissions to
+// perform the s3:ListBucketVersions action. Be aware of the name difference. A 200
+// OK response can contain valid or invalid XML. Make sure to design your
+// application to parse the contents of the response and handle it appropriately.
+// To use this operation, you must have READ access to the bucket. This action is
+// not supported by Amazon S3 on Outposts. The following operations are related to
+// ListObjectVersions:
//
// * ListObjectsV2
// (https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html)
diff --git a/service/s3/api_op_ListObjects.go b/service/s3/api_op_ListObjects.go
index d4cd23c3f2c..801ece02bd9 100644
--- a/service/s3/api_op_ListObjects.go
+++ b/service/s3/api_op_ListObjects.go
@@ -66,15 +66,15 @@ type ListObjectsInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_ListObjectsV2.go b/service/s3/api_op_ListObjectsV2.go
index ae273661eb7..83e910a6a79 100644
--- a/service/s3/api_op_ListObjectsV2.go
+++ b/service/s3/api_op_ListObjectsV2.go
@@ -69,15 +69,15 @@ type ListObjectsV2Input struct {
// access point ARN in place of the bucket name. For more information about access
// point ARNs, see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
@@ -172,15 +172,15 @@ type ListObjectsV2Output struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
Name *string
// NextContinuationToken is sent when isTruncated is true, which means there are
diff --git a/service/s3/api_op_ListParts.go b/service/s3/api_op_ListParts.go
index 0af8f759cfc..313d00a59a0 100644
--- a/service/s3/api_op_ListParts.go
+++ b/service/s3/api_op_ListParts.go
@@ -75,15 +75,15 @@ type ListPartsInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_PutBucketEncryption.go b/service/s3/api_op_PutBucketEncryption.go
index ff1e1125769..ead1b760d04 100644
--- a/service/s3/api_op_PutBucketEncryption.go
+++ b/service/s3/api_op_PutBucketEncryption.go
@@ -62,7 +62,7 @@ type PutBucketEncryptionInput struct {
// (SSE-KMS). For information about the Amazon S3 default encryption feature, see
// Amazon S3 Default Bucket Encryption
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_PutObject.go b/service/s3/api_op_PutObject.go
index 037bda3df86..31fc9524945 100644
--- a/service/s3/api_op_PutObject.go
+++ b/service/s3/api_op_PutObject.go
@@ -30,12 +30,12 @@ import (
// object with a retention period configured using Amazon S3 Object Lock. For more
// information about Amazon S3 Object Lock, see Amazon S3 Object Lock Overview
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock-overview.html) in
-// the Amazon Simple Storage Service Developer Guide. Server-side Encryption You
-// can optionally request server-side encryption. With server-side encryption,
-// Amazon S3 encrypts your data as it writes it to disks in its data centers and
-// decrypts the data when you access it. You have the option to provide your own
-// encryption key or use AWS managed encryption keys (SSE-S3 or SSE-KMS). For more
-// information, see Using Server-Side Encryption
+// the Amazon S3 User Guide. Server-side Encryption You can optionally request
+// server-side encryption. With server-side encryption, Amazon S3 encrypts your
+// data as it writes it to disks in its data centers and decrypts the data when you
+// access it. You have the option to provide your own encryption key or use AWS
+// managed encryption keys (SSE-S3 or SSE-KMS). For more information, see Using
+// Server-Side Encryption
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html).
// If you request server-side encryption using AWS Key Management Service
// (SSE-KMS), you can enable an S3 Bucket Key at the object-level. For more
@@ -99,15 +99,15 @@ type PutObjectInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_PutObjectAcl.go b/service/s3/api_op_PutObjectAcl.go
index b2c5f38a901..de99200d397 100644
--- a/service/s3/api_op_PutObjectAcl.go
+++ b/service/s3/api_op_PutObjectAcl.go
@@ -161,7 +161,7 @@ type PutObjectAclInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide.
+ // in the Amazon S3 User Guide.
//
// This member is required.
Bucket *string
@@ -174,15 +174,15 @@ type PutObjectAclInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Key *string
diff --git a/service/s3/api_op_PutObjectLegalHold.go b/service/s3/api_op_PutObjectLegalHold.go
index f46ec2d4365..1931c1c3adb 100644
--- a/service/s3/api_op_PutObjectLegalHold.go
+++ b/service/s3/api_op_PutObjectLegalHold.go
@@ -12,11 +12,10 @@ import (
smithyhttp "github.com/aws/smithy-go/transport/http"
)
-// Applies a Legal Hold configuration to the specified object. This action is not
-// supported by Amazon S3 on Outposts. Related Resources
-//
-// * Locking Objects
-// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html)
+// Applies a Legal Hold configuration to the specified object. For more
+// information, see Locking Objects
+// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html). This action
+// is not supported by Amazon S3 on Outposts.
func (c *Client) PutObjectLegalHold(ctx context.Context, params *PutObjectLegalHoldInput, optFns ...func(*Options)) (*PutObjectLegalHoldOutput, error) {
if params == nil {
params = &PutObjectLegalHoldInput{}
@@ -42,7 +41,7 @@ type PutObjectLegalHoldInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide.
+ // in the Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_PutObjectLockConfiguration.go b/service/s3/api_op_PutObjectLockConfiguration.go
index 66b134a4261..d38254b443d 100644
--- a/service/s3/api_op_PutObjectLockConfiguration.go
+++ b/service/s3/api_op_PutObjectLockConfiguration.go
@@ -14,11 +14,19 @@ import (
// Places an Object Lock configuration on the specified bucket. The rule specified
// in the Object Lock configuration will be applied by default to every new object
-// placed in the specified bucket. DefaultRetention requires either Days or Years.
-// You can't specify both at the same time. Related Resources
+// placed in the specified bucket. For more information, see Locking Objects
+// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html).
//
-// * Locking Objects
-// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html)
+// * The
+// DefaultRetention settings require both a mode and a period.
+//
+// * The
+// DefaultRetention period can be either Days or Years but you must select one. You
+// cannot specify Days and Years at the same time.
+//
+// * You can only enable Object
+// Lock for new buckets. If you want to turn on Object Lock for an existing bucket,
+// contact AWS Support.
func (c *Client) PutObjectLockConfiguration(ctx context.Context, params *PutObjectLockConfigurationInput, optFns ...func(*Options)) (*PutObjectLockConfigurationOutput, error) {
if params == nil {
params = &PutObjectLockConfigurationInput{}
diff --git a/service/s3/api_op_PutObjectRetention.go b/service/s3/api_op_PutObjectRetention.go
index 38c3f43510b..4fd327939aa 100644
--- a/service/s3/api_op_PutObjectRetention.go
+++ b/service/s3/api_op_PutObjectRetention.go
@@ -12,11 +12,10 @@ import (
smithyhttp "github.com/aws/smithy-go/transport/http"
)
-// Places an Object Retention configuration on an object. This action is not
-// supported by Amazon S3 on Outposts. Related Resources
-//
-// * Locking Objects
-// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html)
+// Places an Object Retention configuration on an object. For more information, see
+// Locking Objects
+// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html). This action
+// is not supported by Amazon S3 on Outposts.
func (c *Client) PutObjectRetention(ctx context.Context, params *PutObjectRetentionInput, optFns ...func(*Options)) (*PutObjectRetentionOutput, error) {
if params == nil {
params = &PutObjectRetentionInput{}
@@ -42,7 +41,7 @@ type PutObjectRetentionInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide.
+ // in the Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_PutObjectTagging.go b/service/s3/api_op_PutObjectTagging.go
index 532ee13d9a6..8a7a565d116 100644
--- a/service/s3/api_op_PutObjectTagging.go
+++ b/service/s3/api_op_PutObjectTagging.go
@@ -87,15 +87,15 @@ type PutObjectTaggingInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_PutPublicAccessBlock.go b/service/s3/api_op_PutPublicAccessBlock.go
index 7ed42fe0287..5a71198f79d 100644
--- a/service/s3/api_op_PutPublicAccessBlock.go
+++ b/service/s3/api_op_PutPublicAccessBlock.go
@@ -69,7 +69,7 @@ type PutPublicAccessBlockInput struct {
// information about when Amazon S3 considers a bucket or object public, see The
// Meaning of "Public"
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status)
- // in the Amazon Simple Storage Service Developer Guide.
+ // in the Amazon S3 User Guide.
//
// This member is required.
PublicAccessBlockConfiguration *types.PublicAccessBlockConfiguration
diff --git a/service/s3/api_op_RestoreObject.go b/service/s3/api_op_RestoreObject.go
index 8a912c81a8f..13e8c996d11 100644
--- a/service/s3/api_op_RestoreObject.go
+++ b/service/s3/api_op_RestoreObject.go
@@ -255,15 +255,15 @@ type RestoreObjectInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_UploadPart.go b/service/s3/api_op_UploadPart.go
index fc2a0979b38..88ed5c99bb9 100644
--- a/service/s3/api_op_UploadPart.go
+++ b/service/s3/api_op_UploadPart.go
@@ -133,15 +133,15 @@ type UploadPartInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_UploadPartCopy.go b/service/s3/api_op_UploadPartCopy.go
index 750d84bd9f0..1c19345961f 100644
--- a/service/s3/api_op_UploadPartCopy.go
+++ b/service/s3/api_op_UploadPartCopy.go
@@ -144,15 +144,15 @@ type UploadPartCopyInput struct {
// ARN in place of the bucket name. For more information about access point ARNs,
// see Using Access Points
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html)
- // in the Amazon Simple Storage Service Developer Guide. When using this action
- // with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts
- // hostname. The S3 on Outposts hostname takes the form
+ // in the Amazon S3 User Guide. When using this action with Amazon S3 on Outposts,
+ // you must direct requests to the S3 on Outposts hostname. The S3 on Outposts
+ // hostname takes the form
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using
// this action using S3 on Outposts through the AWS SDKs, you provide the Outposts
// bucket ARN in place of the bucket name. For more information about S3 on
// Outposts ARNs, see Using S3 on Outposts
// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Bucket *string
diff --git a/service/s3/api_op_WriteGetObjectResponse.go b/service/s3/api_op_WriteGetObjectResponse.go
index d1a1b104d67..3fe64756eb1 100644
--- a/service/s3/api_op_WriteGetObjectResponse.go
+++ b/service/s3/api_op_WriteGetObjectResponse.go
@@ -29,7 +29,28 @@ import (
// caller, typically an AWS Lambda function, can provide the same metadata when it
// internally invokes GetObject. When WriteGetObjectResponse is called by a
// customer-owned Lambda function, the metadata returned to the end user GetObject
-// call might differ from what Amazon S3 would normally return.
+// call might differ from what Amazon S3 would normally return. AWS provides some
+// prebuilt Lambda functions that you can use with S3 Object Lambda to detect and
+// redact personally identifiable information (PII) and decompress S3 objects.
+// These Lambda functions are available in the AWS Serverless Application
+// Repository, and can be selected through the AWS Management Console when you
+// create your Object Lambda Access Point. Example 1: PII Access Control - This
+// Lambda function uses Amazon Comprehend, a natural language processing (NLP)
+// service using machine learning to find insights and relationships in text. It
+// automatically detects personally identifiable information (PII) such as names,
+// addresses, dates, credit card numbers, and social security numbers from
+// documents in your Amazon S3 bucket. Example 2: PII Redaction - This Lambda
+// function uses Amazon Comprehend, a natural language processing (NLP) service
+// using machine learning to find insights and relationships in text. It
+// automatically redacts personally identifiable information (PII) such as names,
+// addresses, dates, credit card numbers, and social security numbers from
+// documents in your Amazon S3 bucket. Example 3: Decompression - The Lambda
+// function S3ObjectLambdaDecompression, is equipped to decompress objects stored
+// in S3 in one of six compressed file formats including bzip2, gzip, snappy, zlib,
+// zstandard and ZIP. For information on how to view and use these functions, see
+// Using AWS built Lambda functions
+// (https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-examples.html) in
+// the Amazon S3 User Guide.
func (c *Client) WriteGetObjectResponse(ctx context.Context, params *WriteGetObjectResponseInput, optFns ...func(*Options)) (*WriteGetObjectResponseOutput, error) {
if params == nil {
params = &WriteGetObjectResponseInput{}
@@ -102,7 +123,8 @@ type WriteGetObjectResponseInput struct {
// A string that uniquely identifies an error condition. Returned in the tag of
// the error XML response for a corresponding GetObject call. Cannot be used with a
// successful StatusCode header or when the transformed object is provided in the
- // body.
+ // body. All error codes from S3 are sentence-cased. Regex value is
+ // "^[A-Z][a-zA-Z]+$".
ErrorCode *string
// Contains a generic description of the error condition. Returned in the tag of
diff --git a/service/s3/go.mod b/service/s3/go.mod
index f488e48e26a..c0445707a3b 100644
--- a/service/s3/go.mod
+++ b/service/s3/go.mod
@@ -7,7 +7,7 @@ require (
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.0.2
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.0.4
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.2.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/google/go-cmp v0.5.4
)
diff --git a/service/s3/go.sum b/service/s3/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/s3/go.sum
+++ b/service/s3/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/s3/internal/configtesting/go.sum b/service/s3/internal/configtesting/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/s3/internal/configtesting/go.sum
+++ b/service/s3/internal/configtesting/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/s3/internal/endpoints/endpoints.go b/service/s3/internal/endpoints/endpoints.go
index 59020ef8702..45737b42754 100644
--- a/service/s3/internal/endpoints/endpoints.go
+++ b/service/s3/internal/endpoints/endpoints.go
@@ -65,6 +65,90 @@ var defaultPartitions = endpoints.Partitions{
RegionRegex: partitionRegexp.Aws,
IsRegionalized: true,
Endpoints: endpoints.Endpoints{
+ "accesspoint-af-south-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.af-south-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ap-east-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ap-east-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ap-northeast-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ap-northeast-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ap-northeast-2": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ap-northeast-2.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ap-northeast-3": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ap-northeast-3.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ap-south-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ap-south-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ap-southeast-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ap-southeast-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ap-southeast-2": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ap-southeast-2.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ca-central-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ca-central-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-eu-central-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.eu-central-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-eu-north-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.eu-north-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-eu-south-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.eu-south-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-eu-west-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.eu-west-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-eu-west-2": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.eu-west-2.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-eu-west-3": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.eu-west-3.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-me-south-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.me-south-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-sa-east-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.sa-east-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-us-east-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.us-east-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-us-east-2": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.us-east-2.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-us-west-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.us-west-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-us-west-2": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.us-west-2.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
"af-south-1": endpoints.Endpoint{},
"ap-east-1": endpoints.Endpoint{},
"ap-northeast-1": endpoints.Endpoint{
@@ -97,8 +181,28 @@ var defaultPartitions = endpoints.Partitions{
Hostname: "s3.eu-west-1.amazonaws.com",
SignatureVersions: []string{"s3", "s3v4"},
},
- "eu-west-2": endpoints.Endpoint{},
- "eu-west-3": endpoints.Endpoint{},
+ "eu-west-2": endpoints.Endpoint{},
+ "eu-west-3": endpoints.Endpoint{},
+ "fips-accesspoint-ca-central-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint-fips.ca-central-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "fips-accesspoint-us-east-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint-fips.us-east-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "fips-accesspoint-us-east-2": endpoints.Endpoint{
+ Hostname: "s3-accesspoint-fips.us-east-2.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "fips-accesspoint-us-west-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint-fips.us-west-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "fips-accesspoint-us-west-2": endpoints.Endpoint{
+ Hostname: "s3-accesspoint-fips.us-west-2.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
"me-south-1": endpoints.Endpoint{},
"s3-external-1": endpoints.Endpoint{
Hostname: "s3-external-1.amazonaws.com",
@@ -136,6 +240,14 @@ var defaultPartitions = endpoints.Partitions{
RegionRegex: partitionRegexp.AwsCn,
IsRegionalized: true,
Endpoints: endpoints.Endpoints{
+ "accesspoint-cn-north-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.cn-north-1.amazonaws.com.cn",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-cn-northwest-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.cn-northwest-1.amazonaws.com.cn",
+ SignatureVersions: []string{"s3v4"},
+ },
"cn-north-1": endpoints.Endpoint{},
"cn-northwest-1": endpoints.Endpoint{},
},
@@ -179,6 +291,22 @@ var defaultPartitions = endpoints.Partitions{
RegionRegex: partitionRegexp.AwsUsGov,
IsRegionalized: true,
Endpoints: endpoints.Endpoints{
+ "accesspoint-us-gov-east-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.us-gov-east-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-us-gov-west-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.us-gov-west-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "fips-accesspoint-us-gov-east-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint-fips.us-gov-east-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "fips-accesspoint-us-gov-west-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint-fips.us-gov-west-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
"fips-us-gov-west-1": endpoints.Endpoint{
Hostname: "s3-fips.us-gov-west-1.amazonaws.com",
CredentialScope: endpoints.CredentialScope{
diff --git a/service/s3/types/types.go b/service/s3/types/types.go
index d84713c6e81..734b16b0641 100644
--- a/service/s3/types/types.go
+++ b/service/s3/types/types.go
@@ -11,7 +11,7 @@ import (
// more information, see Aborting Incomplete Multipart Uploads Using a Bucket
// Lifecycle Policy
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config)
-// in the Amazon Simple Storage Service Developer Guide.
+// in the Amazon S3 User Guide.
type AbortIncompleteMultipartUpload struct {
// Specifies the number of days after which Amazon S3 aborts an incomplete
@@ -22,7 +22,7 @@ type AbortIncompleteMultipartUpload struct {
// Configures the transfer acceleration state for an Amazon S3 bucket. For more
// information, see Amazon S3 Transfer Acceleration
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html) in
-// the Amazon Simple Storage Service Developer Guide.
+// the Amazon S3 User Guide.
type AccelerateConfiguration struct {
// Specifies the transfer acceleration status of the bucket.
@@ -166,7 +166,7 @@ type Bucket struct {
// Specifies the lifecycle configuration for objects in an Amazon S3 bucket. For
// more information, see Object Lifecycle Management
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html) in
-// the Amazon Simple Storage Service Developer Guide.
+// the Amazon S3 User Guide.
type BucketLifecycleConfiguration struct {
// A lifecycle rule for individual objects in an Amazon S3 bucket.
@@ -264,8 +264,8 @@ type CopyPartResult struct {
// Describes the cross-origin access configuration for objects in an Amazon S3
// bucket. For more information, see Enabling Cross-Origin Resource Sharing
-// (https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html) in the Amazon Simple
-// Storage Service Developer Guide.
+// (https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html) in the Amazon S3
+// User Guide.
type CORSConfiguration struct {
// A set of origins and methods (cross-origin access that you want to allow). You
@@ -394,16 +394,25 @@ type CSVOutput struct {
// The container element for specifying the default Object Lock retention settings
// for new objects placed in the specified bucket.
+//
+// * The DefaultRetention settings
+// require both a mode and a period.
+//
+// * The DefaultRetention period can be either
+// Days or Years but you must select one. You cannot specify Days and Years at the
+// same time.
type DefaultRetention struct {
// The number of days that you want to specify for the default retention period.
+ // Must be used with Mode.
Days int32
// The default Object Lock retention mode you want to apply to new objects placed
- // in the specified bucket.
+ // in the specified bucket. Must be used with either Days or Years.
Mode ObjectLockRetentionMode
// The number of years that you want to specify for the default retention period.
+ // Must be used with Mode.
Years int32
}
@@ -1547,7 +1556,7 @@ type FilterRule struct {
// prefixes and suffixes are not supported. For more information, see Configuring
// Event Notifications
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
Name FilterRuleName
// The value that the filter searches for in object key names.
@@ -1855,7 +1864,7 @@ type LambdaFunctionConfiguration struct {
// The Amazon S3 bucket event for which to invoke the AWS Lambda function. For more
// information, see Supported Event Types
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
//
// This member is required.
Events []Event
@@ -1869,7 +1878,7 @@ type LambdaFunctionConfiguration struct {
// Specifies object key name filtering rules. For information about key name
// filtering, see Configuring Event Notifications
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
Filter *NotificationConfigurationFilter
// An optional unique identifier for configurations in a notification
@@ -1909,7 +1918,7 @@ type LifecycleRule struct {
// more information, see Aborting Incomplete Multipart Uploads Using a Bucket
// Lifecycle Policy
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config)
- // in the Amazon Simple Storage Service Developer Guide.
+ // in the Amazon S3 User Guide.
AbortIncompleteMultipartUpload *AbortIncompleteMultipartUpload
// Specifies the expiration for the lifecycle of the object in the form of date,
@@ -1917,7 +1926,8 @@ type LifecycleRule struct {
Expiration *LifecycleExpiration
// The Filter is used to identify objects that a Lifecycle Rule applies to. A
- // Filter must have exactly one of Prefix, Tag, or And specified.
+ // Filter must have exactly one of Prefix, Tag, or And specified. Filter is
+ // required if the LifecycleRule does not containt a Prefix element.
Filter LifecycleRuleFilter
// Unique identifier for the rule. The value cannot be longer than 255 characters.
@@ -1937,7 +1947,7 @@ type LifecycleRule struct {
// storage class at a set period in the object's lifetime.
NoncurrentVersionTransitions []NoncurrentVersionTransition
- // Prefix identifying one or more objects to which the rule applies. This is No
+ // Prefix identifying one or more objects to which the rule applies. This is no
// longer used; use Filter instead. Replacement must be made for object keys
// containing special characters (such as carriage returns) when using XML
// requests. For more information, see XML related object key constraints
@@ -2170,7 +2180,7 @@ type NoncurrentVersionTransition struct {
// calculations, see How Amazon S3 Calculates How Long an Object Has Been
// Noncurrent
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations)
- // in the Amazon Simple Storage Service Developer Guide.
+ // in the Amazon S3 User Guide.
NoncurrentDays int32
// The class of storage used to store the object.
@@ -2197,7 +2207,7 @@ type NotificationConfiguration struct {
// Specifies object key name filtering rules. For information about key name
// filtering, see Configuring Event Notifications
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the
-// Amazon Simple Storage Service Developer Guide.
+// Amazon S3 User Guide.
type NotificationConfigurationFilter struct {
// A container for object key name prefix and suffix filtering rules.
@@ -2261,10 +2271,14 @@ type ObjectIdentifier struct {
// The container element for Object Lock configuration parameters.
type ObjectLockConfiguration struct {
- // Indicates whether this bucket has an Object Lock configuration enabled.
+ // Indicates whether this bucket has an Object Lock configuration enabled. Enable
+ // ObjectLockEnabled when you apply ObjectLockConfiguration to a bucket.
ObjectLockEnabled ObjectLockEnabled
- // The Object Lock rule in place for the specified object.
+ // Specifies the Object Lock rule for the specified object. Enable the this rule
+ // when you apply ObjectLockConfiguration to a bucket. Bucket settings require both
+ // a mode and a period. The period can be either Days or Years but you must select
+ // one. You cannot specify Days and Years at the same time.
Rule *ObjectLockRule
}
@@ -2288,8 +2302,10 @@ type ObjectLockRetention struct {
// The container element for an Object Lock rule.
type ObjectLockRule struct {
- // The default retention period that you want to apply to new objects placed in the
- // specified bucket.
+ // The default Object Lock retention mode and period that you want to apply to new
+ // objects placed in the specified bucket. Bucket settings require both a mode and
+ // a period. The period can be either Days or Years but you must select one. You
+ // cannot specify Days and Years at the same time.
DefaultRetention *DefaultRetention
}
@@ -2464,7 +2480,7 @@ type QueueConfiguration struct {
// Specifies object key name filtering rules. For information about key name
// filtering, see Configuring Event Notifications
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
Filter *NotificationConfigurationFilter
// An optional unique identifier for configurations in a notification
@@ -2545,7 +2561,7 @@ type ReplicationConfiguration struct {
// role that Amazon S3 assumes when replicating objects. For more information, see
// How to Set Up Replication
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html) in
- // the Amazon Simple Storage Service Developer Guide.
+ // the Amazon S3 User Guide.
//
// This member is required.
Role *string
@@ -2614,7 +2630,7 @@ type ReplicationRule struct {
// rule with the highest priority. The higher the number, the higher the priority.
// For more information, see Replication
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html) in the Amazon
- // Simple Storage Service Developer Guide.
+ // S3 User Guide.
Priority int32
// A container that describes additional filters for identifying the source objects
@@ -3049,7 +3065,7 @@ type TopicConfiguration struct {
// Specifies object key name filtering rules. For information about key name
// filtering, see Configuring Event Notifications
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the
- // Amazon Simple Storage Service Developer Guide.
+ // Amazon S3 User Guide.
Filter *NotificationConfigurationFilter
// An optional unique identifier for configurations in a notification
diff --git a/service/s3control/api_op_CreateAccessPoint.go b/service/s3control/api_op_CreateAccessPoint.go
index 27093b75431..79fa4e0c1e1 100644
--- a/service/s3control/api_op_CreateAccessPoint.go
+++ b/service/s3control/api_op_CreateAccessPoint.go
@@ -83,13 +83,7 @@ type CreateAccessPointInput struct {
// This member is required.
Name *string
- // The PublicAccessBlock configuration that you want to apply to this Amazon S3
- // account. You can enable the configuration options in any combination. For more
- // information about when Amazon S3 considers a bucket or object public, see The
- // Meaning of "Public"
- // (https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status)
- // in the Amazon Simple Storage Service Developer Guide. This is not supported for
- // Amazon S3 on Outposts.
+ // The PublicAccessBlock configuration that you want to apply to the access point.
PublicAccessBlockConfiguration *types.PublicAccessBlockConfiguration
// If you include this field, Amazon S3 restricts access to this access point to
diff --git a/service/s3control/api_op_ListStorageLensConfigurations.go b/service/s3control/api_op_ListStorageLensConfigurations.go
index 27b49c8f665..78bc5001aaa 100644
--- a/service/s3control/api_op_ListStorageLensConfigurations.go
+++ b/service/s3control/api_op_ListStorageLensConfigurations.go
@@ -177,6 +177,83 @@ func addEndpointPrefix_opListStorageLensConfigurationsMiddleware(stack *middlewa
return stack.Serialize.Insert(&endpointPrefix_opListStorageLensConfigurationsMiddleware{}, `OperationSerializer`, middleware.After)
}
+// ListStorageLensConfigurationsAPIClient is a client that implements the
+// ListStorageLensConfigurations operation.
+type ListStorageLensConfigurationsAPIClient interface {
+ ListStorageLensConfigurations(context.Context, *ListStorageLensConfigurationsInput, ...func(*Options)) (*ListStorageLensConfigurationsOutput, error)
+}
+
+var _ ListStorageLensConfigurationsAPIClient = (*Client)(nil)
+
+// ListStorageLensConfigurationsPaginatorOptions is the paginator options for
+// ListStorageLensConfigurations
+type ListStorageLensConfigurationsPaginatorOptions struct {
+ // 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
+}
+
+// ListStorageLensConfigurationsPaginator is a paginator for
+// ListStorageLensConfigurations
+type ListStorageLensConfigurationsPaginator struct {
+ options ListStorageLensConfigurationsPaginatorOptions
+ client ListStorageLensConfigurationsAPIClient
+ params *ListStorageLensConfigurationsInput
+ nextToken *string
+ firstPage bool
+}
+
+// NewListStorageLensConfigurationsPaginator returns a new
+// ListStorageLensConfigurationsPaginator
+func NewListStorageLensConfigurationsPaginator(client ListStorageLensConfigurationsAPIClient, params *ListStorageLensConfigurationsInput, optFns ...func(*ListStorageLensConfigurationsPaginatorOptions)) *ListStorageLensConfigurationsPaginator {
+ if params == nil {
+ params = &ListStorageLensConfigurationsInput{}
+ }
+
+ options := ListStorageLensConfigurationsPaginatorOptions{}
+
+ for _, fn := range optFns {
+ fn(&options)
+ }
+
+ return &ListStorageLensConfigurationsPaginator{
+ options: options,
+ client: client,
+ params: params,
+ firstPage: true,
+ }
+}
+
+// HasMorePages returns a boolean indicating whether more pages are available
+func (p *ListStorageLensConfigurationsPaginator) HasMorePages() bool {
+ return p.firstPage || p.nextToken != nil
+}
+
+// NextPage retrieves the next ListStorageLensConfigurations page.
+func (p *ListStorageLensConfigurationsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListStorageLensConfigurationsOutput, error) {
+ if !p.HasMorePages() {
+ return nil, fmt.Errorf("no more pages available")
+ }
+
+ params := *p.params
+ params.NextToken = p.nextToken
+
+ result, err := p.client.ListStorageLensConfigurations(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_opListStorageLensConfigurations(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
diff --git a/service/s3control/go.mod b/service/s3control/go.mod
index cdef3ac58f2..53cac6419ca 100644
--- a/service/s3control/go.mod
+++ b/service/s3control/go.mod
@@ -5,7 +5,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.2.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/s3control/go.sum b/service/s3control/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/s3control/go.sum
+++ b/service/s3control/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/s3control/internal/endpoints/s3/endpoints.go b/service/s3control/internal/endpoints/s3/endpoints.go
index 46150492cb1..633cfcbde91 100644
--- a/service/s3control/internal/endpoints/s3/endpoints.go
+++ b/service/s3control/internal/endpoints/s3/endpoints.go
@@ -63,6 +63,90 @@ var defaultPartitions = endpoints.Partitions{
RegionRegex: partitionRegexp.Aws,
IsRegionalized: true,
Endpoints: endpoints.Endpoints{
+ "accesspoint-af-south-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.af-south-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ap-east-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ap-east-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ap-northeast-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ap-northeast-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ap-northeast-2": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ap-northeast-2.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ap-northeast-3": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ap-northeast-3.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ap-south-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ap-south-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ap-southeast-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ap-southeast-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ap-southeast-2": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ap-southeast-2.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-ca-central-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.ca-central-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-eu-central-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.eu-central-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-eu-north-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.eu-north-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-eu-south-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.eu-south-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-eu-west-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.eu-west-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-eu-west-2": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.eu-west-2.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-eu-west-3": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.eu-west-3.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-me-south-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.me-south-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-sa-east-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.sa-east-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-us-east-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.us-east-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-us-east-2": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.us-east-2.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-us-west-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.us-west-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-us-west-2": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.us-west-2.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
"af-south-1": endpoints.Endpoint{},
"ap-east-1": endpoints.Endpoint{},
"ap-northeast-1": endpoints.Endpoint{
@@ -95,8 +179,28 @@ var defaultPartitions = endpoints.Partitions{
Hostname: "s3.eu-west-1.amazonaws.com",
SignatureVersions: []string{"s3", "s3v4"},
},
- "eu-west-2": endpoints.Endpoint{},
- "eu-west-3": endpoints.Endpoint{},
+ "eu-west-2": endpoints.Endpoint{},
+ "eu-west-3": endpoints.Endpoint{},
+ "fips-accesspoint-ca-central-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint-fips.ca-central-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "fips-accesspoint-us-east-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint-fips.us-east-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "fips-accesspoint-us-east-2": endpoints.Endpoint{
+ Hostname: "s3-accesspoint-fips.us-east-2.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "fips-accesspoint-us-west-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint-fips.us-west-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "fips-accesspoint-us-west-2": endpoints.Endpoint{
+ Hostname: "s3-accesspoint-fips.us-west-2.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
"me-south-1": endpoints.Endpoint{},
"s3-external-1": endpoints.Endpoint{
Hostname: "s3-external-1.amazonaws.com",
@@ -134,6 +238,14 @@ var defaultPartitions = endpoints.Partitions{
RegionRegex: partitionRegexp.AwsCn,
IsRegionalized: true,
Endpoints: endpoints.Endpoints{
+ "accesspoint-cn-north-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.cn-north-1.amazonaws.com.cn",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-cn-northwest-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.cn-northwest-1.amazonaws.com.cn",
+ SignatureVersions: []string{"s3v4"},
+ },
"cn-north-1": endpoints.Endpoint{},
"cn-northwest-1": endpoints.Endpoint{},
},
@@ -177,6 +289,22 @@ var defaultPartitions = endpoints.Partitions{
RegionRegex: partitionRegexp.AwsUsGov,
IsRegionalized: true,
Endpoints: endpoints.Endpoints{
+ "accesspoint-us-gov-east-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.us-gov-east-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "accesspoint-us-gov-west-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint.us-gov-west-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "fips-accesspoint-us-gov-east-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint-fips.us-gov-east-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
+ "fips-accesspoint-us-gov-west-1": endpoints.Endpoint{
+ Hostname: "s3-accesspoint-fips.us-gov-west-1.amazonaws.com",
+ SignatureVersions: []string{"s3v4"},
+ },
"fips-us-gov-west-1": endpoints.Endpoint{
Hostname: "s3-fips.us-gov-west-1.amazonaws.com",
CredentialScope: endpoints.CredentialScope{
diff --git a/service/s3control/types/types.go b/service/s3control/types/types.go
index ad2cbace035..dc516f5782d 100644
--- a/service/s3control/types/types.go
+++ b/service/s3control/types/types.go
@@ -573,7 +573,8 @@ func (*ObjectLambdaContentTransformationMemberAwsLambda) isObjectLambdaContentTr
// A configuration used when creating an Object Lambda Access Point transformation.
type ObjectLambdaTransformationConfiguration struct {
- // A container for the action of an Object Lambda Access Point configuration.
+ // A container for the action of an Object Lambda Access Point configuration. Valid
+ // input is GetObject.
//
// This member is required.
Actions []ObjectLambdaTransformationConfigurationAction
diff --git a/service/s3outposts/go.mod b/service/s3outposts/go.mod
index 3776f930cd8..0ee30387b8b 100644
--- a/service/s3outposts/go.mod
+++ b/service/s3outposts/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/s3outposts/go.sum b/service/s3outposts/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/s3outposts/go.sum
+++ b/service/s3outposts/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/sagemaker/api_op_CreateApp.go b/service/sagemaker/api_op_CreateApp.go
index 3a3950f26f5..7cbf5ce75cb 100644
--- a/service/sagemaker/api_op_CreateApp.go
+++ b/service/sagemaker/api_op_CreateApp.go
@@ -11,7 +11,7 @@ import (
smithyhttp "github.com/aws/smithy-go/transport/http"
)
-// Creates a running App for the specified UserProfile. Supported Apps are
+// Creates a running app for the specified UserProfile. Supported apps are
// JupyterServer and KernelGateway. This operation is automatically invoked by
// Amazon SageMaker Studio upon access to the associated Domain, and when new
// kernel configurations are selected by the user. A user may have multiple Apps
@@ -38,7 +38,8 @@ type CreateAppInput struct {
// This member is required.
AppName *string
- // The type of app.
+ // The type of app. Supported apps are JupyterServer and KernelGateway. TensorBoard
+ // is not supported.
//
// This member is required.
AppType types.AppType
diff --git a/service/sagemaker/api_op_CreateAutoMLJob.go b/service/sagemaker/api_op_CreateAutoMLJob.go
index 44faa4eef2b..76b03f1f12c 100644
--- a/service/sagemaker/api_op_CreateAutoMLJob.go
+++ b/service/sagemaker/api_op_CreateAutoMLJob.go
@@ -12,11 +12,8 @@ import (
)
// Creates an Autopilot job. Find the best performing model after you run an
-// Autopilot job by calling . Deploy that model by following the steps described in
-// Step 6.1: Deploy the Model to Amazon SageMaker Hosting Services
-// (https://docs.aws.amazon.com/sagemaker/latest/dg/ex1-deploy-model.html). For
-// information about how to use Autopilot, see Automate Model Development with
-// Amazon SageMaker Autopilot
+// Autopilot job by calling . For information about how to use Autopilot, see
+// Automate Model Development with Amazon SageMaker Autopilot
// (https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development.html).
func (c *Client) CreateAutoMLJob(ctx context.Context, params *CreateAutoMLJobInput, optFns ...func(*Options)) (*CreateAutoMLJobOutput, error) {
if params == nil {
@@ -35,19 +32,21 @@ func (c *Client) CreateAutoMLJob(ctx context.Context, params *CreateAutoMLJobInp
type CreateAutoMLJobInput struct {
- // Identifies an Autopilot job. Must be unique to your account and is
+ // Identifies an Autopilot job. The name must be unique to your account and is
// case-insensitive.
//
// This member is required.
AutoMLJobName *string
- // Similar to InputDataConfig supported by Tuning. Format(s) supported: CSV.
- // Minimum of 500 rows.
+ // An array of channel objects that describes the input data and its location. Each
+ // channel is a named input source. Similar to InputDataConfig supported by .
+ // Format(s) supported: CSV. Minimum of 500 rows.
//
// This member is required.
InputDataConfig []types.AutoMLChannel
- // Similar to OutputDataConfig supported by Tuning. Format(s) supported: CSV.
+ // Provides information about encryption and the Amazon S3 output path needed to
+ // store artifacts from an AutoML job. Format(s) supported: CSV.
//
// This member is required.
OutputDataConfig *types.AutoMLOutputDataConfig
@@ -57,21 +56,23 @@ type CreateAutoMLJobInput struct {
// This member is required.
RoleArn *string
- // Contains CompletionCriteria and SecurityConfig.
+ // Contains CompletionCriteria and SecurityConfig settings for the AutoML job.
AutoMLJobConfig *types.AutoMLJobConfig
- // Defines the objective of a an AutoML job. You provide a
- // AutoMLJobObjective$MetricName and Autopilot infers whether to minimize or
- // maximize it. If a metric is not specified, the most commonly used
- // ObjectiveMetric for problem type is automaically selected.
+ // Defines the objective metric used to measure the predictive quality of an AutoML
+ // job. You provide a AutoMLJobObjective$MetricName and Autopilot infers whether to
+ // minimize or maximize it.
AutoMLJobObjective *types.AutoMLJobObjective
- // Generates possible candidates without training a model. A candidate is a
+ // Generates possible candidates without training the models. A candidate is a
// combination of data preprocessors, algorithms, and algorithm parameter settings.
GenerateCandidateDefinitionsOnly bool
- // Defines the kind of preprocessing and algorithms intended for the candidates.
- // Options include: BinaryClassification, MulticlassClassification, and Regression.
+ // Defines the type of supervised learning available for the candidates. Options
+ // include: BinaryClassification, MulticlassClassification, and Regression. For
+ // more information, see Amazon SageMaker Autopilot problem types and algorithm
+ // support
+ // (https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-automate-model-development-problem-types.html).
ProblemType types.ProblemType
// Each tag consists of a key and an optional value. Tag keys must be unique per
@@ -81,7 +82,7 @@ type CreateAutoMLJobInput struct {
type CreateAutoMLJobOutput struct {
- // When a job is created, it is assigned a unique ARN.
+ // The unique ARN that is assigned to the AutoML job when it is created.
//
// This member is required.
AutoMLJobArn *string
diff --git a/service/sagemaker/api_op_CreateDomain.go b/service/sagemaker/api_op_CreateDomain.go
index 896b90eef88..9d00d555ca1 100644
--- a/service/sagemaker/api_op_CreateDomain.go
+++ b/service/sagemaker/api_op_CreateDomain.go
@@ -66,7 +66,11 @@ type CreateDomainInput struct {
// This member is required.
AuthMode types.AuthMode
- // The default user settings.
+ // The default settings to use to create a user profile when UserSettings isn't
+ // specified in the call to the CreateUserProfile API. SecurityGroups is aggregated
+ // when specified in both calls. For all other settings in UserSettings, the values
+ // specified in CreateUserProfile take precedence over those specified in
+ // CreateDomain.
//
// This member is required.
DefaultUserSettings *types.UserSettings
diff --git a/service/sagemaker/api_op_CreateTrainingJob.go b/service/sagemaker/api_op_CreateTrainingJob.go
index 6d386bcbea7..e3d2d7d2fd6 100644
--- a/service/sagemaker/api_op_CreateTrainingJob.go
+++ b/service/sagemaker/api_op_CreateTrainingJob.go
@@ -56,6 +56,9 @@ import (
// to specify how long you are willing to wait for a managed spot training job to
// complete.
//
+// * Environment - The environment variables to set in the Docker
+// container.
+//
// For more information about Amazon SageMaker, see How It Works
// (https://docs.aws.amazon.com/sagemaker/latest/dg/how-it-works.html).
func (c *Client) CreateTrainingJob(ctx context.Context, params *CreateTrainingJobInput, optFns ...func(*Options)) (*CreateTrainingJobOutput, error) {
@@ -173,6 +176,9 @@ type CreateTrainingJobInput struct {
// network access.
EnableNetworkIsolation bool
+ // The environment variables to set in the Docker container.
+ Environment map[string]string
+
// Associates a SageMaker job as a trial component with an experiment and trial.
// Specified when you call the following APIs:
//
diff --git a/service/sagemaker/api_op_DescribeAutoMLJob.go b/service/sagemaker/api_op_DescribeAutoMLJob.go
index b3740ffb638..4515e6a06c5 100644
--- a/service/sagemaker/api_op_DescribeAutoMLJob.go
+++ b/service/sagemaker/api_op_DescribeAutoMLJob.go
@@ -12,7 +12,7 @@ import (
"time"
)
-// Returns information about an Amazon SageMaker job.
+// Returns information about an Amazon SageMaker AutoML job.
func (c *Client) DescribeAutoMLJob(ctx context.Context, params *DescribeAutoMLJobInput, optFns ...func(*Options)) (*DescribeAutoMLJobOutput, error) {
if params == nil {
params = &DescribeAutoMLJobInput{}
@@ -30,7 +30,7 @@ func (c *Client) DescribeAutoMLJob(ctx context.Context, params *DescribeAutoMLJo
type DescribeAutoMLJobInput struct {
- // Request information about a job using that job's unique name.
+ // Requests information about an AutoML job using its unique name.
//
// This member is required.
AutoMLJobName *string
@@ -38,32 +38,32 @@ type DescribeAutoMLJobInput struct {
type DescribeAutoMLJobOutput struct {
- // Returns the job's ARN.
+ // Returns the ARN of the AutoML job.
//
// This member is required.
AutoMLJobArn *string
- // Returns the name of a job.
+ // Returns the name of the AutoML job.
//
// This member is required.
AutoMLJobName *string
- // Returns the job's AutoMLJobSecondaryStatus.
+ // Returns the secondary status of the AutoML job.
//
// This member is required.
AutoMLJobSecondaryStatus types.AutoMLJobSecondaryStatus
- // Returns the job's AutoMLJobStatus.
+ // Returns the status of the AutoML job's AutoMLJobStatus.
//
// This member is required.
AutoMLJobStatus types.AutoMLJobStatus
- // Returns the job's creation time.
+ // Returns the creation time of the AutoML job.
//
// This member is required.
CreationTime *time.Time
- // Returns the job's input data config.
+ // Returns the input data configuration for the AutoML job..
//
// This member is required.
InputDataConfig []types.AutoMLChannel
@@ -88,7 +88,7 @@ type DescribeAutoMLJobOutput struct {
// Returns information on the job's artifacts found in AutoMLJobArtifacts.
AutoMLJobArtifacts *types.AutoMLJobArtifacts
- // Returns the job's config.
+ // Returns the configuration for the AutoML job.
AutoMLJobConfig *types.AutoMLJobConfig
// Returns the job's objective.
@@ -97,7 +97,7 @@ type DescribeAutoMLJobOutput struct {
// Returns the job's BestCandidate.
BestCandidate *types.AutoMLCandidate
- // Returns the job's end time.
+ // Returns the end time of the AutoML job.
EndTime *time.Time
// Returns the job's FailureReason.
@@ -106,12 +106,15 @@ type DescribeAutoMLJobOutput struct {
// Returns the job's output from GenerateCandidateDefinitionsOnly.
GenerateCandidateDefinitionsOnly bool
+ // Returns a list of reasons for partial failures within an AutoML job.
+ PartialFailureReasons []types.AutoMLPartialFailureReason
+
// Returns the job's problem type.
ProblemType types.ProblemType
- // This contains ProblemType, AutoMLJobObjective and CompletionCriteria. They're
- // auto-inferred values, if not provided by you. If you do provide them, then
- // they'll be the same as provided.
+ // This contains ProblemType, AutoMLJobObjective and CompletionCriteria. If you do
+ // not provide these values, they are auto-inferred. If you do provide them, they
+ // are the values you provide.
ResolvedAttributes *types.ResolvedAttributes
// Metadata pertaining to the operation's result.
diff --git a/service/sagemaker/api_op_DescribeDomain.go b/service/sagemaker/api_op_DescribeDomain.go
index 565e2d6d730..7b80b20673a 100644
--- a/service/sagemaker/api_op_DescribeDomain.go
+++ b/service/sagemaker/api_op_DescribeDomain.go
@@ -54,8 +54,8 @@ type DescribeDomainOutput struct {
// The creation time.
CreationTime *time.Time
- // Settings which are applied to all UserProfiles in this domain, if settings are
- // not explicitly specified in a given UserProfile.
+ // Settings which are applied to UserProfiles in this domain if settings are not
+ // explicitly specified in a given UserProfile.
DefaultUserSettings *types.UserSettings
// The domain's Amazon Resource Name (ARN).
diff --git a/service/sagemaker/api_op_DescribeTrainingJob.go b/service/sagemaker/api_op_DescribeTrainingJob.go
index 9bfe67b7a64..98ec32fc670 100644
--- a/service/sagemaker/api_op_DescribeTrainingJob.go
+++ b/service/sagemaker/api_op_DescribeTrainingJob.go
@@ -217,6 +217,9 @@ type DescribeTrainingJobOutput struct {
// the specified VPC, but the training container does not have network access.
EnableNetworkIsolation bool
+ // The environment variables to set in the Docker container.
+ Environment map[string]string
+
// Associates a SageMaker job as a trial component with an experiment and trial.
// Specified when you call the following APIs:
//
diff --git a/service/sagemaker/api_op_ListCandidatesForAutoMLJob.go b/service/sagemaker/api_op_ListCandidatesForAutoMLJob.go
index 0c5840cdc43..e5477424ce3 100644
--- a/service/sagemaker/api_op_ListCandidatesForAutoMLJob.go
+++ b/service/sagemaker/api_op_ListCandidatesForAutoMLJob.go
@@ -12,7 +12,7 @@ import (
smithyhttp "github.com/aws/smithy-go/transport/http"
)
-// List the Candidates created for the job.
+// List the candidates created for the job.
func (c *Client) ListCandidatesForAutoMLJob(ctx context.Context, params *ListCandidatesForAutoMLJobInput, optFns ...func(*Options)) (*ListCandidatesForAutoMLJobOutput, error) {
if params == nil {
params = &ListCandidatesForAutoMLJobInput{}
@@ -30,15 +30,15 @@ func (c *Client) ListCandidatesForAutoMLJob(ctx context.Context, params *ListCan
type ListCandidatesForAutoMLJobInput struct {
- // List the Candidates created for the job by providing the job's name.
+ // List the candidates created for the job by providing the job's name.
//
// This member is required.
AutoMLJobName *string
- // List the Candidates for the job and filter by candidate name.
+ // List the candidates for the job and filter by candidate name.
CandidateNameEquals *string
- // List the job's Candidates up to a specified limit.
+ // List the job's candidates up to a specified limit.
MaxResults int32
// If the previous response was truncated, you receive this token. Use it in your
@@ -51,7 +51,7 @@ type ListCandidatesForAutoMLJobInput struct {
// The sort order for the results. The default is Ascending.
SortOrder types.AutoMLSortOrder
- // List the Candidates for the job and filter by status.
+ // List the candidates for the job and filter by status.
StatusEquals types.CandidateStatus
}
@@ -144,7 +144,7 @@ var _ ListCandidatesForAutoMLJobAPIClient = (*Client)(nil)
// ListCandidatesForAutoMLJobPaginatorOptions is the paginator options for
// ListCandidatesForAutoMLJob
type ListCandidatesForAutoMLJobPaginatorOptions struct {
- // List the job's Candidates up to a specified limit.
+ // List the job's candidates up to a specified limit.
Limit int32
// Set to true if pagination should stop if the service returns a pagination token
diff --git a/service/sagemaker/deserializers.go b/service/sagemaker/deserializers.go
index edc2f0d4ae1..f369824e45b 100644
--- a/service/sagemaker/deserializers.go
+++ b/service/sagemaker/deserializers.go
@@ -26767,6 +26767,11 @@ func awsAwsjson11_deserializeDocumentAutoMLCandidate(v **types.AutoMLCandidate,
sv.CandidateName = ptr.String(jtv)
}
+ case "CandidateProperties":
+ if err := awsAwsjson11_deserializeDocumentCandidateProperties(&sv.CandidateProperties, value); err != nil {
+ return err
+ }
+
case "CandidateStatus":
if value != nil {
jtv, ok := value.(string)
@@ -27501,6 +27506,11 @@ func awsAwsjson11_deserializeDocumentAutoMLJobSummary(v **types.AutoMLJobSummary
sv.LastModifiedTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
}
+ case "PartialFailureReasons":
+ if err := awsAwsjson11_deserializeDocumentAutoMLPartialFailureReasons(&sv.PartialFailureReasons, value); err != nil {
+ return err
+ }
+
default:
_, _ = key, value
@@ -27559,6 +27569,80 @@ func awsAwsjson11_deserializeDocumentAutoMLOutputDataConfig(v **types.AutoMLOutp
return nil
}
+func awsAwsjson11_deserializeDocumentAutoMLPartialFailureReason(v **types.AutoMLPartialFailureReason, 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.AutoMLPartialFailureReason
+ if *v == nil {
+ sv = &types.AutoMLPartialFailureReason{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "PartialFailureMessage":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected AutoMLFailureReason to be of type string, got %T instead", value)
+ }
+ sv.PartialFailureMessage = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentAutoMLPartialFailureReasons(v *[]types.AutoMLPartialFailureReason, 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.AutoMLPartialFailureReason
+ if *v == nil {
+ cv = []types.AutoMLPartialFailureReason{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.AutoMLPartialFailureReason
+ destAddr := &col
+ if err := awsAwsjson11_deserializeDocumentAutoMLPartialFailureReason(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
func awsAwsjson11_deserializeDocumentAutoMLS3DataSource(v **types.AutoMLS3DataSource, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -27836,6 +27920,82 @@ func awsAwsjson11_deserializeDocumentCacheHitResult(v **types.CacheHitResult, va
return nil
}
+func awsAwsjson11_deserializeDocumentCandidateArtifactLocations(v **types.CandidateArtifactLocations, 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.CandidateArtifactLocations
+ if *v == nil {
+ sv = &types.CandidateArtifactLocations{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Explainability":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ExplainabilityLocation to be of type string, got %T instead", value)
+ }
+ sv.Explainability = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentCandidateProperties(v **types.CandidateProperties, 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.CandidateProperties
+ if *v == nil {
+ sv = &types.CandidateProperties{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CandidateArtifactLocations":
+ if err := awsAwsjson11_deserializeDocumentCandidateArtifactLocations(&sv.CandidateArtifactLocations, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeDocumentCandidateSteps(v *[]types.AutoMLCandidateStep, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -35093,6 +35253,11 @@ func awsAwsjson11_deserializeDocumentImageConfig(v **types.ImageConfig, value in
sv.RepositoryAccessMode = types.RepositoryAccessMode(jtv)
}
+ case "RepositoryAuthConfig":
+ if err := awsAwsjson11_deserializeDocumentRepositoryAuthConfig(&sv.RepositoryAuthConfig, value); err != nil {
+ return err
+ }
+
default:
_, _ = key, value
@@ -44792,6 +44957,46 @@ func awsAwsjson11_deserializeDocumentRenderingErrorList(v *[]types.RenderingErro
return nil
}
+func awsAwsjson11_deserializeDocumentRepositoryAuthConfig(v **types.RepositoryAuthConfig, 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.RepositoryAuthConfig
+ if *v == nil {
+ sv = &types.RepositoryAuthConfig{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "RepositoryCredentialsProviderArn":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected RepositoryCredentialsProviderArn to be of type string, got %T instead", value)
+ }
+ sv.RepositoryCredentialsProviderArn = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeDocumentResolvedAttributes(v **types.ResolvedAttributes, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -46537,6 +46742,42 @@ func awsAwsjson11_deserializeDocumentTrafficRoutingConfig(v **types.TrafficRouti
return nil
}
+func awsAwsjson11_deserializeDocumentTrainingEnvironmentMap(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 TrainingEnvironmentValue to be of type string, got %T instead", value)
+ }
+ parsedVal = jtv
+ }
+ mv[key] = parsedVal
+
+ }
+ *v = mv
+ return nil
+}
+
func awsAwsjson11_deserializeDocumentTrainingInstanceTypes(v *[]types.TrainingInstanceType, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -46682,6 +46923,11 @@ func awsAwsjson11_deserializeDocumentTrainingJob(v **types.TrainingJob, value in
sv.EnableNetworkIsolation = jtv
}
+ case "Environment":
+ if err := awsAwsjson11_deserializeDocumentTrainingEnvironmentMap(&sv.Environment, value); err != nil {
+ return err
+ }
+
case "ExperimentConfig":
if err := awsAwsjson11_deserializeDocumentExperimentConfig(&sv.ExperimentConfig, value); err != nil {
return err
@@ -53269,6 +53515,11 @@ func awsAwsjson11_deserializeOpDocumentDescribeAutoMLJobOutput(v **DescribeAutoM
return err
}
+ case "PartialFailureReasons":
+ if err := awsAwsjson11_deserializeDocumentAutoMLPartialFailureReasons(&sv.PartialFailureReasons, value); err != nil {
+ return err
+ }
+
case "ProblemType":
if value != nil {
jtv, ok := value.(string)
@@ -57392,6 +57643,11 @@ func awsAwsjson11_deserializeOpDocumentDescribeTrainingJobOutput(v **DescribeTra
sv.EnableNetworkIsolation = jtv
}
+ case "Environment":
+ if err := awsAwsjson11_deserializeDocumentTrainingEnvironmentMap(&sv.Environment, value); err != nil {
+ return err
+ }
+
case "ExperimentConfig":
if err := awsAwsjson11_deserializeDocumentExperimentConfig(&sv.ExperimentConfig, value); err != nil {
return err
diff --git a/service/sagemaker/go.mod b/service/sagemaker/go.mod
index a97e52f6450..b923ab1675e 100644
--- a/service/sagemaker/go.mod
+++ b/service/sagemaker/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/sagemaker/go.sum b/service/sagemaker/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/sagemaker/go.sum
+++ b/service/sagemaker/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/sagemaker/serializers.go b/service/sagemaker/serializers.go
index 9cd2cc97ce7..4f59343615d 100644
--- a/service/sagemaker/serializers.go
+++ b/service/sagemaker/serializers.go
@@ -13261,6 +13261,13 @@ func awsAwsjson11_serializeDocumentImageConfig(v *types.ImageConfig, value smith
ok.String(string(v.RepositoryAccessMode))
}
+ if v.RepositoryAuthConfig != nil {
+ ok := object.Key("RepositoryAuthConfig")
+ if err := awsAwsjson11_serializeDocumentRepositoryAuthConfig(v.RepositoryAuthConfig, ok); err != nil {
+ return err
+ }
+ }
+
return nil
}
@@ -15600,6 +15607,18 @@ func awsAwsjson11_serializeDocumentRenderableTask(v *types.RenderableTask, value
return nil
}
+func awsAwsjson11_serializeDocumentRepositoryAuthConfig(v *types.RepositoryAuthConfig, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.RepositoryCredentialsProviderArn != nil {
+ ok := object.Key("RepositoryCredentialsProviderArn")
+ ok.String(*v.RepositoryCredentialsProviderArn)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeDocumentResourceConfig(v *types.ResourceConfig, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -16112,6 +16131,17 @@ func awsAwsjson11_serializeDocumentTrafficRoutingConfig(v *types.TrafficRoutingC
return nil
}
+func awsAwsjson11_serializeDocumentTrainingEnvironmentMap(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 awsAwsjson11_serializeDocumentTrainingInstanceTypes(v []types.TrainingInstanceType, value smithyjson.Value) error {
array := value.Array()
defer array.Close()
@@ -18491,6 +18521,13 @@ func awsAwsjson11_serializeOpDocumentCreateTrainingJobInput(v *CreateTrainingJob
ok.Boolean(v.EnableNetworkIsolation)
}
+ if v.Environment != nil {
+ ok := object.Key("Environment")
+ if err := awsAwsjson11_serializeDocumentTrainingEnvironmentMap(v.Environment, ok); err != nil {
+ return err
+ }
+ }
+
if v.ExperimentConfig != nil {
ok := object.Key("ExperimentConfig")
if err := awsAwsjson11_serializeDocumentExperimentConfig(v.ExperimentConfig, ok); err != nil {
diff --git a/service/sagemaker/types/enums.go b/service/sagemaker/types/enums.go
index 0329cdd19ac..525bfb91d12 100644
--- a/service/sagemaker/types/enums.go
+++ b/service/sagemaker/types/enums.go
@@ -392,16 +392,19 @@ type AutoMLJobSecondaryStatus string
// Enum values for AutoMLJobSecondaryStatus
const (
- AutoMLJobSecondaryStatusStarting AutoMLJobSecondaryStatus = "Starting"
- AutoMLJobSecondaryStatusAnalyzingData AutoMLJobSecondaryStatus = "AnalyzingData"
- AutoMLJobSecondaryStatusFeatureEngineering AutoMLJobSecondaryStatus = "FeatureEngineering"
- AutoMLJobSecondaryStatusModelTuning AutoMLJobSecondaryStatus = "ModelTuning"
- AutoMLJobSecondaryStatusMaxCandidatesReached AutoMLJobSecondaryStatus = "MaxCandidatesReached"
- AutoMLJobSecondaryStatusFailed AutoMLJobSecondaryStatus = "Failed"
- AutoMLJobSecondaryStatusStopped AutoMLJobSecondaryStatus = "Stopped"
- AutoMLJobSecondaryStatusMaxAutoMlJobRuntimeReached AutoMLJobSecondaryStatus = "MaxAutoMLJobRuntimeReached"
- AutoMLJobSecondaryStatusStopping AutoMLJobSecondaryStatus = "Stopping"
- AutoMLJobSecondaryStatusCandidateDefinitionsGenerated AutoMLJobSecondaryStatus = "CandidateDefinitionsGenerated"
+ AutoMLJobSecondaryStatusStarting AutoMLJobSecondaryStatus = "Starting"
+ AutoMLJobSecondaryStatusAnalyzingData AutoMLJobSecondaryStatus = "AnalyzingData"
+ AutoMLJobSecondaryStatusFeatureEngineering AutoMLJobSecondaryStatus = "FeatureEngineering"
+ AutoMLJobSecondaryStatusModelTuning AutoMLJobSecondaryStatus = "ModelTuning"
+ AutoMLJobSecondaryStatusMaxCandidatesReached AutoMLJobSecondaryStatus = "MaxCandidatesReached"
+ AutoMLJobSecondaryStatusFailed AutoMLJobSecondaryStatus = "Failed"
+ AutoMLJobSecondaryStatusStopped AutoMLJobSecondaryStatus = "Stopped"
+ AutoMLJobSecondaryStatusMaxAutoMlJobRuntimeReached AutoMLJobSecondaryStatus = "MaxAutoMLJobRuntimeReached"
+ AutoMLJobSecondaryStatusStopping AutoMLJobSecondaryStatus = "Stopping"
+ AutoMLJobSecondaryStatusCandidateDefinitionsGenerated AutoMLJobSecondaryStatus = "CandidateDefinitionsGenerated"
+ AutoMLJobSecondaryStatusGeneratingExplainabilityReport AutoMLJobSecondaryStatus = "GeneratingExplainabilityReport"
+ AutoMLJobSecondaryStatusCompleted AutoMLJobSecondaryStatus = "Completed"
+ AutoMLJobSecondaryStatusExplainabilityError AutoMLJobSecondaryStatus = "ExplainabilityError"
)
// Values returns all known values for AutoMLJobSecondaryStatus. Note that this can
@@ -419,6 +422,9 @@ func (AutoMLJobSecondaryStatus) Values() []AutoMLJobSecondaryStatus {
"MaxAutoMLJobRuntimeReached",
"Stopping",
"CandidateDefinitionsGenerated",
+ "GeneratingExplainabilityReport",
+ "Completed",
+ "ExplainabilityError",
}
}
diff --git a/service/sagemaker/types/types.go b/service/sagemaker/types/types.go
index a1120a2ef9b..8fce6e8c9ea 100644
--- a/service/sagemaker/types/types.go
+++ b/service/sagemaker/types/types.go
@@ -1371,6 +1371,9 @@ type AutoMLCandidate struct {
// This member is required.
ObjectiveStatus ObjectiveStatus
+ // The AutoML candidate's properties.
+ CandidateProperties *CandidateProperties
+
// The end time.
EndTime *time.Time
@@ -1403,16 +1406,17 @@ type AutoMLCandidateStep struct {
CandidateStepType CandidateStepType
}
-// Similar to Channel. A channel is a named input source that training algorithms
-// can consume. Refer to Channel for detailed descriptions.
+// A channel is a named input source that training algorithms can consume. For more
+// information, see .
type AutoMLChannel struct {
- // The data source.
+ // The data source for an AutoML channel.
//
// This member is required.
DataSource *AutoMLDataSource
- // The name of the target variable in supervised learning, a.k.a. 'y'.
+ // The name of the target variable in supervised learning, usually represented by
+ // 'y'.
//
// This member is required.
TargetAttributeName *string
@@ -1422,22 +1426,20 @@ type AutoMLChannel struct {
}
// A list of container definitions that describe the different containers that make
-// up one AutoML candidate. Refer to ContainerDefinition for more details.
+// up an AutoML candidate. For more information, see .
type AutoMLContainerDefinition struct {
- // The ECR path of the container. Refer to ContainerDefinition for more details.
+ // The ECR path of the container. For more information, see .
//
// This member is required.
Image *string
- // The location of the model artifacts. Refer to ContainerDefinition for more
- // details.
+ // The location of the model artifacts. For more information, see .
//
// This member is required.
ModelDataUrl *string
- // Environment variables to set in the container. Refer to ContainerDefinition for
- // more details.
+ // Environment variables to set in the container. For more information, see .
Environment map[string]string
}
@@ -1476,11 +1478,11 @@ type AutoMLJobCompletionCriteria struct {
MaxRuntimePerTrainingJobInSeconds *int32
}
-// A collection of settings used for a job.
+// A collection of settings used for an AutoML job.
type AutoMLJobConfig struct {
- // How long a job is allowed to run, or how many candidates a job is allowed to
- // generate.
+ // How long an AutoML job is allowed to run, or how many candidates a job is
+ // allowed to generate.
CompletionCriteria *AutoMLJobCompletionCriteria
// Security configuration for traffic encryption or Amazon VPC settings.
@@ -1562,35 +1564,35 @@ type AutoMLJobObjective struct {
MetricName AutoMLMetricEnum
}
-// Provides a summary about a job.
+// Provides a summary about an AutoML job.
type AutoMLJobSummary struct {
- // The ARN of the job.
+ // The ARN of the AutoML job.
//
// This member is required.
AutoMLJobArn *string
- // The name of the object you are requesting.
+ // The name of the AutoML you are requesting.
//
// This member is required.
AutoMLJobName *string
- // The job's secondary status.
+ // The secondary status of the AutoML job.
//
// This member is required.
AutoMLJobSecondaryStatus AutoMLJobSecondaryStatus
- // The job's status.
+ // The status of the AutoML job.
//
// This member is required.
AutoMLJobStatus AutoMLJobStatus
- // When the job was created.
+ // When the AutoML job was created.
//
// This member is required.
CreationTime *time.Time
- // When the job was last modified.
+ // When the AutoML job was last modified.
//
// This member is required.
LastModifiedTime *time.Time
@@ -1598,8 +1600,11 @@ type AutoMLJobSummary struct {
// The end time of an AutoML job.
EndTime *time.Time
- // The failure reason of a job.
+ // The failure reason of an AutoML job.
FailureReason *string
+
+ // The list of reasons for partial failures within an AutoML job.
+ PartialFailureReasons []AutoMLPartialFailureReason
}
// The output data configuration.
@@ -1614,6 +1619,13 @@ type AutoMLOutputDataConfig struct {
KmsKeyId *string
}
+// The reason for a partial failure of an AutoML job.
+type AutoMLPartialFailureReason struct {
+
+ // The message containing the reason for a partial failure of an AutoML job.
+ PartialFailureMessage *string
+}
+
// The Amazon S3 data source.
type AutoMLS3DataSource struct {
@@ -1677,6 +1689,23 @@ type CacheHitResult struct {
SourcePipelineExecutionArn *string
}
+// Location of artifacts for an AutoML candidate job.
+type CandidateArtifactLocations struct {
+
+ // The S3 prefix to the explainability artifacts generated for the AutoML
+ // candidate.
+ //
+ // This member is required.
+ Explainability *string
+}
+
+// The properties of an AutoML candidate job.
+type CandidateProperties struct {
+
+ // The S3 prefix to the artifacts generated for an AutoML candidate.
+ CandidateArtifactLocations *CandidateArtifactLocations
+}
+
// Currently, the CapacitySize API is not supported.
type CapacitySize struct {
@@ -5128,6 +5157,13 @@ type ImageConfig struct {
//
// This member is required.
RepositoryAccessMode RepositoryAccessMode
+
+ // (Optional) Specifies an authentication configuration for the private docker
+ // registry where your model image is hosted. Specify a value for this property
+ // only if you specified Vpc as the value for the RepositoryAccessMode field, and
+ // the private Docker registry where the model image is hosted requires
+ // authentication.
+ RepositoryAuthConfig *RepositoryAuthConfig
}
// A version of a SageMaker Image. A version represents an existing container
@@ -5620,7 +5656,9 @@ type LabelingJobDataSource struct {
// The Amazon S3 location of the input data objects.
S3DataSource *LabelingJobS3DataSource
- // An Amazon SNS data source used for streaming labeling jobs.
+ // An Amazon SNS data source used for streaming labeling jobs. To learn more, see
+ // Send Data to a Streaming Labeling Job
+ // (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-streaming-labeling-job.html#sms-streaming-how-it-works-send-data).
SnsDataSource *LabelingJobSnsDataSource
}
@@ -5687,42 +5725,47 @@ type LabelingJobOutputConfig struct {
S3OutputPath *string
// The AWS Key Management Service ID of the key used to encrypt the output data, if
- // any. If you use a KMS key ID or an alias of your master key, the Amazon
- // SageMaker execution role must include permissions to call kms:Encrypt. If you
- // don't provide a KMS key ID, Amazon SageMaker uses the default KMS key for Amazon
- // S3 for your role's account. Amazon SageMaker uses server-side encryption with
- // KMS-managed keys for LabelingJobOutputConfig. If you use a bucket policy with an
- // s3:PutObject permission that only allows objects with server-side encryption,
- // set the condition key of s3:x-amz-server-side-encryption to "aws:kms". For more
- // information, see KMS-Managed Encryption Keys
+ // any. If you provide your own KMS key ID, you must add the required permissions
+ // to your KMS key described in Encrypt Output Data and Storage Volume with AWS KMS
+ // (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-security-permission.html#sms-security-kms-permissions).
+ // If you don't provide a KMS key ID, Amazon SageMaker uses the default AWS KMS key
+ // for Amazon S3 for your role's account to encrypt your output data. If you use a
+ // bucket policy with an s3:PutObject permission that only allows objects with
+ // server-side encryption, set the condition key of s3:x-amz-server-side-encryption
+ // to "aws:kms". For more information, see KMS-Managed Encryption Keys
// (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html) in the
- // Amazon Simple Storage Service Developer Guide. The KMS key policy must grant
- // permission to the IAM role that you specify in your CreateLabelingJob request.
- // For more information, see Using Key Policies in AWS KMS
- // (http://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) in the
- // AWS Key Management Service Developer Guide.
+ // Amazon Simple Storage Service Developer Guide.
KmsKeyId *string
- // An Amazon Simple Notification Service (Amazon SNS) output topic ARN. When
- // workers complete labeling tasks, Ground Truth will send labeling task output
- // data to the SNS output topic you specify here. You must provide a value for this
- // parameter if you provide an Amazon SNS input topic in SnsDataSource in
- // InputConfig.
+ // An Amazon Simple Notification Service (Amazon SNS) output topic ARN. If you
+ // provide an SnsTopicArn in OutputConfig, when workers complete labeling tasks,
+ // Ground Truth will send labeling task output data to the SNS output topic you
+ // specify here. To learn more, see Receive Output Data from a Streaming Labeling
+ // Job
+ // (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-streaming-labeling-job.html#sms-streaming-how-it-works-output-data).
SnsTopicArn *string
}
-// Provides configuration information for labeling jobs.
+// Configure encryption on the storage volume attached to the ML compute instance
+// used to run automated data labeling model training and inference.
type LabelingJobResourceConfig struct {
// The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to
// encrypt data on the storage volume attached to the ML compute instance(s) that
- // run the training job. The VolumeKmsKeyId can be any of the following formats:
- //
- // *
- // // KMS Key ID "1234abcd-12ab-34cd-56ef-1234567890ab"
+ // run the training and inference jobs used for automated data labeling. You can
+ // only specify a VolumeKmsKeyId when you create a labeling job with automated data
+ // labeling enabled using the API operation CreateLabelingJob. You cannot specify
+ // an AWS KMS customer managed CMK to encrypt the storage volume used for automated
+ // data labeling model training and inference when you create a labeling job using
+ // the console. To learn more, see Output Data and Storage Volume Encryption
+ // (https://docs.aws.amazon.com/sagemaker/latest/dg/sms-security.html). The
+ // VolumeKmsKeyId can be any of the following formats:
+ //
+ // * KMS Key ID
+ // "1234abcd-12ab-34cd-56ef-1234567890ab"
//
- // * // Amazon Resource Name
- // (ARN) of a KMS Key
+ // * Amazon Resource Name (ARN) of a KMS
+ // Key
// "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
VolumeKmsKeyId *string
}
@@ -5757,8 +5800,6 @@ type LabelingJobSnsDataSource struct {
// The Amazon SNS input topic Amazon Resource Name (ARN). Specify the ARN of the
// input topic you will use to send new data objects to a streaming labeling job.
- // If you specify an input topic for SnsTopicArn in InputConfig, you must specify a
- // value for SnsTopicArn in OutputConfig.
//
// This member is required.
SnsTopicArn *string
@@ -7241,11 +7282,24 @@ type OutputConfig struct {
// accelerators and highly recommended for CPU compilations. For any other cases,
// it is optional to specify CompilerOptions.
//
- // * CPU: Compilation for CPU supports
- // the following compiler options.
+ // * DTYPE: Specifies the data type for
+ // the input. When compiling for ml_* (except for ml_inf) instances using PyTorch
+ // framework, provide the data type (dtype) of the model's input. "float32" is used
+ // if "DTYPE" is not specified. Options for data type are:
+ //
+ // * float32: Use either
+ // "float" or "float32".
+ //
+ // * int64: Use either "int64" or "long".
+ //
+ // For example,
+ // {"dtype" : "float32"}.
//
- // * mcpu: CPU micro-architecture. For example,
- // {'mcpu': 'skylake-avx512'}
+ // * CPU: Compilation for CPU supports the following
+ // compiler options.
+ //
+ // * mcpu: CPU micro-architecture. For example, {'mcpu':
+ // 'skylake-avx512'}
//
// * mattr: CPU flags. For example, {'mattr': ['+neon',
// '+vfpv4']}
@@ -8580,6 +8634,24 @@ type RenderingError struct {
Message *string
}
+// Specifies an authentication configuration for the private docker registry where
+// your model image is hosted. Specify a value for this property only if you
+// specified Vpc as the value for the RepositoryAccessMode field of the ImageConfig
+// object that you passed to a call to CreateModel and the private Docker registry
+// where the model image is hosted requires authentication.
+type RepositoryAuthConfig struct {
+
+ // The Amazon Resource Name (ARN) of an AWS Lambda function that provides
+ // credentials to authenticate to the private Docker registry where your model
+ // image is hosted. For information about how to create an AWS Lambda function, see
+ // Create a Lambda function with the console
+ // (https://docs.aws.amazon.com/lambda/latest/dg/getting-started-create-function.html)
+ // in the AWS Lambda Developer Guide.
+ //
+ // This member is required.
+ RepositoryCredentialsProviderArn *string
+}
+
// The resolved attributes.
type ResolvedAttributes struct {
@@ -9059,9 +9131,10 @@ type ServiceCatalogProvisioningDetails struct {
ProvisioningParameters []ProvisioningParameter
}
-// Specifies options when sharing an Amazon SageMaker Studio notebook. These
-// settings are specified as part of DefaultUserSettings when the CreateDomain API
-// is called, and as part of UserSettings when the CreateUserProfile API is called.
+// Specifies options for sharing SageMaker Studio notebooks. These settings are
+// specified as part of DefaultUserSettings when the CreateDomain API is called,
+// and as part of UserSettings when the CreateUserProfile API is called. When
+// SharingSettings is not specified, notebook sharing isn't allowed.
type SharingSettings struct {
// Whether to include the notebook cell output when sharing the notebook. The
@@ -9352,6 +9425,9 @@ type TrainingJob struct {
// in.
EnableNetworkIsolation bool
+ // The environment variables to set in the Docker container.
+ Environment map[string]string
+
// Associates a SageMaker job as a trial component with an experiment and trial.
// Specified when you call the following APIs:
//
@@ -10549,7 +10625,7 @@ type UserSettings struct {
// number shown.
SecurityGroups []string
- // The sharing settings.
+ // Specifies options for sharing SageMaker Studio notebooks.
SharingSettings *SharingSettings
// The TensorBoard app settings.
diff --git a/service/sagemaker/validators.go b/service/sagemaker/validators.go
index b796ab35094..c1cbeca531f 100644
--- a/service/sagemaker/validators.go
+++ b/service/sagemaker/validators.go
@@ -5922,6 +5922,11 @@ func validateImageConfig(v *types.ImageConfig) error {
if len(v.RepositoryAccessMode) == 0 {
invalidParams.Add(smithy.NewErrParamRequired("RepositoryAccessMode"))
}
+ if v.RepositoryAuthConfig != nil {
+ if err := validateRepositoryAuthConfig(v.RepositoryAuthConfig); err != nil {
+ invalidParams.AddNested("RepositoryAuthConfig", err.(smithy.InvalidParamsError))
+ }
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
@@ -7513,6 +7518,21 @@ func validateRenderableTask(v *types.RenderableTask) error {
}
}
+func validateRepositoryAuthConfig(v *types.RepositoryAuthConfig) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "RepositoryAuthConfig"}
+ if v.RepositoryCredentialsProviderArn == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("RepositoryCredentialsProviderArn"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateResourceConfig(v *types.ResourceConfig) error {
if v == nil {
return nil
diff --git a/service/sagemakera2iruntime/go.mod b/service/sagemakera2iruntime/go.mod
index 7d8f9328e49..e8a6324a2f6 100644
--- a/service/sagemakera2iruntime/go.mod
+++ b/service/sagemakera2iruntime/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/sagemakera2iruntime/go.sum b/service/sagemakera2iruntime/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/sagemakera2iruntime/go.sum
+++ b/service/sagemakera2iruntime/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/sagemakeredge/go.mod b/service/sagemakeredge/go.mod
index 69c3b356941..bd1206862d4 100644
--- a/service/sagemakeredge/go.mod
+++ b/service/sagemakeredge/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/sagemakeredge/go.sum b/service/sagemakeredge/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/sagemakeredge/go.sum
+++ b/service/sagemakeredge/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/sagemakerfeaturestoreruntime/go.mod b/service/sagemakerfeaturestoreruntime/go.mod
index 6c1196ee616..4b24403448b 100644
--- a/service/sagemakerfeaturestoreruntime/go.mod
+++ b/service/sagemakerfeaturestoreruntime/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/sagemakerfeaturestoreruntime/go.sum b/service/sagemakerfeaturestoreruntime/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/sagemakerfeaturestoreruntime/go.sum
+++ b/service/sagemakerfeaturestoreruntime/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/sagemakerruntime/go.mod b/service/sagemakerruntime/go.mod
index 188a30f5a56..5956b71d15d 100644
--- a/service/sagemakerruntime/go.mod
+++ b/service/sagemakerruntime/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/sagemakerruntime/go.sum b/service/sagemakerruntime/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/sagemakerruntime/go.sum
+++ b/service/sagemakerruntime/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/savingsplans/go.mod b/service/savingsplans/go.mod
index 3ddb1ee150e..10060eab41c 100644
--- a/service/savingsplans/go.mod
+++ b/service/savingsplans/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/savingsplans/go.sum b/service/savingsplans/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/savingsplans/go.sum
+++ b/service/savingsplans/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/schemas/go.mod b/service/schemas/go.mod
index e4cf181e595..6dffd75510f 100644
--- a/service/schemas/go.mod
+++ b/service/schemas/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/schemas/go.sum b/service/schemas/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/schemas/go.sum
+++ b/service/schemas/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/secretsmanager/go.mod b/service/secretsmanager/go.mod
index 98de210520e..a767bceb6d6 100644
--- a/service/secretsmanager/go.mod
+++ b/service/secretsmanager/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/secretsmanager/go.sum b/service/secretsmanager/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/secretsmanager/go.sum
+++ b/service/secretsmanager/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/securityhub/go.mod b/service/securityhub/go.mod
index 4eb551b81d7..61cb6fa028a 100644
--- a/service/securityhub/go.mod
+++ b/service/securityhub/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/securityhub/go.sum b/service/securityhub/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/securityhub/go.sum
+++ b/service/securityhub/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/securityhub/internal/endpoints/endpoints.go b/service/securityhub/internal/endpoints/endpoints.go
index d52fe974a75..deda44feb9f 100644
--- a/service/securityhub/internal/endpoints/endpoints.go
+++ b/service/securityhub/internal/endpoints/endpoints.go
@@ -67,6 +67,7 @@ var defaultPartitions = endpoints.Partitions{
"ap-east-1": endpoints.Endpoint{},
"ap-northeast-1": endpoints.Endpoint{},
"ap-northeast-2": endpoints.Endpoint{},
+ "ap-northeast-3": endpoints.Endpoint{},
"ap-south-1": endpoints.Endpoint{},
"ap-southeast-1": endpoints.Endpoint{},
"ap-southeast-2": endpoints.Endpoint{},
diff --git a/service/serverlessapplicationrepository/go.mod b/service/serverlessapplicationrepository/go.mod
index 7dd228b967e..a532ba4de38 100644
--- a/service/serverlessapplicationrepository/go.mod
+++ b/service/serverlessapplicationrepository/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/serverlessapplicationrepository/go.sum b/service/serverlessapplicationrepository/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/serverlessapplicationrepository/go.sum
+++ b/service/serverlessapplicationrepository/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/servicecatalog/go.mod b/service/servicecatalog/go.mod
index cb6b66efd3e..fe124618e18 100644
--- a/service/servicecatalog/go.mod
+++ b/service/servicecatalog/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/servicecatalog/go.sum b/service/servicecatalog/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/servicecatalog/go.sum
+++ b/service/servicecatalog/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/servicecatalogappregistry/go.mod b/service/servicecatalogappregistry/go.mod
index 5a3f4856a08..66d5cd8fe5c 100644
--- a/service/servicecatalogappregistry/go.mod
+++ b/service/servicecatalogappregistry/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/servicecatalogappregistry/go.sum b/service/servicecatalogappregistry/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/servicecatalogappregistry/go.sum
+++ b/service/servicecatalogappregistry/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/servicediscovery/go.mod b/service/servicediscovery/go.mod
index 06443acd2d5..73269c6cf3b 100644
--- a/service/servicediscovery/go.mod
+++ b/service/servicediscovery/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/servicediscovery/go.sum b/service/servicediscovery/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/servicediscovery/go.sum
+++ b/service/servicediscovery/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/servicequotas/go.mod b/service/servicequotas/go.mod
index 44c22e30d68..353758c2cb9 100644
--- a/service/servicequotas/go.mod
+++ b/service/servicequotas/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/servicequotas/go.sum b/service/servicequotas/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/servicequotas/go.sum
+++ b/service/servicequotas/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/servicequotas/internal/endpoints/endpoints.go b/service/servicequotas/internal/endpoints/endpoints.go
index 2dfbcbff0af..ab3e54a0ba8 100644
--- a/service/servicequotas/internal/endpoints/endpoints.go
+++ b/service/servicequotas/internal/endpoints/endpoints.go
@@ -125,5 +125,9 @@ var defaultPartitions = endpoints.Partitions{
},
RegionRegex: partitionRegexp.AwsUsGov,
IsRegionalized: true,
+ Endpoints: endpoints.Endpoints{
+ "us-gov-east-1": endpoints.Endpoint{},
+ "us-gov-west-1": endpoints.Endpoint{},
+ },
},
}
diff --git a/service/ses/go.mod b/service/ses/go.mod
index e1217196931..42345f5a89d 100644
--- a/service/ses/go.mod
+++ b/service/ses/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/ses/go.sum b/service/ses/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/ses/go.sum
+++ b/service/ses/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/sesv2/go.mod b/service/sesv2/go.mod
index b513965964b..d79ff03f011 100644
--- a/service/sesv2/go.mod
+++ b/service/sesv2/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/sesv2/go.sum b/service/sesv2/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/sesv2/go.sum
+++ b/service/sesv2/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/sfn/go.mod b/service/sfn/go.mod
index 2f9eafa9c0e..f6a3f551919 100644
--- a/service/sfn/go.mod
+++ b/service/sfn/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/sfn/go.sum b/service/sfn/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/sfn/go.sum
+++ b/service/sfn/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/shield/go.mod b/service/shield/go.mod
index 7682aa071ad..1d1ed4f3dd4 100644
--- a/service/shield/go.mod
+++ b/service/shield/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/shield/go.sum b/service/shield/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/shield/go.sum
+++ b/service/shield/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/signer/go.mod b/service/signer/go.mod
index 203e939512c..2fbd005e4d1 100644
--- a/service/signer/go.mod
+++ b/service/signer/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/signer/go.sum b/service/signer/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/signer/go.sum
+++ b/service/signer/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/sms/go.mod b/service/sms/go.mod
index dfbe475d2b6..5c23787578c 100644
--- a/service/sms/go.mod
+++ b/service/sms/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/sms/go.sum b/service/sms/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/sms/go.sum
+++ b/service/sms/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/snowball/go.mod b/service/snowball/go.mod
index 7a39bc74416..41ddb5dde61 100644
--- a/service/snowball/go.mod
+++ b/service/snowball/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/snowball/go.sum b/service/snowball/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/snowball/go.sum
+++ b/service/snowball/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/sns/go.mod b/service/sns/go.mod
index de74509f2f5..1fa289dd061 100644
--- a/service/sns/go.mod
+++ b/service/sns/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/sns/go.sum b/service/sns/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/sns/go.sum
+++ b/service/sns/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/sqs/api_op_SendMessage.go b/service/sqs/api_op_SendMessage.go
index 7d0ef7c23ba..93a2c3a13f0 100644
--- a/service/sqs/api_op_SendMessage.go
+++ b/service/sqs/api_op_SendMessage.go
@@ -163,7 +163,7 @@ type SendMessageOutput struct {
// MD5, see RFC1321 (https://www.ietf.org/rfc/rfc1321.txt).
MD5OfMessageAttributes *string
- // An MD5 digest of the non-URL-encoded message attribute string. You can use this
+ // An MD5 digest of the non-URL-encoded message body string. You can use this
// attribute to verify that Amazon SQS received the message correctly. Amazon SQS
// URL-decodes the message before creating the MD5 digest. For information about
// MD5, see RFC1321 (https://www.ietf.org/rfc/rfc1321.txt).
diff --git a/service/sqs/doc.go b/service/sqs/doc.go
index 73e5e286415..b3fd42633b1 100644
--- a/service/sqs/doc.go
+++ b/service/sqs/doc.go
@@ -22,7 +22,7 @@
//
// * Handle error responses
//
-// Additional Information
+// Additional information
//
// * Amazon SQS Product
// Page (http://aws.amazon.com/sqs/)
diff --git a/service/sqs/go.mod b/service/sqs/go.mod
index 944fcaa1e42..3df8b2a64e2 100644
--- a/service/sqs/go.mod
+++ b/service/sqs/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/sqs/go.sum b/service/sqs/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/sqs/go.sum
+++ b/service/sqs/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/sqs/types/types.go b/service/sqs/types/types.go
index fdac9223f24..84bc5c702b6 100644
--- a/service/sqs/types/types.go
+++ b/service/sqs/types/types.go
@@ -336,7 +336,7 @@ type SendMessageBatchResultEntry struct {
// This member is required.
Id *string
- // An MD5 digest of the non-URL-encoded message attribute string. You can use this
+ // An MD5 digest of the non-URL-encoded message body string. You can use this
// attribute to verify that Amazon SQS received the message correctly. Amazon SQS
// URL-decodes the message before creating the MD5 digest. For information about
// MD5, see RFC1321 (https://www.ietf.org/rfc/rfc1321.txt).
diff --git a/service/ssm/api_op_CreateActivation.go b/service/ssm/api_op_CreateActivation.go
index 66cecca054f..1112893563b 100644
--- a/service/ssm/api_op_CreateActivation.go
+++ b/service/ssm/api_op_CreateActivation.go
@@ -60,7 +60,9 @@ type CreateActivationInput struct {
// Systems Manager. Do not enter personally identifiable information in this field.
Description *string
- // The date by which this activation request should expire. The default value is 24
+ // The date by which this activation request should expire, in timestamp format,
+ // such as "2021-07-07T00:00:00". You can specify a date up to 30 days in advance.
+ // If you don't provide an expiration date, the activation code expires in 24
// hours.
ExpirationDate *time.Time
diff --git a/service/ssm/deserializers.go b/service/ssm/deserializers.go
index 3e433b7b539..79b137204bc 100644
--- a/service/ssm/deserializers.go
+++ b/service/ssm/deserializers.go
@@ -36422,6 +36422,15 @@ func awsAwsjson11_deserializeDocumentResourceDataSyncSourceWithState(v **types.R
return err
}
+ case "EnableAllOpsDataSources":
+ if value != nil {
+ jtv, ok := value.(bool)
+ if !ok {
+ return fmt.Errorf("expected ResourceDataSyncEnableAllOpsDataSources to be of type *bool, got %T instead", value)
+ }
+ sv.EnableAllOpsDataSources = jtv
+ }
+
case "IncludeFutureRegions":
if value != nil {
jtv, ok := value.(bool)
diff --git a/service/ssm/go.mod b/service/ssm/go.mod
index 56c4ffac0aa..91ff55cc1d4 100644
--- a/service/ssm/go.mod
+++ b/service/ssm/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
github.com/jmespath/go-jmespath v0.4.0
)
diff --git a/service/ssm/go.sum b/service/ssm/go.sum
index e0f47cdbd8d..73b87070e4c 100644
--- a/service/ssm/go.sum
+++ b/service/ssm/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
diff --git a/service/ssm/serializers.go b/service/ssm/serializers.go
index 8c79cc9f226..7777573dc03 100644
--- a/service/ssm/serializers.go
+++ b/service/ssm/serializers.go
@@ -8556,6 +8556,11 @@ func awsAwsjson11_serializeDocumentResourceDataSyncSource(v *types.ResourceDataS
}
}
+ if v.EnableAllOpsDataSources {
+ ok := object.Key("EnableAllOpsDataSources")
+ ok.Boolean(v.EnableAllOpsDataSources)
+ }
+
if v.IncludeFutureRegions {
ok := object.Key("IncludeFutureRegions")
ok.Boolean(v.IncludeFutureRegions)
diff --git a/service/ssm/types/types.go b/service/ssm/types/types.go
index 57523e75e42..243acc20122 100644
--- a/service/ssm/types/types.go
+++ b/service/ssm/types/types.go
@@ -3921,6 +3921,15 @@ type ResourceDataSyncSource struct {
// source of this type can synchronize data from AWS Organizations.
AwsOrganizationsSource *ResourceDataSyncAwsOrganizationsSource
+ // When you create a resource data sync, if you choose one of the AWS Organizations
+ // options, then Systems Manager automatically enables all OpsData sources in the
+ // selected AWS Regions for all AWS accounts in your organization (or in the
+ // selected organization units). For more information, see About multiple account
+ // and Region resource data syncs
+ // (https://docs.aws.amazon.com/systems-manager/latest/userguide/Explorer-resouce-data-sync-multiple-accounts-and-regions.html)
+ // in the AWS Systems Manager User Guide.
+ EnableAllOpsDataSources bool
+
// Whether to automatically synchronize and aggregate data from new AWS Regions
// when those Regions come online.
IncludeFutureRegions bool
@@ -3939,6 +3948,15 @@ type ResourceDataSyncSourceWithState struct {
// type.
AwsOrganizationsSource *ResourceDataSyncAwsOrganizationsSource
+ // When you create a resource data sync, if you choose one of the AWS Organizations
+ // options, then Systems Manager automatically enables all OpsData sources in the
+ // selected AWS Regions for all AWS accounts in your organization (or in the
+ // selected organization units). For more information, see About multiple account
+ // and Region resource data syncs
+ // (https://docs.aws.amazon.com/systems-manager/latest/userguide/Explorer-resouce-data-sync-multiple-accounts-and-regions.html)
+ // in the AWS Systems Manager User Guide.
+ EnableAllOpsDataSources bool
+
// Whether to automatically synchronize and aggregate data from new AWS Regions
// when those Regions come online.
IncludeFutureRegions bool
@@ -4416,7 +4434,9 @@ type Target struct {
// User-defined criteria that maps to Key. For example, if you specified
// tag:ServerRole, you could specify value:WebServer to run a command on instances
- // that include EC2 tags of ServerRole,WebServer.
+ // that include EC2 tags of ServerRole,WebServer. Depending on the type of Target,
+ // the maximum number of values for a Key might be lower than the global maximum of
+ // 50.
Values []string
}
diff --git a/service/sso/go.mod b/service/sso/go.mod
index 7066272c7af..f04a26d5edc 100644
--- a/service/sso/go.mod
+++ b/service/sso/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/sso/go.sum b/service/sso/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/sso/go.sum
+++ b/service/sso/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/ssoadmin/go.mod b/service/ssoadmin/go.mod
index 9808b9e7496..e88b91196c0 100644
--- a/service/ssoadmin/go.mod
+++ b/service/ssoadmin/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/ssoadmin/go.sum b/service/ssoadmin/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/ssoadmin/go.sum
+++ b/service/ssoadmin/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/ssooidc/go.mod b/service/ssooidc/go.mod
index 8f798d786c2..8db9f460300 100644
--- a/service/ssooidc/go.mod
+++ b/service/ssooidc/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/ssooidc/go.sum b/service/ssooidc/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/ssooidc/go.sum
+++ b/service/ssooidc/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/storagegateway/go.mod b/service/storagegateway/go.mod
index b1d80d1c2cf..c1ea072e580 100644
--- a/service/storagegateway/go.mod
+++ b/service/storagegateway/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/storagegateway/go.sum b/service/storagegateway/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/storagegateway/go.sum
+++ b/service/storagegateway/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/sts/go.mod b/service/sts/go.mod
index b4134031b07..ee96faf6a42 100644
--- a/service/sts/go.mod
+++ b/service/sts/go.mod
@@ -5,7 +5,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.0.4
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/sts/go.sum b/service/sts/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/sts/go.sum
+++ b/service/sts/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/support/go.mod b/service/support/go.mod
index 87debd7eaf8..ca649bcc7e4 100644
--- a/service/support/go.mod
+++ b/service/support/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/support/go.sum b/service/support/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/support/go.sum
+++ b/service/support/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/swf/go.mod b/service/swf/go.mod
index 2ad78167ebb..5bbef5ae18a 100644
--- a/service/swf/go.mod
+++ b/service/swf/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/swf/go.sum b/service/swf/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/swf/go.sum
+++ b/service/swf/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/synthetics/go.mod b/service/synthetics/go.mod
index f128d27042b..7429c29623a 100644
--- a/service/synthetics/go.mod
+++ b/service/synthetics/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/synthetics/go.sum b/service/synthetics/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/synthetics/go.sum
+++ b/service/synthetics/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/textract/go.mod b/service/textract/go.mod
index 9c7229631ea..b9452123948 100644
--- a/service/textract/go.mod
+++ b/service/textract/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/textract/go.sum b/service/textract/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/textract/go.sum
+++ b/service/textract/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/timestreamquery/go.mod b/service/timestreamquery/go.mod
index 1d3f7a6d3ca..29dca9697c7 100644
--- a/service/timestreamquery/go.mod
+++ b/service/timestreamquery/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/timestreamquery/go.sum b/service/timestreamquery/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/timestreamquery/go.sum
+++ b/service/timestreamquery/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/timestreamwrite/go.mod b/service/timestreamwrite/go.mod
index 4cd7194e61b..46852eddbdf 100644
--- a/service/timestreamwrite/go.mod
+++ b/service/timestreamwrite/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/timestreamwrite/go.sum b/service/timestreamwrite/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/timestreamwrite/go.sum
+++ b/service/timestreamwrite/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/transcribe/go.mod b/service/transcribe/go.mod
index 71e1d9f8929..30980cdcb5e 100644
--- a/service/transcribe/go.mod
+++ b/service/transcribe/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/transcribe/go.sum b/service/transcribe/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/transcribe/go.sum
+++ b/service/transcribe/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/transcribe/types/enums.go b/service/transcribe/types/enums.go
index 7f67733e72f..f32c7aeeeec 100644
--- a/service/transcribe/types/enums.go
+++ b/service/transcribe/types/enums.go
@@ -25,6 +25,10 @@ type CLMLanguageCode string
// Enum values for CLMLanguageCode
const (
CLMLanguageCodeEnUs CLMLanguageCode = "en-US"
+ CLMLanguageCodeHiIn CLMLanguageCode = "hi-IN"
+ CLMLanguageCodeEsUs CLMLanguageCode = "es-US"
+ CLMLanguageCodeEnGb CLMLanguageCode = "en-GB"
+ CLMLanguageCodeEnAu CLMLanguageCode = "en-AU"
)
// Values returns all known values for CLMLanguageCode. Note that this can be
@@ -33,6 +37,10 @@ const (
func (CLMLanguageCode) Values() []CLMLanguageCode {
return []CLMLanguageCode{
"en-US",
+ "hi-IN",
+ "es-US",
+ "en-GB",
+ "en-AU",
}
}
@@ -284,6 +292,7 @@ type VocabularyFilterMethod string
const (
VocabularyFilterMethodRemove VocabularyFilterMethod = "remove"
VocabularyFilterMethodMask VocabularyFilterMethod = "mask"
+ VocabularyFilterMethodTag VocabularyFilterMethod = "tag"
)
// Values returns all known values for VocabularyFilterMethod. Note that this can
@@ -293,6 +302,7 @@ func (VocabularyFilterMethod) Values() []VocabularyFilterMethod {
return []VocabularyFilterMethod{
"remove",
"mask",
+ "tag",
}
}
diff --git a/service/transcribe/types/types.go b/service/transcribe/types/types.go
index 63b0d9b2edb..512738ca099 100644
--- a/service/transcribe/types/types.go
+++ b/service/transcribe/types/types.go
@@ -343,7 +343,10 @@ type Settings struct {
// Set to mask to remove filtered text from the transcript and replace it with
// three asterisks ("***") as placeholder text. Set to remove to remove filtered
- // text from the transcript without using placeholder text.
+ // text from the transcript without using placeholder text. Set to tag to mark the
+ // word in the transcription output that matches the vocabulary filter. When you
+ // set the filter method to tag, the words matching your vocabulary filter are not
+ // masked or removed.
VocabularyFilterMethod VocabularyFilterMethod
// The name of the vocabulary filter to use when transcribing the audio. The filter
diff --git a/service/transfer/go.mod b/service/transfer/go.mod
index 2d0681f77d6..b47c9efb450 100644
--- a/service/transfer/go.mod
+++ b/service/transfer/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/transfer/go.sum b/service/transfer/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/transfer/go.sum
+++ b/service/transfer/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/translate/go.mod b/service/translate/go.mod
index 740be6205e1..b7fa49b1d8c 100644
--- a/service/translate/go.mod
+++ b/service/translate/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/translate/go.sum b/service/translate/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/translate/go.sum
+++ b/service/translate/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/waf/go.mod b/service/waf/go.mod
index 9d57d74f75a..7ce1b0d1429 100644
--- a/service/waf/go.mod
+++ b/service/waf/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/waf/go.sum b/service/waf/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/waf/go.sum
+++ b/service/waf/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/wafregional/go.mod b/service/wafregional/go.mod
index 033e1eca172..aef680b991a 100644
--- a/service/wafregional/go.mod
+++ b/service/wafregional/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/wafregional/go.sum b/service/wafregional/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/wafregional/go.sum
+++ b/service/wafregional/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/wafv2/api_op_CreateRuleGroup.go b/service/wafv2/api_op_CreateRuleGroup.go
index a2f4c04d2b7..418a300a09a 100644
--- a/service/wafv2/api_op_CreateRuleGroup.go
+++ b/service/wafv2/api_op_CreateRuleGroup.go
@@ -74,6 +74,21 @@ type CreateRuleGroupInput struct {
// This member is required.
VisibilityConfig *types.VisibilityConfig
+ // A map of custom response keys and content bodies. When you create a rule with a
+ // block action, you can send a custom response to the web request. You define
+ // these for the rule group, and then use them in the rules that you define in the
+ // rule group. For information about customizing web requests and responses, see
+ // Customizing web requests and responses in AWS WAF
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html)
+ // in the AWS WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). For
+ // information about the limits on count and size for custom request and response
+ // settings, see AWS WAF quotas
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) in the AWS
+ // WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
+ CustomResponseBodies map[string]types.CustomResponseBody
+
// A description of the rule group that helps with identification.
Description *string
diff --git a/service/wafv2/api_op_CreateWebACL.go b/service/wafv2/api_op_CreateWebACL.go
index 1fbe2874372..ebd4b5c1eb4 100644
--- a/service/wafv2/api_op_CreateWebACL.go
+++ b/service/wafv2/api_op_CreateWebACL.go
@@ -68,6 +68,21 @@ type CreateWebACLInput struct {
// This member is required.
VisibilityConfig *types.VisibilityConfig
+ // A map of custom response keys and content bodies. When you create a rule with a
+ // block action, you can send a custom response to the web request. You define
+ // these for the web ACL, and then use them in the rules and default actions that
+ // you define in the web ACL. For information about customizing web requests and
+ // responses, see Customizing web requests and responses in AWS WAF
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html)
+ // in the AWS WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). For
+ // information about the limits on count and size for custom request and response
+ // settings, see AWS WAF quotas
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) in the AWS
+ // WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
+ CustomResponseBodies map[string]types.CustomResponseBody
+
// A description of the Web ACL that helps with identification.
Description *string
diff --git a/service/wafv2/api_op_UpdateIPSet.go b/service/wafv2/api_op_UpdateIPSet.go
index f3f5f41a7b3..c8e6688e8f1 100644
--- a/service/wafv2/api_op_UpdateIPSet.go
+++ b/service/wafv2/api_op_UpdateIPSet.go
@@ -11,11 +11,7 @@ import (
smithyhttp "github.com/aws/smithy-go/transport/http"
)
-// Updates the specified IPSet. This operation completely replaces any IP address
-// specifications that you already have in the IP set with the ones that you
-// provide to this call. If you want to add to or modify the addresses that are
-// already in the IP set, retrieve those by calling GetIPSet, update them, and
-// provide the complete updated array of IP addresses to this call.
+// Updates the specified IPSet.
func (c *Client) UpdateIPSet(ctx context.Context, params *UpdateIPSetInput, optFns ...func(*Options)) (*UpdateIPSetOutput, error) {
if params == nil {
params = &UpdateIPSetInput{}
diff --git a/service/wafv2/api_op_UpdateRuleGroup.go b/service/wafv2/api_op_UpdateRuleGroup.go
index 1c5284c993e..508b2136141 100644
--- a/service/wafv2/api_op_UpdateRuleGroup.go
+++ b/service/wafv2/api_op_UpdateRuleGroup.go
@@ -76,6 +76,21 @@ type UpdateRuleGroupInput struct {
// This member is required.
VisibilityConfig *types.VisibilityConfig
+ // A map of custom response keys and content bodies. When you create a rule with a
+ // block action, you can send a custom response to the web request. You define
+ // these for the rule group, and then use them in the rules that you define in the
+ // rule group. For information about customizing web requests and responses, see
+ // Customizing web requests and responses in AWS WAF
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html)
+ // in the AWS WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). For
+ // information about the limits on count and size for custom request and response
+ // settings, see AWS WAF quotas
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) in the AWS
+ // WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
+ CustomResponseBodies map[string]types.CustomResponseBody
+
// A description of the rule group that helps with identification.
Description *string
diff --git a/service/wafv2/api_op_UpdateWebACL.go b/service/wafv2/api_op_UpdateWebACL.go
index 858df95f811..7b902b4c623 100644
--- a/service/wafv2/api_op_UpdateWebACL.go
+++ b/service/wafv2/api_op_UpdateWebACL.go
@@ -85,6 +85,21 @@ type UpdateWebACLInput struct {
// This member is required.
VisibilityConfig *types.VisibilityConfig
+ // A map of custom response keys and content bodies. When you create a rule with a
+ // block action, you can send a custom response to the web request. You define
+ // these for the web ACL, and then use them in the rules and default actions that
+ // you define in the web ACL. For information about customizing web requests and
+ // responses, see Customizing web requests and responses in AWS WAF
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html)
+ // in the AWS WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). For
+ // information about the limits on count and size for custom request and response
+ // settings, see AWS WAF quotas
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) in the AWS
+ // WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
+ CustomResponseBodies map[string]types.CustomResponseBody
+
// A description of the Web ACL that helps with identification.
Description *string
diff --git a/service/wafv2/deserializers.go b/service/wafv2/deserializers.go
index 75b5f4314e1..89bd41849bb 100644
--- a/service/wafv2/deserializers.go
+++ b/service/wafv2/deserializers.go
@@ -5593,6 +5593,11 @@ func awsAwsjson11_deserializeDocumentAllowAction(v **types.AllowAction, value in
for key, value := range shape {
switch key {
+ case "CustomRequestHandling":
+ if err := awsAwsjson11_deserializeDocumentCustomRequestHandling(&sv.CustomRequestHandling, value); err != nil {
+ return err
+ }
+
default:
_, _ = key, value
@@ -5691,6 +5696,11 @@ func awsAwsjson11_deserializeDocumentBlockAction(v **types.BlockAction, value in
for key, value := range shape {
switch key {
+ case "CustomResponse":
+ if err := awsAwsjson11_deserializeDocumentCustomResponse(&sv.CustomResponse, value); err != nil {
+ return err
+ }
+
default:
_, _ = key, value
@@ -5816,6 +5826,11 @@ func awsAwsjson11_deserializeDocumentCountAction(v **types.CountAction, value in
for key, value := range shape {
switch key {
+ case "CustomRequestHandling":
+ if err := awsAwsjson11_deserializeDocumentCustomRequestHandling(&sv.CustomRequestHandling, value); err != nil {
+ return err
+ }
+
default:
_, _ = key, value
@@ -5861,6 +5876,267 @@ func awsAwsjson11_deserializeDocumentCountryCodes(v *[]types.CountryCode, value
return nil
}
+func awsAwsjson11_deserializeDocumentCustomHTTPHeader(v **types.CustomHTTPHeader, 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.CustomHTTPHeader
+ if *v == nil {
+ sv = &types.CustomHTTPHeader{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Name":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected CustomHTTPHeaderName to be of type string, got %T instead", value)
+ }
+ sv.Name = ptr.String(jtv)
+ }
+
+ case "Value":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected CustomHTTPHeaderValue to be of type string, got %T instead", value)
+ }
+ sv.Value = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentCustomHTTPHeaders(v *[]types.CustomHTTPHeader, 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.CustomHTTPHeader
+ if *v == nil {
+ cv = []types.CustomHTTPHeader{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.CustomHTTPHeader
+ destAddr := &col
+ if err := awsAwsjson11_deserializeDocumentCustomHTTPHeader(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentCustomRequestHandling(v **types.CustomRequestHandling, 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.CustomRequestHandling
+ if *v == nil {
+ sv = &types.CustomRequestHandling{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "InsertHeaders":
+ if err := awsAwsjson11_deserializeDocumentCustomHTTPHeaders(&sv.InsertHeaders, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentCustomResponse(v **types.CustomResponse, 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.CustomResponse
+ if *v == nil {
+ sv = &types.CustomResponse{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "CustomResponseBodyKey":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EntityName to be of type string, got %T instead", value)
+ }
+ sv.CustomResponseBodyKey = ptr.String(jtv)
+ }
+
+ case "ResponseCode":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected ResponseStatusCode to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.ResponseCode = ptr.Int32(int32(i64))
+ }
+
+ case "ResponseHeaders":
+ if err := awsAwsjson11_deserializeDocumentCustomHTTPHeaders(&sv.ResponseHeaders, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentCustomResponseBodies(v *map[string]types.CustomResponseBody, 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.CustomResponseBody
+ if *v == nil {
+ mv = map[string]types.CustomResponseBody{}
+ } else {
+ mv = *v
+ }
+
+ for key, value := range shape {
+ var parsedVal types.CustomResponseBody
+ mapVar := parsedVal
+ destAddr := &mapVar
+ if err := awsAwsjson11_deserializeDocumentCustomResponseBody(&destAddr, value); err != nil {
+ return err
+ }
+ parsedVal = *destAddr
+ mv[key] = parsedVal
+
+ }
+ *v = mv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentCustomResponseBody(v **types.CustomResponseBody, 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.CustomResponseBody
+ if *v == nil {
+ sv = &types.CustomResponseBody{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Content":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResponseContent to be of type string, got %T instead", value)
+ }
+ sv.Content = ptr.String(jtv)
+ }
+
+ case "ContentType":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected ResponseContentType to be of type string, got %T instead", value)
+ }
+ sv.ContentType = types.ResponseContentType(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeDocumentDefaultAction(v **types.DefaultAction, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -8033,6 +8309,11 @@ func awsAwsjson11_deserializeDocumentRuleGroup(v **types.RuleGroup, value interf
sv.Capacity = i64
}
+ case "CustomResponseBodies":
+ if err := awsAwsjson11_deserializeDocumentCustomResponseBodies(&sv.CustomResponseBodies, value); err != nil {
+ return err
+ }
+
case "Description":
if value != nil {
jtv, ok := value.(string)
@@ -8383,6 +8664,24 @@ func awsAwsjson11_deserializeDocumentSampledHTTPRequest(v **types.SampledHTTPReq
return err
}
+ case "RequestHeadersInserted":
+ if err := awsAwsjson11_deserializeDocumentHTTPHeaders(&sv.RequestHeadersInserted, value); err != nil {
+ return err
+ }
+
+ case "ResponseCodeSent":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected ResponseStatusCode to be json.Number, got %T instead", value)
+ }
+ i64, err := jtv.Int64()
+ if err != nil {
+ return err
+ }
+ sv.ResponseCodeSent = ptr.Int32(int32(i64))
+ }
+
case "RuleNameWithinRuleGroup":
if value != nil {
jtv, ok := value.(string)
@@ -9807,6 +10106,11 @@ func awsAwsjson11_deserializeDocumentWebACL(v **types.WebACL, value interface{})
sv.Capacity = i64
}
+ case "CustomResponseBodies":
+ if err := awsAwsjson11_deserializeDocumentCustomResponseBodies(&sv.CustomResponseBodies, value); err != nil {
+ return err
+ }
+
case "DefaultAction":
if err := awsAwsjson11_deserializeDocumentDefaultAction(&sv.DefaultAction, value); err != nil {
return err
diff --git a/service/wafv2/go.mod b/service/wafv2/go.mod
index 679c0181290..3fd1e261c90 100644
--- a/service/wafv2/go.mod
+++ b/service/wafv2/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/wafv2/go.sum b/service/wafv2/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/wafv2/go.sum
+++ b/service/wafv2/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/wafv2/serializers.go b/service/wafv2/serializers.go
index 21ae59c0f9e..1d0d2d8c4d6 100644
--- a/service/wafv2/serializers.go
+++ b/service/wafv2/serializers.go
@@ -1905,6 +1905,13 @@ func awsAwsjson11_serializeDocumentAllowAction(v *types.AllowAction, value smith
object := value.Object()
defer object.Close()
+ if v.CustomRequestHandling != nil {
+ ok := object.Key("CustomRequestHandling")
+ if err := awsAwsjson11_serializeDocumentCustomRequestHandling(v.CustomRequestHandling, ok); err != nil {
+ return err
+ }
+ }
+
return nil
}
@@ -1933,6 +1940,13 @@ func awsAwsjson11_serializeDocumentBlockAction(v *types.BlockAction, value smith
object := value.Object()
defer object.Close()
+ if v.CustomResponse != nil {
+ ok := object.Key("CustomResponse")
+ if err := awsAwsjson11_serializeDocumentCustomResponse(v.CustomResponse, ok); err != nil {
+ return err
+ }
+ }
+
return nil
}
@@ -1978,6 +1992,13 @@ func awsAwsjson11_serializeDocumentCountAction(v *types.CountAction, value smith
object := value.Object()
defer object.Close()
+ if v.CustomRequestHandling != nil {
+ ok := object.Key("CustomRequestHandling")
+ if err := awsAwsjson11_serializeDocumentCustomRequestHandling(v.CustomRequestHandling, ok); err != nil {
+ return err
+ }
+ }
+
return nil
}
@@ -1992,6 +2013,105 @@ func awsAwsjson11_serializeDocumentCountryCodes(v []types.CountryCode, value smi
return nil
}
+func awsAwsjson11_serializeDocumentCustomHTTPHeader(v *types.CustomHTTPHeader, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Name != nil {
+ ok := object.Key("Name")
+ ok.String(*v.Name)
+ }
+
+ if v.Value != nil {
+ ok := object.Key("Value")
+ ok.String(*v.Value)
+ }
+
+ return nil
+}
+
+func awsAwsjson11_serializeDocumentCustomHTTPHeaders(v []types.CustomHTTPHeader, value smithyjson.Value) error {
+ array := value.Array()
+ defer array.Close()
+
+ for i := range v {
+ av := array.Value()
+ if err := awsAwsjson11_serializeDocumentCustomHTTPHeader(&v[i], av); err != nil {
+ return err
+ }
+ }
+ return nil
+}
+
+func awsAwsjson11_serializeDocumentCustomRequestHandling(v *types.CustomRequestHandling, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.InsertHeaders != nil {
+ ok := object.Key("InsertHeaders")
+ if err := awsAwsjson11_serializeDocumentCustomHTTPHeaders(v.InsertHeaders, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsAwsjson11_serializeDocumentCustomResponse(v *types.CustomResponse, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.CustomResponseBodyKey != nil {
+ ok := object.Key("CustomResponseBodyKey")
+ ok.String(*v.CustomResponseBodyKey)
+ }
+
+ if v.ResponseCode != nil {
+ ok := object.Key("ResponseCode")
+ ok.Integer(*v.ResponseCode)
+ }
+
+ if v.ResponseHeaders != nil {
+ ok := object.Key("ResponseHeaders")
+ if err := awsAwsjson11_serializeDocumentCustomHTTPHeaders(v.ResponseHeaders, ok); err != nil {
+ return err
+ }
+ }
+
+ return nil
+}
+
+func awsAwsjson11_serializeDocumentCustomResponseBodies(v map[string]types.CustomResponseBody, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ for key := range v {
+ om := object.Key(key)
+ mapVar := v[key]
+ if err := awsAwsjson11_serializeDocumentCustomResponseBody(&mapVar, om); err != nil {
+ return err
+ }
+ }
+ return nil
+}
+
+func awsAwsjson11_serializeDocumentCustomResponseBody(v *types.CustomResponseBody, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Content != nil {
+ ok := object.Key("Content")
+ ok.String(*v.Content)
+ }
+
+ if len(v.ContentType) > 0 {
+ ok := object.Key("ContentType")
+ ok.String(string(v.ContentType))
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeDocumentDefaultAction(v *types.DefaultAction, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -3030,6 +3150,13 @@ func awsAwsjson11_serializeOpDocumentCreateRuleGroupInput(v *CreateRuleGroupInpu
ok.Long(v.Capacity)
}
+ if v.CustomResponseBodies != nil {
+ ok := object.Key("CustomResponseBodies")
+ if err := awsAwsjson11_serializeDocumentCustomResponseBodies(v.CustomResponseBodies, ok); err != nil {
+ return err
+ }
+ }
+
if v.Description != nil {
ok := object.Key("Description")
ok.String(*v.Description)
@@ -3073,6 +3200,13 @@ func awsAwsjson11_serializeOpDocumentCreateWebACLInput(v *CreateWebACLInput, val
object := value.Object()
defer object.Close()
+ if v.CustomResponseBodies != nil {
+ ok := object.Key("CustomResponseBodies")
+ if err := awsAwsjson11_serializeDocumentCustomResponseBodies(v.CustomResponseBodies, ok); err != nil {
+ return err
+ }
+ }
+
if v.DefaultAction != nil {
ok := object.Key("DefaultAction")
if err := awsAwsjson11_serializeDocumentDefaultAction(v.DefaultAction, ok); err != nil {
@@ -3809,6 +3943,13 @@ func awsAwsjson11_serializeOpDocumentUpdateRuleGroupInput(v *UpdateRuleGroupInpu
object := value.Object()
defer object.Close()
+ if v.CustomResponseBodies != nil {
+ ok := object.Key("CustomResponseBodies")
+ if err := awsAwsjson11_serializeDocumentCustomResponseBodies(v.CustomResponseBodies, ok); err != nil {
+ return err
+ }
+ }
+
if v.Description != nil {
ok := object.Key("Description")
ok.String(*v.Description)
@@ -3855,6 +3996,13 @@ func awsAwsjson11_serializeOpDocumentUpdateWebACLInput(v *UpdateWebACLInput, val
object := value.Object()
defer object.Close()
+ if v.CustomResponseBodies != nil {
+ ok := object.Key("CustomResponseBodies")
+ if err := awsAwsjson11_serializeDocumentCustomResponseBodies(v.CustomResponseBodies, ok); err != nil {
+ return err
+ }
+ }
+
if v.DefaultAction != nil {
ok := object.Key("DefaultAction")
if err := awsAwsjson11_serializeDocumentDefaultAction(v.DefaultAction, ok); err != nil {
diff --git a/service/wafv2/types/enums.go b/service/wafv2/types/enums.go
index aea0938071c..fda03d88118 100644
--- a/service/wafv2/types/enums.go
+++ b/service/wafv2/types/enums.go
@@ -683,6 +683,10 @@ const (
ParameterExceptionFieldForwardedIpConfig ParameterExceptionField = "FORWARDED_IP_CONFIG"
ParameterExceptionFieldIpSetForwardedIpConfig ParameterExceptionField = "IP_SET_FORWARDED_IP_CONFIG"
ParameterExceptionFieldHeaderName ParameterExceptionField = "HEADER_NAME"
+ ParameterExceptionFieldCustomRequestHandling ParameterExceptionField = "CUSTOM_REQUEST_HANDLING"
+ ParameterExceptionFieldResponseContentType ParameterExceptionField = "RESPONSE_CONTENT_TYPE"
+ ParameterExceptionFieldCustomResponse ParameterExceptionField = "CUSTOM_RESPONSE"
+ ParameterExceptionFieldCustomResponseBody ParameterExceptionField = "CUSTOM_RESPONSE_BODY"
ParameterExceptionFieldJsonMatchPattern ParameterExceptionField = "JSON_MATCH_PATTERN"
ParameterExceptionFieldJsonMatchScope ParameterExceptionField = "JSON_MATCH_SCOPE"
ParameterExceptionFieldBodyParsingFallbackBehavior ParameterExceptionField = "BODY_PARSING_FALLBACK_BEHAVIOR"
@@ -736,6 +740,10 @@ func (ParameterExceptionField) Values() []ParameterExceptionField {
"FORWARDED_IP_CONFIG",
"IP_SET_FORWARDED_IP_CONFIG",
"HEADER_NAME",
+ "CUSTOM_REQUEST_HANDLING",
+ "RESPONSE_CONTENT_TYPE",
+ "CUSTOM_RESPONSE",
+ "CUSTOM_RESPONSE_BODY",
"JSON_MATCH_PATTERN",
"JSON_MATCH_SCOPE",
"BODY_PARSING_FALLBACK_BEHAVIOR",
@@ -805,6 +813,26 @@ func (ResourceType) Values() []ResourceType {
}
}
+type ResponseContentType string
+
+// Enum values for ResponseContentType
+const (
+ ResponseContentTypeTextPlain ResponseContentType = "TEXT_PLAIN"
+ ResponseContentTypeTextHtml ResponseContentType = "TEXT_HTML"
+ ResponseContentTypeApplicationJson ResponseContentType = "APPLICATION_JSON"
+)
+
+// Values returns all known values for ResponseContentType. 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 (ResponseContentType) Values() []ResponseContentType {
+ return []ResponseContentType{
+ "TEXT_PLAIN",
+ "TEXT_HTML",
+ "APPLICATION_JSON",
+ }
+}
+
type Scope string
// Enum values for Scope
diff --git a/service/wafv2/types/types.go b/service/wafv2/types/types.go
index 5a5872c489c..3c62a52f161 100644
--- a/service/wafv2/types/types.go
+++ b/service/wafv2/types/types.go
@@ -13,10 +13,19 @@ import (
type All struct {
}
-// Specifies that AWS WAF should allow requests. This is used only in the context
-// of other settings, for example to specify values for RuleAction and web ACL
+// Specifies that AWS WAF should allow the request and optionally defines
+// additional custom handling for the request. This is used in the context of other
+// settings, for example to specify values for RuleAction and web ACL
// DefaultAction.
type AllowAction struct {
+
+ // Defines custom handling for the web request. For information about customizing
+ // web requests and responses, see Customizing web requests and responses in AWS
+ // WAF
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html)
+ // in the AWS WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
+ CustomRequestHandling *CustomRequestHandling
}
// All query arguments of a web request. This is used only to indicate the web
@@ -35,10 +44,19 @@ type AndStatement struct {
Statements []Statement
}
-// Specifies that AWS WAF should block requests. This is used only in the context
-// of other settings, for example to specify values for RuleAction and web ACL
-// DefaultAction.
+// Specifies that AWS WAF should block the request and optionally defines
+// additional custom handling for the response to the web request. This is used in
+// the context of other settings, for example to specify values for RuleAction and
+// web ACL DefaultAction.
type BlockAction struct {
+
+ // Defines a custom response for the web request. For information about customizing
+ // web requests and responses, see Customizing web requests and responses in AWS
+ // WAF
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html)
+ // in the AWS WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
+ CustomResponse *CustomResponse
}
// The body of a web request. This immediately follows the request headers. This is
@@ -124,15 +142,118 @@ type ByteMatchStatement struct {
TextTransformations []TextTransformation
}
-// Specifies that AWS WAF should count requests. This is used only in the context
-// of other settings, for example to specify values for RuleAction and web ACL
-// DefaultAction.
+// Specifies that AWS WAF should count the request. Optionally defines additional
+// custom handling for the request. This is used in the context of other settings,
+// for example to specify values for RuleAction and web ACL DefaultAction.
type CountAction struct {
+
+ // Defines custom handling for the web request. For information about customizing
+ // web requests and responses, see Customizing web requests and responses in AWS
+ // WAF
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html)
+ // in the AWS WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
+ CustomRequestHandling *CustomRequestHandling
+}
+
+// A custom header for custom request and response handling. This is used in
+// CustomResponse and CustomRequestHandling.
+type CustomHTTPHeader struct {
+
+ // The name of the custom header. For custom request header insertion, when AWS WAF
+ // inserts the header into the request, it prefixes this name x-amzn-waf-, to avoid
+ // confusion with the headers that are already in the request. For example, for the
+ // header name sample, AWS WAF inserts the header x-amzn-waf-sample.
+ //
+ // This member is required.
+ Name *string
+
+ // The value of the custom header.
+ //
+ // This member is required.
+ Value *string
+}
+
+// Custom request handling behavior that inserts custom headers into a web request.
+// You can add custom request handling for the rule actions allow and count. For
+// information about customizing web requests and responses, see Customizing web
+// requests and responses in AWS WAF
+// (https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html)
+// in the AWS WAF Developer Guide
+// (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
+type CustomRequestHandling struct {
+
+ // The HTTP headers to insert into the request. Duplicate header names are not
+ // allowed. For information about the limits on count and size for custom request
+ // and response settings, see AWS WAF quotas
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) in the AWS
+ // WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
+ //
+ // This member is required.
+ InsertHeaders []CustomHTTPHeader
+}
+
+// A custom response to send to the client. You can define a custom response for
+// rule actions and default web ACL actions that are set to BlockAction. For
+// information about customizing web requests and responses, see Customizing web
+// requests and responses in AWS WAF
+// (https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html)
+// in the AWS WAF Developer Guide
+// (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
+type CustomResponse struct {
+
+ // The HTTP status code to return to the client. For a list of status codes that
+ // you can use in your custom reqponses, see Supported status codes for custom
+ // response
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/customizing-the-response-status-codes.html)
+ // in the AWS WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
+ //
+ // This member is required.
+ ResponseCode *int32
+
+ // References the response body that you want AWS WAF to return to the web request
+ // client. You can define a custom response for a rule action or a default web ACL
+ // action that is set to block. To do this, you first define the response body key
+ // and value in the CustomResponseBodies setting for the WebACL or RuleGroup where
+ // you want to use it. Then, in the rule action or web ACL default action
+ // BlockAction setting, you reference the response body using this key.
+ CustomResponseBodyKey *string
+
+ // The HTTP headers to use in the response. Duplicate header names are not allowed.
+ // For information about the limits on count and size for custom request and
+ // response settings, see AWS WAF quotas
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) in the AWS
+ // WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
+ ResponseHeaders []CustomHTTPHeader
+}
+
+// The response body to use in a custom response to a web request. This is
+// referenced by key from CustomResponseCustomResponseBodyKey.
+type CustomResponseBody struct {
+
+ // The payload of the custom response. You can use JSON escape strings in JSON
+ // content. To do this, you must specify JSON content in the ContentType setting.
+ // For information about the limits on count and size for custom request and
+ // response settings, see AWS WAF quotas
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) in the AWS
+ // WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
+ //
+ // This member is required.
+ Content *string
+
+ // The type of content in the payload that you are defining in the Content string.
+ //
+ // This member is required.
+ ContentType ResponseContentType
}
// In a WebACL, this is the action that you want AWS WAF to perform when a web
// request doesn't match any of the rules in the WebACL. The default action must be
-// a terminating action, so count is not allowed.
+// a terminating action, so you can't use count.
type DefaultAction struct {
// Specifies that AWS WAF should allow requests by default.
@@ -563,35 +684,25 @@ type JsonBody struct {
// This member is required.
MatchScope JsonMatchScope
- // What AWS WAF should do if it fails to completely parse the JSON body. The
- // options are the following:
- //
- // * EVALUATE_AS_STRING - Inspect the body as plain
- // text. AWS WAF applies the text transformations and inspection criteria that you
- // defined for the JSON inspection to the body text string.
- //
- // * MATCH - Treat the
- // web request as matching the rule statement. AWS WAF applies the rule action to
- // the request.
- //
- // * NO_MATCH - Treat the web request as not matching the rule
- // statement.
+ // The inspection behavior to fall back to if the JSON in the request body is
+ // invalid. For AWS WAF, invalid JSON is any content that isn't complete
+ // syntactical JSON, content whose root node isn't an object or an array, and
+ // duplicate keys in the content. You can specify the following fallback
+ // behaviors:
//
- // If you don't provide this setting, AWS WAF parses and evaluates the
- // content only up to the first parsing failure that it encounters. AWS WAF does
- // its best to parse the entire JSON body, but might be forced to stop for reasons
- // such as invalid characters, duplicate keys, truncation, and any content whose
- // root node isn't an object or an array. AWS WAF parses the JSON in the following
- // examples as two valid key, value pairs:
+ // * MATCH - Treat the web request as matching the rule statement. AWS
+ // WAF applies the rule action to the request.
//
- // * Missing comma:
- // {"key1":"value1""key2":"value2"}
+ // * NO_MATCH - Treat the web request
+ // as not matching the rule statement.
//
- // * Missing colon:
- // {"key1":"value1","key2""value2"}
+ // * EVALUATE_AS_STRING - Inspect the body as
+ // plain text. This option applies the text transformations and inspection criteria
+ // that you defined for the JSON inspection to the body text string.
//
- // * Extra colons:
- // {"key1"::"value1","key2""value2"}
+ // If you don't
+ // provide this setting, when AWS WAF encounters invalid JSON, it parses and
+ // inspects what it can, up to the first invalid JSON that it encounters.
InvalidFallbackBehavior BodyParsingFallbackBehavior
}
@@ -698,8 +809,8 @@ type Method struct {
// Specifies that AWS WAF should do nothing. This is generally used to try out a
// rule without performing any actions. You set the OverrideAction on the Rule.
-// This is used only in the context of other settings, for example to specify
-// values for RuleAction and web ACL DefaultAction.
+// This is used in the context of other settings, for example to specify values for
+// RuleAction and web ACL DefaultAction.
type NoneAction struct {
}
@@ -1034,6 +1145,21 @@ type RuleGroup struct {
// This member is required.
VisibilityConfig *VisibilityConfig
+ // A map of custom response keys and content bodies. When you create a rule with a
+ // block action, you can send a custom response to the web request. You define
+ // these for the rule group, and then use them in the rules that you define in the
+ // rule group. For information about customizing web requests and responses, see
+ // Customizing web requests and responses in AWS WAF
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html)
+ // in the AWS WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). For
+ // information about the limits on count and size for custom request and response
+ // settings, see AWS WAF quotas
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) in the AWS
+ // WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
+ CustomResponseBodies map[string]CustomResponseBody
+
// A description of the rule group that helps with identification.
Description *string
@@ -1127,6 +1253,13 @@ type SampledHTTPRequest struct {
// The action for the Rule that the request matched: ALLOW, BLOCK, or COUNT.
Action *string
+ // Custom request headers inserted by AWS WAF into the request, according to the
+ // custom request configuration for the matching rule action.
+ RequestHeadersInserted []HTTPHeader
+
+ // The response code that was sent for the request.
+ ResponseCodeSent *int32
+
// The name of the Rule that the request matched. For managed rule groups, the
// format for this name is ##. For your own rule groups, the format for this name
// is #. If the rule is not in a rule group, this field is absent.
@@ -1582,6 +1715,21 @@ type WebACL struct {
// ACLs is 1,500.
Capacity int64
+ // A map of custom response keys and content bodies. When you create a rule with a
+ // block action, you can send a custom response to the web request. You define
+ // these for the web ACL, and then use them in the rules and default actions that
+ // you define in the web ACL. For information about customizing web requests and
+ // responses, see Customizing web requests and responses in AWS WAF
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html)
+ // in the AWS WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). For
+ // information about the limits on count and size for custom request and response
+ // settings, see AWS WAF quotas
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html) in the AWS
+ // WAF Developer Guide
+ // (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
+ CustomResponseBodies map[string]CustomResponseBody
+
// A description of the Web ACL that helps with identification.
Description *string
diff --git a/service/wafv2/validators.go b/service/wafv2/validators.go
index e0df904ab84..882b8adf3e2 100644
--- a/service/wafv2/validators.go
+++ b/service/wafv2/validators.go
@@ -946,6 +946,23 @@ func addOpUpdateWebACLValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpUpdateWebACL{}, middleware.After)
}
+func validateAllowAction(v *types.AllowAction) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "AllowAction"}
+ if v.CustomRequestHandling != nil {
+ if err := validateCustomRequestHandling(v.CustomRequestHandling); err != nil {
+ invalidParams.AddNested("CustomRequestHandling", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateAndStatement(v *types.AndStatement) error {
if v == nil {
return nil
@@ -965,6 +982,23 @@ func validateAndStatement(v *types.AndStatement) error {
}
}
+func validateBlockAction(v *types.BlockAction) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "BlockAction"}
+ if v.CustomResponse != nil {
+ if err := validateCustomResponse(v.CustomResponse); err != nil {
+ invalidParams.AddNested("CustomResponse", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateByteMatchStatement(v *types.ByteMatchStatement) error {
if v == nil {
return nil
@@ -997,6 +1031,155 @@ func validateByteMatchStatement(v *types.ByteMatchStatement) error {
}
}
+func validateCountAction(v *types.CountAction) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CountAction"}
+ if v.CustomRequestHandling != nil {
+ if err := validateCustomRequestHandling(v.CustomRequestHandling); err != nil {
+ invalidParams.AddNested("CustomRequestHandling", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateCustomHTTPHeader(v *types.CustomHTTPHeader) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CustomHTTPHeader"}
+ if v.Name == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Name"))
+ }
+ if v.Value == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Value"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateCustomHTTPHeaders(v []types.CustomHTTPHeader) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CustomHTTPHeaders"}
+ for i := range v {
+ if err := validateCustomHTTPHeader(&v[i]); err != nil {
+ invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateCustomRequestHandling(v *types.CustomRequestHandling) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CustomRequestHandling"}
+ if v.InsertHeaders == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("InsertHeaders"))
+ } else if v.InsertHeaders != nil {
+ if err := validateCustomHTTPHeaders(v.InsertHeaders); err != nil {
+ invalidParams.AddNested("InsertHeaders", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateCustomResponse(v *types.CustomResponse) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CustomResponse"}
+ if v.ResponseCode == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("ResponseCode"))
+ }
+ if v.ResponseHeaders != nil {
+ if err := validateCustomHTTPHeaders(v.ResponseHeaders); err != nil {
+ invalidParams.AddNested("ResponseHeaders", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateCustomResponseBodies(v map[string]types.CustomResponseBody) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CustomResponseBodies"}
+ for key := range v {
+ value := v[key]
+ if err := validateCustomResponseBody(&value); err != nil {
+ invalidParams.AddNested(fmt.Sprintf("[%q]", key), err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateCustomResponseBody(v *types.CustomResponseBody) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CustomResponseBody"}
+ if len(v.ContentType) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("ContentType"))
+ }
+ if v.Content == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Content"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
+func validateDefaultAction(v *types.DefaultAction) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DefaultAction"}
+ if v.Block != nil {
+ if err := validateBlockAction(v.Block); err != nil {
+ invalidParams.AddNested("Block", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.Allow != nil {
+ if err := validateAllowAction(v.Allow); err != nil {
+ invalidParams.AddNested("Allow", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateExcludedRule(v *types.ExcludedRule) error {
if v == nil {
return nil
@@ -1234,6 +1417,23 @@ func validateOrStatement(v *types.OrStatement) error {
}
}
+func validateOverrideAction(v *types.OverrideAction) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "OverrideAction"}
+ if v.Count != nil {
+ if err := validateCountAction(v.Count); err != nil {
+ invalidParams.AddNested("Count", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateRateBasedStatement(v *types.RateBasedStatement) error {
if v == nil {
return nil
@@ -1320,6 +1520,16 @@ func validateRule(v *types.Rule) error {
invalidParams.AddNested("Statement", err.(smithy.InvalidParamsError))
}
}
+ if v.Action != nil {
+ if err := validateRuleAction(v.Action); err != nil {
+ invalidParams.AddNested("Action", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.OverrideAction != nil {
+ if err := validateOverrideAction(v.OverrideAction); err != nil {
+ invalidParams.AddNested("OverrideAction", err.(smithy.InvalidParamsError))
+ }
+ }
if v.VisibilityConfig == nil {
invalidParams.Add(smithy.NewErrParamRequired("VisibilityConfig"))
} else if v.VisibilityConfig != nil {
@@ -1334,6 +1544,33 @@ func validateRule(v *types.Rule) error {
}
}
+func validateRuleAction(v *types.RuleAction) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "RuleAction"}
+ if v.Block != nil {
+ if err := validateBlockAction(v.Block); err != nil {
+ invalidParams.AddNested("Block", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.Allow != nil {
+ if err := validateAllowAction(v.Allow); err != nil {
+ invalidParams.AddNested("Allow", err.(smithy.InvalidParamsError))
+ }
+ }
+ if v.Count != nil {
+ if err := validateCountAction(v.Count); err != nil {
+ invalidParams.AddNested("Count", err.(smithy.InvalidParamsError))
+ }
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateRuleGroupReferenceStatement(v *types.RuleGroupReferenceStatement) error {
if v == nil {
return nil
@@ -1799,6 +2036,11 @@ func validateOpCreateRuleGroupInput(v *CreateRuleGroupInput) error {
invalidParams.AddNested("Tags", err.(smithy.InvalidParamsError))
}
}
+ if v.CustomResponseBodies != nil {
+ if err := validateCustomResponseBodies(v.CustomResponseBodies); err != nil {
+ invalidParams.AddNested("CustomResponseBodies", err.(smithy.InvalidParamsError))
+ }
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
@@ -1819,6 +2061,10 @@ func validateOpCreateWebACLInput(v *CreateWebACLInput) error {
}
if v.DefaultAction == nil {
invalidParams.Add(smithy.NewErrParamRequired("DefaultAction"))
+ } else if v.DefaultAction != nil {
+ if err := validateDefaultAction(v.DefaultAction); err != nil {
+ invalidParams.AddNested("DefaultAction", err.(smithy.InvalidParamsError))
+ }
}
if v.Rules != nil {
if err := validateRules(v.Rules); err != nil {
@@ -1837,6 +2083,11 @@ func validateOpCreateWebACLInput(v *CreateWebACLInput) error {
invalidParams.AddNested("Tags", err.(smithy.InvalidParamsError))
}
}
+ if v.CustomResponseBodies != nil {
+ if err := validateCustomResponseBodies(v.CustomResponseBodies); err != nil {
+ invalidParams.AddNested("CustomResponseBodies", err.(smithy.InvalidParamsError))
+ }
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
@@ -2470,6 +2721,11 @@ func validateOpUpdateRuleGroupInput(v *UpdateRuleGroupInput) error {
if v.LockToken == nil {
invalidParams.Add(smithy.NewErrParamRequired("LockToken"))
}
+ if v.CustomResponseBodies != nil {
+ if err := validateCustomResponseBodies(v.CustomResponseBodies); err != nil {
+ invalidParams.AddNested("CustomResponseBodies", err.(smithy.InvalidParamsError))
+ }
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
@@ -2493,6 +2749,10 @@ func validateOpUpdateWebACLInput(v *UpdateWebACLInput) error {
}
if v.DefaultAction == nil {
invalidParams.Add(smithy.NewErrParamRequired("DefaultAction"))
+ } else if v.DefaultAction != nil {
+ if err := validateDefaultAction(v.DefaultAction); err != nil {
+ invalidParams.AddNested("DefaultAction", err.(smithy.InvalidParamsError))
+ }
}
if v.Rules != nil {
if err := validateRules(v.Rules); err != nil {
@@ -2509,6 +2769,11 @@ func validateOpUpdateWebACLInput(v *UpdateWebACLInput) error {
if v.LockToken == nil {
invalidParams.Add(smithy.NewErrParamRequired("LockToken"))
}
+ if v.CustomResponseBodies != nil {
+ if err := validateCustomResponseBodies(v.CustomResponseBodies); err != nil {
+ invalidParams.AddNested("CustomResponseBodies", err.(smithy.InvalidParamsError))
+ }
+ }
if invalidParams.Len() > 0 {
return invalidParams
} else {
diff --git a/service/wellarchitected/go.mod b/service/wellarchitected/go.mod
index b455d06e61e..6ba59062435 100644
--- a/service/wellarchitected/go.mod
+++ b/service/wellarchitected/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/wellarchitected/go.sum b/service/wellarchitected/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/wellarchitected/go.sum
+++ b/service/wellarchitected/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/workdocs/go.mod b/service/workdocs/go.mod
index c6754328897..fdf271f021a 100644
--- a/service/workdocs/go.mod
+++ b/service/workdocs/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/workdocs/go.sum b/service/workdocs/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/workdocs/go.sum
+++ b/service/workdocs/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/worklink/go.mod b/service/worklink/go.mod
index 69682707a7b..a01e6eab440 100644
--- a/service/worklink/go.mod
+++ b/service/worklink/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/worklink/go.sum b/service/worklink/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/worklink/go.sum
+++ b/service/worklink/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/workmail/api_op_CreateMobileDeviceAccessRule.go b/service/workmail/api_op_CreateMobileDeviceAccessRule.go
new file mode 100644
index 00000000000..eb4d98e19ff
--- /dev/null
+++ b/service/workmail/api_op_CreateMobileDeviceAccessRule.go
@@ -0,0 +1,197 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package workmail
+
+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/workmail/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Creates a new mobile device access rule for the specified Amazon WorkMail
+// organization.
+func (c *Client) CreateMobileDeviceAccessRule(ctx context.Context, params *CreateMobileDeviceAccessRuleInput, optFns ...func(*Options)) (*CreateMobileDeviceAccessRuleOutput, error) {
+ if params == nil {
+ params = &CreateMobileDeviceAccessRuleInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "CreateMobileDeviceAccessRule", params, optFns, addOperationCreateMobileDeviceAccessRuleMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*CreateMobileDeviceAccessRuleOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type CreateMobileDeviceAccessRuleInput struct {
+
+ // The effect of the rule when it matches. Allowed values are ALLOW or DENY.
+ //
+ // This member is required.
+ Effect types.MobileDeviceAccessRuleEffect
+
+ // The rule name.
+ //
+ // This member is required.
+ Name *string
+
+ // The Amazon WorkMail organization under which the rule will be created.
+ //
+ // This member is required.
+ OrganizationId *string
+
+ // The idempotency token for the client request.
+ ClientToken *string
+
+ // The rule description.
+ Description *string
+
+ // Device models that the rule will match.
+ DeviceModels []string
+
+ // Device operating systems that the rule will match.
+ DeviceOperatingSystems []string
+
+ // Device types that the rule will match.
+ DeviceTypes []string
+
+ // Device user agents that the rule will match.
+ DeviceUserAgents []string
+
+ // Device models that the rule will not match. All other device models will match.
+ NotDeviceModels []string
+
+ // Device operating systems that the rule will not match. All other device
+ // operating systems will match.
+ NotDeviceOperatingSystems []string
+
+ // Device types that the rule will not match. All other device types will match.
+ NotDeviceTypes []string
+
+ // Device user agents that the rule will not match. All other device user agents
+ // will match.
+ NotDeviceUserAgents []string
+}
+
+type CreateMobileDeviceAccessRuleOutput struct {
+
+ // The identifier for the newly created mobile device access rule.
+ MobileDeviceAccessRuleId *string
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationCreateMobileDeviceAccessRuleMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpCreateMobileDeviceAccessRule{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpCreateMobileDeviceAccessRule{}, 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 = addIdempotencyToken_opCreateMobileDeviceAccessRuleMiddleware(stack, options); err != nil {
+ return err
+ }
+ if err = addOpCreateMobileDeviceAccessRuleValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateMobileDeviceAccessRule(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
+}
+
+type idempotencyToken_initializeOpCreateMobileDeviceAccessRule struct {
+ tokenProvider IdempotencyTokenProvider
+}
+
+func (*idempotencyToken_initializeOpCreateMobileDeviceAccessRule) ID() string {
+ return "OperationIdempotencyTokenAutoFill"
+}
+
+func (m *idempotencyToken_initializeOpCreateMobileDeviceAccessRule) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ if m.tokenProvider == nil {
+ return next.HandleInitialize(ctx, in)
+ }
+
+ input, ok := in.Parameters.(*CreateMobileDeviceAccessRuleInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("expected middleware input to be of type *CreateMobileDeviceAccessRuleInput ")
+ }
+
+ if input.ClientToken == nil {
+ t, err := m.tokenProvider.GetIdempotencyToken()
+ if err != nil {
+ return out, metadata, err
+ }
+ input.ClientToken = &t
+ }
+ return next.HandleInitialize(ctx, in)
+}
+func addIdempotencyToken_opCreateMobileDeviceAccessRuleMiddleware(stack *middleware.Stack, cfg Options) error {
+ return stack.Initialize.Add(&idempotencyToken_initializeOpCreateMobileDeviceAccessRule{tokenProvider: cfg.IdempotencyTokenProvider}, middleware.Before)
+}
+
+func newServiceMetadataMiddleware_opCreateMobileDeviceAccessRule(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "workmail",
+ OperationName: "CreateMobileDeviceAccessRule",
+ }
+}
diff --git a/service/workmail/api_op_DeleteMobileDeviceAccessRule.go b/service/workmail/api_op_DeleteMobileDeviceAccessRule.go
new file mode 100644
index 00000000000..cce0a291df5
--- /dev/null
+++ b/service/workmail/api_op_DeleteMobileDeviceAccessRule.go
@@ -0,0 +1,118 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package workmail
+
+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 mobile device access rule for the specified Amazon WorkMail
+// organization.
+func (c *Client) DeleteMobileDeviceAccessRule(ctx context.Context, params *DeleteMobileDeviceAccessRuleInput, optFns ...func(*Options)) (*DeleteMobileDeviceAccessRuleOutput, error) {
+ if params == nil {
+ params = &DeleteMobileDeviceAccessRuleInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "DeleteMobileDeviceAccessRule", params, optFns, addOperationDeleteMobileDeviceAccessRuleMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*DeleteMobileDeviceAccessRuleOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type DeleteMobileDeviceAccessRuleInput struct {
+
+ // The identifier of the rule to be deleted.
+ //
+ // This member is required.
+ MobileDeviceAccessRuleId *string
+
+ // The Amazon WorkMail organization under which the rule will be deleted.
+ //
+ // This member is required.
+ OrganizationId *string
+}
+
+type DeleteMobileDeviceAccessRuleOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationDeleteMobileDeviceAccessRuleMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpDeleteMobileDeviceAccessRule{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpDeleteMobileDeviceAccessRule{}, 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 = addOpDeleteMobileDeviceAccessRuleValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDeleteMobileDeviceAccessRule(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_opDeleteMobileDeviceAccessRule(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "workmail",
+ OperationName: "DeleteMobileDeviceAccessRule",
+ }
+}
diff --git a/service/workmail/api_op_GetMobileDeviceAccessEffect.go b/service/workmail/api_op_GetMobileDeviceAccessEffect.go
new file mode 100644
index 00000000000..aff0895278b
--- /dev/null
+++ b/service/workmail/api_op_GetMobileDeviceAccessEffect.go
@@ -0,0 +1,138 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package workmail
+
+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/workmail/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Simulates the effect of the mobile device access rules for the given attributes
+// of a sample access event. Use this method to test the effects of the current set
+// of mobile device access rules for the Amazon WorkMail organization for a
+// particular user's attributes.
+func (c *Client) GetMobileDeviceAccessEffect(ctx context.Context, params *GetMobileDeviceAccessEffectInput, optFns ...func(*Options)) (*GetMobileDeviceAccessEffectOutput, error) {
+ if params == nil {
+ params = &GetMobileDeviceAccessEffectInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "GetMobileDeviceAccessEffect", params, optFns, addOperationGetMobileDeviceAccessEffectMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*GetMobileDeviceAccessEffectOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type GetMobileDeviceAccessEffectInput struct {
+
+ // The Amazon WorkMail organization to simulate the access effect for.
+ //
+ // This member is required.
+ OrganizationId *string
+
+ // Device model the simulated user will report.
+ DeviceModel *string
+
+ // Device operating system the simulated user will report.
+ DeviceOperatingSystem *string
+
+ // Device type the simulated user will report.
+ DeviceType *string
+
+ // Device user agent the simulated user will report.
+ DeviceUserAgent *string
+}
+
+type GetMobileDeviceAccessEffectOutput struct {
+
+ // The effect of the simulated access, ALLOW or DENY, after evaluating mobile
+ // device access rules in the Amazon WorkMail organization for the simulated user
+ // parameters.
+ Effect types.MobileDeviceAccessRuleEffect
+
+ // A list of the rules which matched the simulated user input and produced the
+ // effect.
+ MatchedRules []types.MobileDeviceAccessMatchedRule
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationGetMobileDeviceAccessEffectMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpGetMobileDeviceAccessEffect{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpGetMobileDeviceAccessEffect{}, 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 = addOpGetMobileDeviceAccessEffectValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetMobileDeviceAccessEffect(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_opGetMobileDeviceAccessEffect(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "workmail",
+ OperationName: "GetMobileDeviceAccessEffect",
+ }
+}
diff --git a/service/workmail/api_op_ListMobileDeviceAccessRules.go b/service/workmail/api_op_ListMobileDeviceAccessRules.go
new file mode 100644
index 00000000000..72c2e4fdee1
--- /dev/null
+++ b/service/workmail/api_op_ListMobileDeviceAccessRules.go
@@ -0,0 +1,119 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package workmail
+
+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/workmail/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Lists the mobile device access rules for the specified Amazon WorkMail
+// organization.
+func (c *Client) ListMobileDeviceAccessRules(ctx context.Context, params *ListMobileDeviceAccessRulesInput, optFns ...func(*Options)) (*ListMobileDeviceAccessRulesOutput, error) {
+ if params == nil {
+ params = &ListMobileDeviceAccessRulesInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "ListMobileDeviceAccessRules", params, optFns, addOperationListMobileDeviceAccessRulesMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*ListMobileDeviceAccessRulesOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type ListMobileDeviceAccessRulesInput struct {
+
+ // The Amazon WorkMail organization for which to list the rules.
+ //
+ // This member is required.
+ OrganizationId *string
+}
+
+type ListMobileDeviceAccessRulesOutput struct {
+
+ // The list of mobile device access rules that exist under the specified Amazon
+ // WorkMail organization.
+ Rules []types.MobileDeviceAccessRule
+
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationListMobileDeviceAccessRulesMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpListMobileDeviceAccessRules{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpListMobileDeviceAccessRules{}, 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 = addOpListMobileDeviceAccessRulesValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opListMobileDeviceAccessRules(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_opListMobileDeviceAccessRules(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "workmail",
+ OperationName: "ListMobileDeviceAccessRules",
+ }
+}
diff --git a/service/workmail/api_op_UpdateMobileDeviceAccessRule.go b/service/workmail/api_op_UpdateMobileDeviceAccessRule.go
new file mode 100644
index 00000000000..3491ac58a0c
--- /dev/null
+++ b/service/workmail/api_op_UpdateMobileDeviceAccessRule.go
@@ -0,0 +1,160 @@
+// Code generated by smithy-go-codegen DO NOT EDIT.
+
+package workmail
+
+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/workmail/types"
+ "github.com/aws/smithy-go/middleware"
+ smithyhttp "github.com/aws/smithy-go/transport/http"
+)
+
+// Updates a mobile device access rule for the specified Amazon WorkMail
+// organization.
+func (c *Client) UpdateMobileDeviceAccessRule(ctx context.Context, params *UpdateMobileDeviceAccessRuleInput, optFns ...func(*Options)) (*UpdateMobileDeviceAccessRuleOutput, error) {
+ if params == nil {
+ params = &UpdateMobileDeviceAccessRuleInput{}
+ }
+
+ result, metadata, err := c.invokeOperation(ctx, "UpdateMobileDeviceAccessRule", params, optFns, addOperationUpdateMobileDeviceAccessRuleMiddlewares)
+ if err != nil {
+ return nil, err
+ }
+
+ out := result.(*UpdateMobileDeviceAccessRuleOutput)
+ out.ResultMetadata = metadata
+ return out, nil
+}
+
+type UpdateMobileDeviceAccessRuleInput struct {
+
+ // The effect of the rule when it matches. Allowed values are ALLOW or DENY.
+ //
+ // This member is required.
+ Effect types.MobileDeviceAccessRuleEffect
+
+ // The identifier of the rule to be updated.
+ //
+ // This member is required.
+ MobileDeviceAccessRuleId *string
+
+ // The updated rule name.
+ //
+ // This member is required.
+ Name *string
+
+ // The Amazon WorkMail organization under which the rule will be updated.
+ //
+ // This member is required.
+ OrganizationId *string
+
+ // The updated rule description.
+ Description *string
+
+ // Device models that the updated rule will match.
+ DeviceModels []string
+
+ // Device operating systems that the updated rule will match.
+ DeviceOperatingSystems []string
+
+ // Device types that the updated rule will match.
+ DeviceTypes []string
+
+ // User agents that the updated rule will match.
+ DeviceUserAgents []string
+
+ // Device models that the updated rule will not match. All other device models will
+ // match.
+ NotDeviceModels []string
+
+ // Device operating systems that the updated rule will not match. All other device
+ // operating systems will match.
+ NotDeviceOperatingSystems []string
+
+ // Device types that the updated rule will not match. All other device types will
+ // match.
+ NotDeviceTypes []string
+
+ // User agents that the updated rule will not match. All other user agents will
+ // match.
+ NotDeviceUserAgents []string
+}
+
+type UpdateMobileDeviceAccessRuleOutput struct {
+ // Metadata pertaining to the operation's result.
+ ResultMetadata middleware.Metadata
+}
+
+func addOperationUpdateMobileDeviceAccessRuleMiddlewares(stack *middleware.Stack, options Options) (err error) {
+ err = stack.Serialize.Add(&awsAwsjson11_serializeOpUpdateMobileDeviceAccessRule{}, middleware.After)
+ if err != nil {
+ return err
+ }
+ err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpUpdateMobileDeviceAccessRule{}, 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 = addOpUpdateMobileDeviceAccessRuleValidationMiddleware(stack); err != nil {
+ return err
+ }
+ if err = stack.Initialize.Add(newServiceMetadataMiddleware_opUpdateMobileDeviceAccessRule(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_opUpdateMobileDeviceAccessRule(region string) *awsmiddleware.RegisterServiceMetadata {
+ return &awsmiddleware.RegisterServiceMetadata{
+ Region: region,
+ ServiceID: ServiceID,
+ SigningName: "workmail",
+ OperationName: "UpdateMobileDeviceAccessRule",
+ }
+}
diff --git a/service/workmail/deserializers.go b/service/workmail/deserializers.go
index 6c9df15d3f1..7df4af0fc8c 100644
--- a/service/workmail/deserializers.go
+++ b/service/workmail/deserializers.go
@@ -661,6 +661,126 @@ func awsAwsjson11_deserializeOpErrorCreateGroup(response *smithyhttp.Response, m
}
}
+type awsAwsjson11_deserializeOpCreateMobileDeviceAccessRule struct {
+}
+
+func (*awsAwsjson11_deserializeOpCreateMobileDeviceAccessRule) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_deserializeOpCreateMobileDeviceAccessRule) 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_deserializeOpErrorCreateMobileDeviceAccessRule(response, &metadata)
+ }
+ output := &CreateMobileDeviceAccessRuleOutput{}
+ 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_deserializeOpDocumentCreateMobileDeviceAccessRuleOutput(&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_deserializeOpErrorCreateMobileDeviceAccessRule(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("InvalidParameterException", errorCode):
+ return awsAwsjson11_deserializeErrorInvalidParameterException(response, errorBody)
+
+ case strings.EqualFold("LimitExceededException", errorCode):
+ return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
+
+ case strings.EqualFold("OrganizationNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorOrganizationNotFoundException(response, errorBody)
+
+ case strings.EqualFold("OrganizationStateException", errorCode):
+ return awsAwsjson11_deserializeErrorOrganizationStateException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
type awsAwsjson11_deserializeOpCreateOrganization struct {
}
@@ -1537,6 +1657,123 @@ func awsAwsjson11_deserializeOpErrorDeleteMailboxPermissions(response *smithyhtt
}
}
+type awsAwsjson11_deserializeOpDeleteMobileDeviceAccessRule struct {
+}
+
+func (*awsAwsjson11_deserializeOpDeleteMobileDeviceAccessRule) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_deserializeOpDeleteMobileDeviceAccessRule) 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_deserializeOpErrorDeleteMobileDeviceAccessRule(response, &metadata)
+ }
+ output := &DeleteMobileDeviceAccessRuleOutput{}
+ 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_deserializeOpDocumentDeleteMobileDeviceAccessRuleOutput(&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_deserializeOpErrorDeleteMobileDeviceAccessRule(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("InvalidParameterException", errorCode):
+ return awsAwsjson11_deserializeErrorInvalidParameterException(response, errorBody)
+
+ case strings.EqualFold("OrganizationNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorOrganizationNotFoundException(response, errorBody)
+
+ case strings.EqualFold("OrganizationStateException", errorCode):
+ return awsAwsjson11_deserializeErrorOrganizationStateException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
type awsAwsjson11_deserializeOpDeleteOrganization struct {
}
@@ -3349,14 +3586,14 @@ func awsAwsjson11_deserializeOpErrorGetMailboxDetails(response *smithyhttp.Respo
}
}
-type awsAwsjson11_deserializeOpListAccessControlRules struct {
+type awsAwsjson11_deserializeOpGetMobileDeviceAccessEffect struct {
}
-func (*awsAwsjson11_deserializeOpListAccessControlRules) ID() string {
+func (*awsAwsjson11_deserializeOpGetMobileDeviceAccessEffect) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsjson11_deserializeOpListAccessControlRules) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsjson11_deserializeOpGetMobileDeviceAccessEffect) 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)
@@ -3370,9 +3607,9 @@ func (m *awsAwsjson11_deserializeOpListAccessControlRules) HandleDeserialize(ctx
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsjson11_deserializeOpErrorListAccessControlRules(response, &metadata)
+ return out, metadata, awsAwsjson11_deserializeOpErrorGetMobileDeviceAccessEffect(response, &metadata)
}
- output := &ListAccessControlRulesOutput{}
+ output := &GetMobileDeviceAccessEffectOutput{}
out.Result = output
var buff [1024]byte
@@ -3392,7 +3629,7 @@ func (m *awsAwsjson11_deserializeOpListAccessControlRules) HandleDeserialize(ctx
return out, metadata, err
}
- err = awsAwsjson11_deserializeOpDocumentListAccessControlRulesOutput(&output, shape)
+ err = awsAwsjson11_deserializeOpDocumentGetMobileDeviceAccessEffectOutput(&output, shape)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -3406,7 +3643,7 @@ func (m *awsAwsjson11_deserializeOpListAccessControlRules) HandleDeserialize(ctx
return out, metadata, err
}
-func awsAwsjson11_deserializeOpErrorListAccessControlRules(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsjson11_deserializeOpErrorGetMobileDeviceAccessEffect(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)}
@@ -3447,6 +3684,9 @@ func awsAwsjson11_deserializeOpErrorListAccessControlRules(response *smithyhttp.
}
switch {
+ case strings.EqualFold("InvalidParameterException", errorCode):
+ return awsAwsjson11_deserializeErrorInvalidParameterException(response, errorBody)
+
case strings.EqualFold("OrganizationNotFoundException", errorCode):
return awsAwsjson11_deserializeErrorOrganizationNotFoundException(response, errorBody)
@@ -3463,14 +3703,14 @@ func awsAwsjson11_deserializeOpErrorListAccessControlRules(response *smithyhttp.
}
}
-type awsAwsjson11_deserializeOpListAliases struct {
+type awsAwsjson11_deserializeOpListAccessControlRules struct {
}
-func (*awsAwsjson11_deserializeOpListAliases) ID() string {
+func (*awsAwsjson11_deserializeOpListAccessControlRules) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsjson11_deserializeOpListAliases) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsjson11_deserializeOpListAccessControlRules) 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)
@@ -3484,9 +3724,9 @@ func (m *awsAwsjson11_deserializeOpListAliases) HandleDeserialize(ctx context.Co
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsjson11_deserializeOpErrorListAliases(response, &metadata)
+ return out, metadata, awsAwsjson11_deserializeOpErrorListAccessControlRules(response, &metadata)
}
- output := &ListAliasesOutput{}
+ output := &ListAccessControlRulesOutput{}
out.Result = output
var buff [1024]byte
@@ -3506,7 +3746,7 @@ func (m *awsAwsjson11_deserializeOpListAliases) HandleDeserialize(ctx context.Co
return out, metadata, err
}
- err = awsAwsjson11_deserializeOpDocumentListAliasesOutput(&output, shape)
+ err = awsAwsjson11_deserializeOpDocumentListAccessControlRulesOutput(&output, shape)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -3520,7 +3760,7 @@ func (m *awsAwsjson11_deserializeOpListAliases) HandleDeserialize(ctx context.Co
return out, metadata, err
}
-func awsAwsjson11_deserializeOpErrorListAliases(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsjson11_deserializeOpErrorListAccessControlRules(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)}
@@ -3561,15 +3801,129 @@ func awsAwsjson11_deserializeOpErrorListAliases(response *smithyhttp.Response, m
}
switch {
- case strings.EqualFold("EntityNotFoundException", errorCode):
- return awsAwsjson11_deserializeErrorEntityNotFoundException(response, errorBody)
-
- case strings.EqualFold("EntityStateException", errorCode):
- return awsAwsjson11_deserializeErrorEntityStateException(response, errorBody)
-
- case strings.EqualFold("InvalidParameterException", errorCode):
- return awsAwsjson11_deserializeErrorInvalidParameterException(response, errorBody)
-
+ case strings.EqualFold("OrganizationNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorOrganizationNotFoundException(response, errorBody)
+
+ case strings.EqualFold("OrganizationStateException", errorCode):
+ return awsAwsjson11_deserializeErrorOrganizationStateException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsAwsjson11_deserializeOpListAliases struct {
+}
+
+func (*awsAwsjson11_deserializeOpListAliases) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_deserializeOpListAliases) 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_deserializeOpErrorListAliases(response, &metadata)
+ }
+ output := &ListAliasesOutput{}
+ 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_deserializeOpDocumentListAliasesOutput(&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_deserializeOpErrorListAliases(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("EntityNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorEntityNotFoundException(response, errorBody)
+
+ case strings.EqualFold("EntityStateException", errorCode):
+ return awsAwsjson11_deserializeErrorEntityStateException(response, errorBody)
+
+ case strings.EqualFold("InvalidParameterException", errorCode):
+ return awsAwsjson11_deserializeErrorInvalidParameterException(response, errorBody)
+
case strings.EqualFold("OrganizationNotFoundException", errorCode):
return awsAwsjson11_deserializeErrorOrganizationNotFoundException(response, errorBody)
@@ -4066,6 +4420,123 @@ func awsAwsjson11_deserializeOpErrorListMailboxPermissions(response *smithyhttp.
}
}
+type awsAwsjson11_deserializeOpListMobileDeviceAccessRules struct {
+}
+
+func (*awsAwsjson11_deserializeOpListMobileDeviceAccessRules) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_deserializeOpListMobileDeviceAccessRules) 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_deserializeOpErrorListMobileDeviceAccessRules(response, &metadata)
+ }
+ output := &ListMobileDeviceAccessRulesOutput{}
+ 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_deserializeOpDocumentListMobileDeviceAccessRulesOutput(&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_deserializeOpErrorListMobileDeviceAccessRules(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("InvalidParameterException", errorCode):
+ return awsAwsjson11_deserializeErrorInvalidParameterException(response, errorBody)
+
+ case strings.EqualFold("OrganizationNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorOrganizationNotFoundException(response, errorBody)
+
+ case strings.EqualFold("OrganizationStateException", errorCode):
+ return awsAwsjson11_deserializeErrorOrganizationStateException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
type awsAwsjson11_deserializeOpListOrganizations struct {
}
@@ -5761,14 +6232,14 @@ func awsAwsjson11_deserializeOpErrorUpdateMailboxQuota(response *smithyhttp.Resp
}
}
-type awsAwsjson11_deserializeOpUpdatePrimaryEmailAddress struct {
+type awsAwsjson11_deserializeOpUpdateMobileDeviceAccessRule struct {
}
-func (*awsAwsjson11_deserializeOpUpdatePrimaryEmailAddress) ID() string {
+func (*awsAwsjson11_deserializeOpUpdateMobileDeviceAccessRule) ID() string {
return "OperationDeserializer"
}
-func (m *awsAwsjson11_deserializeOpUpdatePrimaryEmailAddress) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
+func (m *awsAwsjson11_deserializeOpUpdateMobileDeviceAccessRule) 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)
@@ -5782,9 +6253,9 @@ func (m *awsAwsjson11_deserializeOpUpdatePrimaryEmailAddress) HandleDeserialize(
}
if response.StatusCode < 200 || response.StatusCode >= 300 {
- return out, metadata, awsAwsjson11_deserializeOpErrorUpdatePrimaryEmailAddress(response, &metadata)
+ return out, metadata, awsAwsjson11_deserializeOpErrorUpdateMobileDeviceAccessRule(response, &metadata)
}
- output := &UpdatePrimaryEmailAddressOutput{}
+ output := &UpdateMobileDeviceAccessRuleOutput{}
out.Result = output
var buff [1024]byte
@@ -5804,7 +6275,7 @@ func (m *awsAwsjson11_deserializeOpUpdatePrimaryEmailAddress) HandleDeserialize(
return out, metadata, err
}
- err = awsAwsjson11_deserializeOpDocumentUpdatePrimaryEmailAddressOutput(&output, shape)
+ err = awsAwsjson11_deserializeOpDocumentUpdateMobileDeviceAccessRuleOutput(&output, shape)
if err != nil {
var snapshot bytes.Buffer
io.Copy(&snapshot, ringBuffer)
@@ -5818,7 +6289,7 @@ func (m *awsAwsjson11_deserializeOpUpdatePrimaryEmailAddress) HandleDeserialize(
return out, metadata, err
}
-func awsAwsjson11_deserializeOpErrorUpdatePrimaryEmailAddress(response *smithyhttp.Response, metadata *middleware.Metadata) error {
+func awsAwsjson11_deserializeOpErrorUpdateMobileDeviceAccessRule(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)}
@@ -5859,26 +6330,146 @@ func awsAwsjson11_deserializeOpErrorUpdatePrimaryEmailAddress(response *smithyht
}
switch {
- case strings.EqualFold("DirectoryServiceAuthenticationFailedException", errorCode):
- return awsAwsjson11_deserializeErrorDirectoryServiceAuthenticationFailedException(response, errorBody)
-
- case strings.EqualFold("DirectoryUnavailableException", errorCode):
- return awsAwsjson11_deserializeErrorDirectoryUnavailableException(response, errorBody)
-
- case strings.EqualFold("EmailAddressInUseException", errorCode):
- return awsAwsjson11_deserializeErrorEmailAddressInUseException(response, errorBody)
-
case strings.EqualFold("EntityNotFoundException", errorCode):
return awsAwsjson11_deserializeErrorEntityNotFoundException(response, errorBody)
- case strings.EqualFold("EntityStateException", errorCode):
- return awsAwsjson11_deserializeErrorEntityStateException(response, errorBody)
-
case strings.EqualFold("InvalidParameterException", errorCode):
return awsAwsjson11_deserializeErrorInvalidParameterException(response, errorBody)
- case strings.EqualFold("MailDomainNotFoundException", errorCode):
- return awsAwsjson11_deserializeErrorMailDomainNotFoundException(response, errorBody)
+ case strings.EqualFold("OrganizationNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorOrganizationNotFoundException(response, errorBody)
+
+ case strings.EqualFold("OrganizationStateException", errorCode):
+ return awsAwsjson11_deserializeErrorOrganizationStateException(response, errorBody)
+
+ default:
+ genericError := &smithy.GenericAPIError{
+ Code: errorCode,
+ Message: errorMessage,
+ }
+ return genericError
+
+ }
+}
+
+type awsAwsjson11_deserializeOpUpdatePrimaryEmailAddress struct {
+}
+
+func (*awsAwsjson11_deserializeOpUpdatePrimaryEmailAddress) ID() string {
+ return "OperationDeserializer"
+}
+
+func (m *awsAwsjson11_deserializeOpUpdatePrimaryEmailAddress) 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_deserializeOpErrorUpdatePrimaryEmailAddress(response, &metadata)
+ }
+ output := &UpdatePrimaryEmailAddressOutput{}
+ 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_deserializeOpDocumentUpdatePrimaryEmailAddressOutput(&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_deserializeOpErrorUpdatePrimaryEmailAddress(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("DirectoryServiceAuthenticationFailedException", errorCode):
+ return awsAwsjson11_deserializeErrorDirectoryServiceAuthenticationFailedException(response, errorBody)
+
+ case strings.EqualFold("DirectoryUnavailableException", errorCode):
+ return awsAwsjson11_deserializeErrorDirectoryUnavailableException(response, errorBody)
+
+ case strings.EqualFold("EmailAddressInUseException", errorCode):
+ return awsAwsjson11_deserializeErrorEmailAddressInUseException(response, errorBody)
+
+ case strings.EqualFold("EntityNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorEntityNotFoundException(response, errorBody)
+
+ case strings.EqualFold("EntityStateException", errorCode):
+ return awsAwsjson11_deserializeErrorEntityStateException(response, errorBody)
+
+ case strings.EqualFold("InvalidParameterException", errorCode):
+ return awsAwsjson11_deserializeErrorInvalidParameterException(response, errorBody)
+
+ case strings.EqualFold("MailDomainNotFoundException", errorCode):
+ return awsAwsjson11_deserializeErrorMailDomainNotFoundException(response, errorBody)
case strings.EqualFold("MailDomainStateException", errorCode):
return awsAwsjson11_deserializeErrorMailDomainStateException(response, errorBody)
@@ -7103,6 +7694,150 @@ func awsAwsjson11_deserializeDocumentDelegate(v **types.Delegate, value interfac
return nil
}
+func awsAwsjson11_deserializeDocumentDeviceModelList(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 DeviceModel to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentDeviceOperatingSystemList(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 DeviceOperatingSystem to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentDeviceTypeList(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 DeviceType to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentDeviceUserAgentList(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 DeviceUserAgent to be of type string, got %T instead", value)
+ }
+ col = jtv
+ }
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
func awsAwsjson11_deserializeDocumentDirectoryInUseException(v **types.DirectoryInUseException, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -7980,15 +8715,231 @@ func awsAwsjson11_deserializeDocumentMailDomainNotFoundException(v **types.MailD
sv = *v
}
- for key, value := range shape {
- switch key {
- case "Message":
+ for key, value := range shape {
+ switch key {
+ case "Message":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentMailDomainStateException(v **types.MailDomainStateException, 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.MailDomainStateException
+ if *v == nil {
+ sv = &types.MailDomainStateException{}
+ } 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 String to be of type string, got %T instead", value)
+ }
+ sv.Message = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentMember(v **types.Member, 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.Member
+ if *v == nil {
+ sv = &types.Member{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "DisabledDate":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.DisabledDate = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ }
+
+ case "EnabledDate":
+ if value != nil {
+ jtv, ok := value.(json.Number)
+ if !ok {
+ return fmt.Errorf("expected Timestamp to be json.Number, got %T instead", value)
+ }
+ f64, err := jtv.Float64()
+ if err != nil {
+ return err
+ }
+ sv.EnabledDate = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ }
+
+ case "Id":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.Id = ptr.String(jtv)
+ }
+
+ case "Name":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ }
+ sv.Name = ptr.String(jtv)
+ }
+
+ case "State":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected EntityState to be of type string, got %T instead", value)
+ }
+ sv.State = types.EntityState(jtv)
+ }
+
+ case "Type":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected MemberType to be of type string, got %T instead", value)
+ }
+ sv.Type = types.MemberType(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentMembers(v *[]types.Member, 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.Member
+ if *v == nil {
+ cv = []types.Member{}
+ } else {
+ cv = *v
+ }
+
+ for _, value := range shape {
+ var col types.Member
+ destAddr := &col
+ if err := awsAwsjson11_deserializeDocumentMember(&destAddr, value); err != nil {
+ return err
+ }
+ col = *destAddr
+ cv = append(cv, col)
+
+ }
+ *v = cv
+ return nil
+}
+
+func awsAwsjson11_deserializeDocumentMobileDeviceAccessMatchedRule(v **types.MobileDeviceAccessMatchedRule, 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.MobileDeviceAccessMatchedRule
+ if *v == nil {
+ sv = &types.MobileDeviceAccessMatchedRule{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "MobileDeviceAccessRuleId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected MobileDeviceAccessRuleId to be of type string, got %T instead", value)
+ }
+ sv.MobileDeviceAccessRuleId = ptr.String(jtv)
+ }
+
+ case "Name":
if value != nil {
jtv, ok := value.(string)
if !ok {
- return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ return fmt.Errorf("expected MobileDeviceAccessRuleName to be of type string, got %T instead", value)
}
- sv.Message = ptr.String(jtv)
+ sv.Name = ptr.String(jtv)
}
default:
@@ -8000,7 +8951,7 @@ func awsAwsjson11_deserializeDocumentMailDomainNotFoundException(v **types.MailD
return nil
}
-func awsAwsjson11_deserializeDocumentMailDomainStateException(v **types.MailDomainStateException, value interface{}) error {
+func awsAwsjson11_deserializeDocumentMobileDeviceAccessMatchedRuleList(v *[]types.MobileDeviceAccessMatchedRule, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
@@ -8008,39 +8959,33 @@ func awsAwsjson11_deserializeDocumentMailDomainStateException(v **types.MailDoma
return nil
}
- shape, ok := value.(map[string]interface{})
+ shape, ok := value.([]interface{})
if !ok {
return fmt.Errorf("unexpected JSON type %v", value)
}
- var sv *types.MailDomainStateException
+ var cv []types.MobileDeviceAccessMatchedRule
if *v == nil {
- sv = &types.MailDomainStateException{}
+ cv = []types.MobileDeviceAccessMatchedRule{}
} else {
- sv = *v
+ cv = *v
}
- for key, value := range shape {
- switch key {
- case "Message":
- if value != nil {
- jtv, ok := value.(string)
- if !ok {
- return fmt.Errorf("expected String to be of type string, got %T instead", value)
- }
- sv.Message = ptr.String(jtv)
- }
-
- default:
- _, _ = key, value
-
+ for _, value := range shape {
+ var col types.MobileDeviceAccessMatchedRule
+ destAddr := &col
+ if err := awsAwsjson11_deserializeDocumentMobileDeviceAccessMatchedRule(&destAddr, value); err != nil {
+ return err
}
+ col = *destAddr
+ cv = append(cv, col)
+
}
- *v = sv
+ *v = cv
return nil
}
-func awsAwsjson11_deserializeDocumentMember(v **types.Member, value interface{}) error {
+func awsAwsjson11_deserializeDocumentMobileDeviceAccessRule(v **types.MobileDeviceAccessRule, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
@@ -8053,16 +8998,16 @@ func awsAwsjson11_deserializeDocumentMember(v **types.Member, value interface{})
return fmt.Errorf("unexpected JSON type %v", value)
}
- var sv *types.Member
+ var sv *types.MobileDeviceAccessRule
if *v == nil {
- sv = &types.Member{}
+ sv = &types.MobileDeviceAccessRule{}
} else {
sv = *v
}
for key, value := range shape {
switch key {
- case "DisabledDate":
+ case "DateCreated":
if value != nil {
jtv, ok := value.(json.Number)
if !ok {
@@ -8072,10 +9017,10 @@ func awsAwsjson11_deserializeDocumentMember(v **types.Member, value interface{})
if err != nil {
return err
}
- sv.DisabledDate = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ sv.DateCreated = ptr.Time(smithytime.ParseEpochSeconds(f64))
}
- case "EnabledDate":
+ case "DateModified":
if value != nil {
jtv, ok := value.(json.Number)
if !ok {
@@ -8085,43 +9030,83 @@ func awsAwsjson11_deserializeDocumentMember(v **types.Member, value interface{})
if err != nil {
return err
}
- sv.EnabledDate = ptr.Time(smithytime.ParseEpochSeconds(f64))
+ sv.DateModified = ptr.Time(smithytime.ParseEpochSeconds(f64))
}
- case "Id":
+ case "Description":
if value != nil {
jtv, ok := value.(string)
if !ok {
- return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ return fmt.Errorf("expected MobileDeviceAccessRuleDescription to be of type string, got %T instead", value)
}
- sv.Id = ptr.String(jtv)
+ sv.Description = ptr.String(jtv)
}
- case "Name":
+ case "DeviceModels":
+ if err := awsAwsjson11_deserializeDocumentDeviceModelList(&sv.DeviceModels, value); err != nil {
+ return err
+ }
+
+ case "DeviceOperatingSystems":
+ if err := awsAwsjson11_deserializeDocumentDeviceOperatingSystemList(&sv.DeviceOperatingSystems, value); err != nil {
+ return err
+ }
+
+ case "DeviceTypes":
+ if err := awsAwsjson11_deserializeDocumentDeviceTypeList(&sv.DeviceTypes, value); err != nil {
+ return err
+ }
+
+ case "DeviceUserAgents":
+ if err := awsAwsjson11_deserializeDocumentDeviceUserAgentList(&sv.DeviceUserAgents, value); err != nil {
+ return err
+ }
+
+ case "Effect":
if value != nil {
jtv, ok := value.(string)
if !ok {
- return fmt.Errorf("expected String to be of type string, got %T instead", value)
+ return fmt.Errorf("expected MobileDeviceAccessRuleEffect to be of type string, got %T instead", value)
}
- sv.Name = ptr.String(jtv)
+ sv.Effect = types.MobileDeviceAccessRuleEffect(jtv)
}
- case "State":
+ case "MobileDeviceAccessRuleId":
if value != nil {
jtv, ok := value.(string)
if !ok {
- return fmt.Errorf("expected EntityState to be of type string, got %T instead", value)
+ return fmt.Errorf("expected MobileDeviceAccessRuleId to be of type string, got %T instead", value)
}
- sv.State = types.EntityState(jtv)
+ sv.MobileDeviceAccessRuleId = ptr.String(jtv)
}
- case "Type":
+ case "Name":
if value != nil {
jtv, ok := value.(string)
if !ok {
- return fmt.Errorf("expected MemberType to be of type string, got %T instead", value)
+ return fmt.Errorf("expected MobileDeviceAccessRuleName to be of type string, got %T instead", value)
}
- sv.Type = types.MemberType(jtv)
+ sv.Name = ptr.String(jtv)
+ }
+
+ case "NotDeviceModels":
+ if err := awsAwsjson11_deserializeDocumentDeviceModelList(&sv.NotDeviceModels, value); err != nil {
+ return err
+ }
+
+ case "NotDeviceOperatingSystems":
+ if err := awsAwsjson11_deserializeDocumentDeviceOperatingSystemList(&sv.NotDeviceOperatingSystems, value); err != nil {
+ return err
+ }
+
+ case "NotDeviceTypes":
+ if err := awsAwsjson11_deserializeDocumentDeviceTypeList(&sv.NotDeviceTypes, value); err != nil {
+ return err
+ }
+
+ case "NotDeviceUserAgents":
+ if err := awsAwsjson11_deserializeDocumentDeviceUserAgentList(&sv.NotDeviceUserAgents, value); err != nil {
+ return err
}
default:
@@ -8133,7 +9118,7 @@ func awsAwsjson11_deserializeDocumentMember(v **types.Member, value interface{})
return nil
}
-func awsAwsjson11_deserializeDocumentMembers(v *[]types.Member, value interface{}) error {
+func awsAwsjson11_deserializeDocumentMobileDeviceAccessRulesList(v *[]types.MobileDeviceAccessRule, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
}
@@ -8146,17 +9131,17 @@ func awsAwsjson11_deserializeDocumentMembers(v *[]types.Member, value interface{
return fmt.Errorf("unexpected JSON type %v", value)
}
- var cv []types.Member
+ var cv []types.MobileDeviceAccessRule
if *v == nil {
- cv = []types.Member{}
+ cv = []types.MobileDeviceAccessRule{}
} else {
cv = *v
}
for _, value := range shape {
- var col types.Member
+ var col types.MobileDeviceAccessRule
destAddr := &col
- if err := awsAwsjson11_deserializeDocumentMember(&destAddr, value); err != nil {
+ if err := awsAwsjson11_deserializeDocumentMobileDeviceAccessRule(&destAddr, value); err != nil {
return err
}
col = *destAddr
@@ -9279,6 +10264,46 @@ func awsAwsjson11_deserializeOpDocumentCreateGroupOutput(v **CreateGroupOutput,
return nil
}
+func awsAwsjson11_deserializeOpDocumentCreateMobileDeviceAccessRuleOutput(v **CreateMobileDeviceAccessRuleOutput, 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 *CreateMobileDeviceAccessRuleOutput
+ if *v == nil {
+ sv = &CreateMobileDeviceAccessRuleOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "MobileDeviceAccessRuleId":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected MobileDeviceAccessRuleId to be of type string, got %T instead", value)
+ }
+ sv.MobileDeviceAccessRuleId = ptr.String(jtv)
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeOpDocumentCreateOrganizationOutput(v **CreateOrganizationOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -9523,6 +10548,37 @@ func awsAwsjson11_deserializeOpDocumentDeleteMailboxPermissionsOutput(v **Delete
return nil
}
+func awsAwsjson11_deserializeOpDocumentDeleteMobileDeviceAccessRuleOutput(v **DeleteMobileDeviceAccessRuleOutput, 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 *DeleteMobileDeviceAccessRuleOutput
+ if *v == nil {
+ sv = &DeleteMobileDeviceAccessRuleOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeOpDocumentDeleteOrganizationOutput(v **DeleteOrganizationOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -10501,6 +11557,51 @@ func awsAwsjson11_deserializeOpDocumentGetMailboxDetailsOutput(v **GetMailboxDet
return nil
}
+func awsAwsjson11_deserializeOpDocumentGetMobileDeviceAccessEffectOutput(v **GetMobileDeviceAccessEffectOutput, 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 *GetMobileDeviceAccessEffectOutput
+ if *v == nil {
+ sv = &GetMobileDeviceAccessEffectOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Effect":
+ if value != nil {
+ jtv, ok := value.(string)
+ if !ok {
+ return fmt.Errorf("expected MobileDeviceAccessRuleEffect to be of type string, got %T instead", value)
+ }
+ sv.Effect = types.MobileDeviceAccessRuleEffect(jtv)
+ }
+
+ case "MatchedRules":
+ if err := awsAwsjson11_deserializeDocumentMobileDeviceAccessMatchedRuleList(&sv.MatchedRules, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeOpDocumentListAccessControlRulesOutput(v **ListAccessControlRulesOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -10762,6 +11863,42 @@ func awsAwsjson11_deserializeOpDocumentListMailboxPermissionsOutput(v **ListMail
return nil
}
+func awsAwsjson11_deserializeOpDocumentListMobileDeviceAccessRulesOutput(v **ListMobileDeviceAccessRulesOutput, 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 *ListMobileDeviceAccessRulesOutput
+ if *v == nil {
+ sv = &ListMobileDeviceAccessRulesOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ case "Rules":
+ if err := awsAwsjson11_deserializeDocumentMobileDeviceAccessRulesList(&sv.Rules, value); err != nil {
+ return err
+ }
+
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeOpDocumentListOrganizationsOutput(v **ListOrganizationsOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
@@ -11266,6 +12403,37 @@ func awsAwsjson11_deserializeOpDocumentUpdateMailboxQuotaOutput(v **UpdateMailbo
return nil
}
+func awsAwsjson11_deserializeOpDocumentUpdateMobileDeviceAccessRuleOutput(v **UpdateMobileDeviceAccessRuleOutput, 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 *UpdateMobileDeviceAccessRuleOutput
+ if *v == nil {
+ sv = &UpdateMobileDeviceAccessRuleOutput{}
+ } else {
+ sv = *v
+ }
+
+ for key, value := range shape {
+ switch key {
+ default:
+ _, _ = key, value
+
+ }
+ }
+ *v = sv
+ return nil
+}
+
func awsAwsjson11_deserializeOpDocumentUpdatePrimaryEmailAddressOutput(v **UpdatePrimaryEmailAddressOutput, value interface{}) error {
if v == nil {
return fmt.Errorf("unexpected nil of type %T", v)
diff --git a/service/workmail/go.mod b/service/workmail/go.mod
index bb121f97288..9ae6a23f681 100644
--- a/service/workmail/go.mod
+++ b/service/workmail/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/workmail/go.sum b/service/workmail/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/workmail/go.sum
+++ b/service/workmail/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/workmail/serializers.go b/service/workmail/serializers.go
index 90cfdd3c6ab..e586588dc79 100644
--- a/service/workmail/serializers.go
+++ b/service/workmail/serializers.go
@@ -249,6 +249,53 @@ func (m *awsAwsjson11_serializeOpCreateGroup) HandleSerialize(ctx context.Contex
return next.HandleSerialize(ctx, in)
}
+type awsAwsjson11_serializeOpCreateMobileDeviceAccessRule struct {
+}
+
+func (*awsAwsjson11_serializeOpCreateMobileDeviceAccessRule) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_serializeOpCreateMobileDeviceAccessRule) 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.(*CreateMobileDeviceAccessRuleInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("WorkMailService.CreateMobileDeviceAccessRule")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentCreateMobileDeviceAccessRuleInput(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_serializeOpCreateOrganization struct {
}
@@ -578,6 +625,53 @@ func (m *awsAwsjson11_serializeOpDeleteMailboxPermissions) HandleSerialize(ctx c
return next.HandleSerialize(ctx, in)
}
+type awsAwsjson11_serializeOpDeleteMobileDeviceAccessRule struct {
+}
+
+func (*awsAwsjson11_serializeOpDeleteMobileDeviceAccessRule) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_serializeOpDeleteMobileDeviceAccessRule) 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.(*DeleteMobileDeviceAccessRuleInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("WorkMailService.DeleteMobileDeviceAccessRule")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentDeleteMobileDeviceAccessRuleInput(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_serializeOpDeleteOrganization struct {
}
@@ -1283,6 +1377,53 @@ func (m *awsAwsjson11_serializeOpGetMailboxDetails) HandleSerialize(ctx context.
return next.HandleSerialize(ctx, in)
}
+type awsAwsjson11_serializeOpGetMobileDeviceAccessEffect struct {
+}
+
+func (*awsAwsjson11_serializeOpGetMobileDeviceAccessEffect) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_serializeOpGetMobileDeviceAccessEffect) 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.(*GetMobileDeviceAccessEffectInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("WorkMailService.GetMobileDeviceAccessEffect")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentGetMobileDeviceAccessEffectInput(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_serializeOpListAccessControlRules struct {
}
@@ -1565,6 +1706,53 @@ func (m *awsAwsjson11_serializeOpListMailboxPermissions) HandleSerialize(ctx con
return next.HandleSerialize(ctx, in)
}
+type awsAwsjson11_serializeOpListMobileDeviceAccessRules struct {
+}
+
+func (*awsAwsjson11_serializeOpListMobileDeviceAccessRules) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_serializeOpListMobileDeviceAccessRules) 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.(*ListMobileDeviceAccessRulesInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("WorkMailService.ListMobileDeviceAccessRules")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentListMobileDeviceAccessRulesInput(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_serializeOpListOrganizations struct {
}
@@ -2223,6 +2411,53 @@ func (m *awsAwsjson11_serializeOpUpdateMailboxQuota) HandleSerialize(ctx context
return next.HandleSerialize(ctx, in)
}
+type awsAwsjson11_serializeOpUpdateMobileDeviceAccessRule struct {
+}
+
+func (*awsAwsjson11_serializeOpUpdateMobileDeviceAccessRule) ID() string {
+ return "OperationSerializer"
+}
+
+func (m *awsAwsjson11_serializeOpUpdateMobileDeviceAccessRule) 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.(*UpdateMobileDeviceAccessRuleInput)
+ _ = input
+ if !ok {
+ return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
+ }
+
+ 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("WorkMailService.UpdateMobileDeviceAccessRule")
+
+ jsonEncoder := smithyjson.NewEncoder()
+ if err := awsAwsjson11_serializeOpDocumentUpdateMobileDeviceAccessRuleInput(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_serializeOpUpdatePrimaryEmailAddress struct {
}
@@ -2349,6 +2584,50 @@ func awsAwsjson11_serializeDocumentBookingOptions(v *types.BookingOptions, value
return nil
}
+func awsAwsjson11_serializeDocumentDeviceModelList(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_serializeDocumentDeviceOperatingSystemList(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_serializeDocumentDeviceTypeList(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_serializeDocumentDeviceUserAgentList(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_serializeDocumentDomain(v *types.Domain, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -2593,6 +2872,94 @@ func awsAwsjson11_serializeOpDocumentCreateGroupInput(v *CreateGroupInput, value
return nil
}
+func awsAwsjson11_serializeOpDocumentCreateMobileDeviceAccessRuleInput(v *CreateMobileDeviceAccessRuleInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.ClientToken != nil {
+ ok := object.Key("ClientToken")
+ ok.String(*v.ClientToken)
+ }
+
+ if v.Description != nil {
+ ok := object.Key("Description")
+ ok.String(*v.Description)
+ }
+
+ if v.DeviceModels != nil {
+ ok := object.Key("DeviceModels")
+ if err := awsAwsjson11_serializeDocumentDeviceModelList(v.DeviceModels, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.DeviceOperatingSystems != nil {
+ ok := object.Key("DeviceOperatingSystems")
+ if err := awsAwsjson11_serializeDocumentDeviceOperatingSystemList(v.DeviceOperatingSystems, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.DeviceTypes != nil {
+ ok := object.Key("DeviceTypes")
+ if err := awsAwsjson11_serializeDocumentDeviceTypeList(v.DeviceTypes, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.DeviceUserAgents != nil {
+ ok := object.Key("DeviceUserAgents")
+ if err := awsAwsjson11_serializeDocumentDeviceUserAgentList(v.DeviceUserAgents, ok); err != nil {
+ return err
+ }
+ }
+
+ if len(v.Effect) > 0 {
+ ok := object.Key("Effect")
+ ok.String(string(v.Effect))
+ }
+
+ if v.Name != nil {
+ ok := object.Key("Name")
+ ok.String(*v.Name)
+ }
+
+ if v.NotDeviceModels != nil {
+ ok := object.Key("NotDeviceModels")
+ if err := awsAwsjson11_serializeDocumentDeviceModelList(v.NotDeviceModels, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.NotDeviceOperatingSystems != nil {
+ ok := object.Key("NotDeviceOperatingSystems")
+ if err := awsAwsjson11_serializeDocumentDeviceOperatingSystemList(v.NotDeviceOperatingSystems, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.NotDeviceTypes != nil {
+ ok := object.Key("NotDeviceTypes")
+ if err := awsAwsjson11_serializeDocumentDeviceTypeList(v.NotDeviceTypes, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.NotDeviceUserAgents != nil {
+ ok := object.Key("NotDeviceUserAgents")
+ if err := awsAwsjson11_serializeDocumentDeviceUserAgentList(v.NotDeviceUserAgents, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.OrganizationId != nil {
+ ok := object.Key("OrganizationId")
+ ok.String(*v.OrganizationId)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeOpDocumentCreateOrganizationInput(v *CreateOrganizationInput, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -2759,6 +3126,23 @@ func awsAwsjson11_serializeOpDocumentDeleteMailboxPermissionsInput(v *DeleteMail
return nil
}
+func awsAwsjson11_serializeOpDocumentDeleteMobileDeviceAccessRuleInput(v *DeleteMobileDeviceAccessRuleInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.MobileDeviceAccessRuleId != nil {
+ ok := object.Key("MobileDeviceAccessRuleId")
+ ok.String(*v.MobileDeviceAccessRuleId)
+ }
+
+ if v.OrganizationId != nil {
+ ok := object.Key("OrganizationId")
+ ok.String(*v.OrganizationId)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeOpDocumentDeleteOrganizationInput(v *DeleteOrganizationInput, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -3029,6 +3413,38 @@ func awsAwsjson11_serializeOpDocumentGetMailboxDetailsInput(v *GetMailboxDetails
return nil
}
+func awsAwsjson11_serializeOpDocumentGetMobileDeviceAccessEffectInput(v *GetMobileDeviceAccessEffectInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.DeviceModel != nil {
+ ok := object.Key("DeviceModel")
+ ok.String(*v.DeviceModel)
+ }
+
+ if v.DeviceOperatingSystem != nil {
+ ok := object.Key("DeviceOperatingSystem")
+ ok.String(*v.DeviceOperatingSystem)
+ }
+
+ if v.DeviceType != nil {
+ ok := object.Key("DeviceType")
+ ok.String(*v.DeviceType)
+ }
+
+ if v.DeviceUserAgent != nil {
+ ok := object.Key("DeviceUserAgent")
+ ok.String(*v.DeviceUserAgent)
+ }
+
+ if v.OrganizationId != nil {
+ ok := object.Key("OrganizationId")
+ ok.String(*v.OrganizationId)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeOpDocumentListAccessControlRulesInput(v *ListAccessControlRulesInput, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -3166,6 +3582,18 @@ func awsAwsjson11_serializeOpDocumentListMailboxPermissionsInput(v *ListMailboxP
return nil
}
+func awsAwsjson11_serializeOpDocumentListMobileDeviceAccessRulesInput(v *ListMobileDeviceAccessRulesInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.OrganizationId != nil {
+ ok := object.Key("OrganizationId")
+ ok.String(*v.OrganizationId)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeOpDocumentListOrganizationsInput(v *ListOrganizationsInput, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
@@ -3549,6 +3977,94 @@ func awsAwsjson11_serializeOpDocumentUpdateMailboxQuotaInput(v *UpdateMailboxQuo
return nil
}
+func awsAwsjson11_serializeOpDocumentUpdateMobileDeviceAccessRuleInput(v *UpdateMobileDeviceAccessRuleInput, value smithyjson.Value) error {
+ object := value.Object()
+ defer object.Close()
+
+ if v.Description != nil {
+ ok := object.Key("Description")
+ ok.String(*v.Description)
+ }
+
+ if v.DeviceModels != nil {
+ ok := object.Key("DeviceModels")
+ if err := awsAwsjson11_serializeDocumentDeviceModelList(v.DeviceModels, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.DeviceOperatingSystems != nil {
+ ok := object.Key("DeviceOperatingSystems")
+ if err := awsAwsjson11_serializeDocumentDeviceOperatingSystemList(v.DeviceOperatingSystems, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.DeviceTypes != nil {
+ ok := object.Key("DeviceTypes")
+ if err := awsAwsjson11_serializeDocumentDeviceTypeList(v.DeviceTypes, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.DeviceUserAgents != nil {
+ ok := object.Key("DeviceUserAgents")
+ if err := awsAwsjson11_serializeDocumentDeviceUserAgentList(v.DeviceUserAgents, ok); err != nil {
+ return err
+ }
+ }
+
+ if len(v.Effect) > 0 {
+ ok := object.Key("Effect")
+ ok.String(string(v.Effect))
+ }
+
+ if v.MobileDeviceAccessRuleId != nil {
+ ok := object.Key("MobileDeviceAccessRuleId")
+ ok.String(*v.MobileDeviceAccessRuleId)
+ }
+
+ if v.Name != nil {
+ ok := object.Key("Name")
+ ok.String(*v.Name)
+ }
+
+ if v.NotDeviceModels != nil {
+ ok := object.Key("NotDeviceModels")
+ if err := awsAwsjson11_serializeDocumentDeviceModelList(v.NotDeviceModels, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.NotDeviceOperatingSystems != nil {
+ ok := object.Key("NotDeviceOperatingSystems")
+ if err := awsAwsjson11_serializeDocumentDeviceOperatingSystemList(v.NotDeviceOperatingSystems, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.NotDeviceTypes != nil {
+ ok := object.Key("NotDeviceTypes")
+ if err := awsAwsjson11_serializeDocumentDeviceTypeList(v.NotDeviceTypes, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.NotDeviceUserAgents != nil {
+ ok := object.Key("NotDeviceUserAgents")
+ if err := awsAwsjson11_serializeDocumentDeviceUserAgentList(v.NotDeviceUserAgents, ok); err != nil {
+ return err
+ }
+ }
+
+ if v.OrganizationId != nil {
+ ok := object.Key("OrganizationId")
+ ok.String(*v.OrganizationId)
+ }
+
+ return nil
+}
+
func awsAwsjson11_serializeOpDocumentUpdatePrimaryEmailAddressInput(v *UpdatePrimaryEmailAddressInput, value smithyjson.Value) error {
object := value.Object()
defer object.Close()
diff --git a/service/workmail/types/enums.go b/service/workmail/types/enums.go
index e7bc191a675..cfc65d5b1f8 100644
--- a/service/workmail/types/enums.go
+++ b/service/workmail/types/enums.go
@@ -104,6 +104,24 @@ func (MemberType) Values() []MemberType {
}
}
+type MobileDeviceAccessRuleEffect string
+
+// Enum values for MobileDeviceAccessRuleEffect
+const (
+ MobileDeviceAccessRuleEffectAllow MobileDeviceAccessRuleEffect = "ALLOW"
+ MobileDeviceAccessRuleEffectDeny MobileDeviceAccessRuleEffect = "DENY"
+)
+
+// Values returns all known values for MobileDeviceAccessRuleEffect. 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 (MobileDeviceAccessRuleEffect) Values() []MobileDeviceAccessRuleEffect {
+ return []MobileDeviceAccessRuleEffect{
+ "ALLOW",
+ "DENY",
+ }
+}
+
type PermissionType string
// Enum values for PermissionType
diff --git a/service/workmail/types/types.go b/service/workmail/types/types.go
index e3ac4d8c1ea..c1a221903ad 100644
--- a/service/workmail/types/types.go
+++ b/service/workmail/types/types.go
@@ -185,6 +185,64 @@ type Member struct {
Type MemberType
}
+// The rule that a simulated user matches.
+type MobileDeviceAccessMatchedRule struct {
+
+ // Identifier of the rule that a simulated user matches.
+ MobileDeviceAccessRuleId *string
+
+ // Name of a rule that a simulated user matches.
+ Name *string
+}
+
+// A rule that controls access to mobile devices for an Amazon WorkMail group.
+type MobileDeviceAccessRule struct {
+
+ // The date and time at which an access rule was created.
+ DateCreated *time.Time
+
+ // The date and time at which an access rule was modified.
+ DateModified *time.Time
+
+ // The description of a mobile access rule.
+ Description *string
+
+ // Device models that a rule will match.
+ DeviceModels []string
+
+ // Device operating systems that a rule will match.
+ DeviceOperatingSystems []string
+
+ // Device types that a rule will match.
+ DeviceTypes []string
+
+ // Device user agents that a rule will match.
+ DeviceUserAgents []string
+
+ // The effect of the rule when it matches. Allowed values are ALLOW or DENY.
+ Effect MobileDeviceAccessRuleEffect
+
+ // The ID assigned to a mobile access rule.
+ MobileDeviceAccessRuleId *string
+
+ // The name of a mobile access rule.
+ Name *string
+
+ // Device models that a rule will not match. All other device models will match.
+ NotDeviceModels []string
+
+ // Device operating systems that a rule will not match. All other device types will
+ // match.
+ NotDeviceOperatingSystems []string
+
+ // Device types that a rule will not match. All other device types will match.
+ NotDeviceTypes []string
+
+ // Device user agents that a rule will not match. All other device user agents will
+ // match.
+ NotDeviceUserAgents []string
+}
+
// The representation of an organization.
type OrganizationSummary struct {
diff --git a/service/workmail/validators.go b/service/workmail/validators.go
index 5310b19bd70..739271b1820 100644
--- a/service/workmail/validators.go
+++ b/service/workmail/validators.go
@@ -110,6 +110,26 @@ func (m *validateOpCreateGroup) HandleInitialize(ctx context.Context, in middlew
return next.HandleInitialize(ctx, in)
}
+type validateOpCreateMobileDeviceAccessRule struct {
+}
+
+func (*validateOpCreateMobileDeviceAccessRule) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpCreateMobileDeviceAccessRule) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*CreateMobileDeviceAccessRuleInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpCreateMobileDeviceAccessRuleInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpCreateOrganization struct {
}
@@ -250,6 +270,26 @@ func (m *validateOpDeleteMailboxPermissions) HandleInitialize(ctx context.Contex
return next.HandleInitialize(ctx, in)
}
+type validateOpDeleteMobileDeviceAccessRule struct {
+}
+
+func (*validateOpDeleteMobileDeviceAccessRule) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpDeleteMobileDeviceAccessRule) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*DeleteMobileDeviceAccessRuleInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpDeleteMobileDeviceAccessRuleInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpDeleteOrganization struct {
}
@@ -550,6 +590,26 @@ func (m *validateOpGetMailboxDetails) HandleInitialize(ctx context.Context, in m
return next.HandleInitialize(ctx, in)
}
+type validateOpGetMobileDeviceAccessEffect struct {
+}
+
+func (*validateOpGetMobileDeviceAccessEffect) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpGetMobileDeviceAccessEffect) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*GetMobileDeviceAccessEffectInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpGetMobileDeviceAccessEffectInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpListAccessControlRules struct {
}
@@ -670,6 +730,26 @@ func (m *validateOpListMailboxPermissions) HandleInitialize(ctx context.Context,
return next.HandleInitialize(ctx, in)
}
+type validateOpListMobileDeviceAccessRules struct {
+}
+
+func (*validateOpListMobileDeviceAccessRules) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpListMobileDeviceAccessRules) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*ListMobileDeviceAccessRulesInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpListMobileDeviceAccessRulesInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpListResourceDelegates struct {
}
@@ -930,6 +1010,26 @@ func (m *validateOpUpdateMailboxQuota) HandleInitialize(ctx context.Context, in
return next.HandleInitialize(ctx, in)
}
+type validateOpUpdateMobileDeviceAccessRule struct {
+}
+
+func (*validateOpUpdateMobileDeviceAccessRule) ID() string {
+ return "OperationInputValidation"
+}
+
+func (m *validateOpUpdateMobileDeviceAccessRule) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
+ out middleware.InitializeOutput, metadata middleware.Metadata, err error,
+) {
+ input, ok := in.Parameters.(*UpdateMobileDeviceAccessRuleInput)
+ if !ok {
+ return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
+ }
+ if err := validateOpUpdateMobileDeviceAccessRuleInput(input); err != nil {
+ return out, metadata, err
+ }
+ return next.HandleInitialize(ctx, in)
+}
+
type validateOpUpdatePrimaryEmailAddress struct {
}
@@ -990,6 +1090,10 @@ func addOpCreateGroupValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpCreateGroup{}, middleware.After)
}
+func addOpCreateMobileDeviceAccessRuleValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpCreateMobileDeviceAccessRule{}, middleware.After)
+}
+
func addOpCreateOrganizationValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpCreateOrganization{}, middleware.After)
}
@@ -1018,6 +1122,10 @@ func addOpDeleteMailboxPermissionsValidationMiddleware(stack *middleware.Stack)
return stack.Initialize.Add(&validateOpDeleteMailboxPermissions{}, middleware.After)
}
+func addOpDeleteMobileDeviceAccessRuleValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpDeleteMobileDeviceAccessRule{}, middleware.After)
+}
+
func addOpDeleteOrganizationValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpDeleteOrganization{}, middleware.After)
}
@@ -1078,6 +1186,10 @@ func addOpGetMailboxDetailsValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpGetMailboxDetails{}, middleware.After)
}
+func addOpGetMobileDeviceAccessEffectValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpGetMobileDeviceAccessEffect{}, middleware.After)
+}
+
func addOpListAccessControlRulesValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpListAccessControlRules{}, middleware.After)
}
@@ -1102,6 +1214,10 @@ func addOpListMailboxPermissionsValidationMiddleware(stack *middleware.Stack) er
return stack.Initialize.Add(&validateOpListMailboxPermissions{}, middleware.After)
}
+func addOpListMobileDeviceAccessRulesValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpListMobileDeviceAccessRules{}, middleware.After)
+}
+
func addOpListResourceDelegatesValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpListResourceDelegates{}, middleware.After)
}
@@ -1154,6 +1270,10 @@ func addOpUpdateMailboxQuotaValidationMiddleware(stack *middleware.Stack) error
return stack.Initialize.Add(&validateOpUpdateMailboxQuota{}, middleware.After)
}
+func addOpUpdateMobileDeviceAccessRuleValidationMiddleware(stack *middleware.Stack) error {
+ return stack.Initialize.Add(&validateOpUpdateMobileDeviceAccessRule{}, middleware.After)
+}
+
func addOpUpdatePrimaryEmailAddressValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpUpdatePrimaryEmailAddress{}, middleware.After)
}
@@ -1334,6 +1454,27 @@ func validateOpCreateGroupInput(v *CreateGroupInput) error {
}
}
+func validateOpCreateMobileDeviceAccessRuleInput(v *CreateMobileDeviceAccessRuleInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "CreateMobileDeviceAccessRuleInput"}
+ if v.OrganizationId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("OrganizationId"))
+ }
+ if v.Name == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Name"))
+ }
+ if len(v.Effect) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("Effect"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpCreateOrganizationInput(v *CreateOrganizationInput) error {
if v == nil {
return nil
@@ -1472,6 +1613,24 @@ func validateOpDeleteMailboxPermissionsInput(v *DeleteMailboxPermissionsInput) e
}
}
+func validateOpDeleteMobileDeviceAccessRuleInput(v *DeleteMobileDeviceAccessRuleInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "DeleteMobileDeviceAccessRuleInput"}
+ if v.OrganizationId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("OrganizationId"))
+ }
+ if v.MobileDeviceAccessRuleId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MobileDeviceAccessRuleId"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpDeleteOrganizationInput(v *DeleteOrganizationInput) error {
if v == nil {
return nil
@@ -1745,6 +1904,21 @@ func validateOpGetMailboxDetailsInput(v *GetMailboxDetailsInput) error {
}
}
+func validateOpGetMobileDeviceAccessEffectInput(v *GetMobileDeviceAccessEffectInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "GetMobileDeviceAccessEffectInput"}
+ if v.OrganizationId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("OrganizationId"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpListAccessControlRulesInput(v *ListAccessControlRulesInput) error {
if v == nil {
return nil
@@ -1844,6 +2018,21 @@ func validateOpListMailboxPermissionsInput(v *ListMailboxPermissionsInput) error
}
}
+func validateOpListMobileDeviceAccessRulesInput(v *ListMobileDeviceAccessRulesInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "ListMobileDeviceAccessRulesInput"}
+ if v.OrganizationId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("OrganizationId"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpListResourceDelegatesInput(v *ListResourceDelegatesInput) error {
if v == nil {
return nil
@@ -2116,6 +2305,30 @@ func validateOpUpdateMailboxQuotaInput(v *UpdateMailboxQuotaInput) error {
}
}
+func validateOpUpdateMobileDeviceAccessRuleInput(v *UpdateMobileDeviceAccessRuleInput) error {
+ if v == nil {
+ return nil
+ }
+ invalidParams := smithy.InvalidParamsError{Context: "UpdateMobileDeviceAccessRuleInput"}
+ if v.OrganizationId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("OrganizationId"))
+ }
+ if v.MobileDeviceAccessRuleId == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("MobileDeviceAccessRuleId"))
+ }
+ if v.Name == nil {
+ invalidParams.Add(smithy.NewErrParamRequired("Name"))
+ }
+ if len(v.Effect) == 0 {
+ invalidParams.Add(smithy.NewErrParamRequired("Effect"))
+ }
+ if invalidParams.Len() > 0 {
+ return invalidParams
+ } else {
+ return nil
+ }
+}
+
func validateOpUpdatePrimaryEmailAddressInput(v *UpdatePrimaryEmailAddressInput) error {
if v == nil {
return nil
diff --git a/service/workmailmessageflow/go.mod b/service/workmailmessageflow/go.mod
index 2c84699bf9e..9d8e03cb384 100644
--- a/service/workmailmessageflow/go.mod
+++ b/service/workmailmessageflow/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/workmailmessageflow/go.sum b/service/workmailmessageflow/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/workmailmessageflow/go.sum
+++ b/service/workmailmessageflow/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/workspaces/go.mod b/service/workspaces/go.mod
index f2363efea08..257f03bddb5 100644
--- a/service/workspaces/go.mod
+++ b/service/workspaces/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/workspaces/go.sum b/service/workspaces/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/workspaces/go.sum
+++ b/service/workspaces/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
diff --git a/service/xray/go.mod b/service/xray/go.mod
index b1b355c6a37..f1780754669 100644
--- a/service/xray/go.mod
+++ b/service/xray/go.mod
@@ -4,7 +4,7 @@ go 1.15
require (
github.com/aws/aws-sdk-go-v2 v1.3.0
- github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa
+ github.com/aws/smithy-go v1.3.0
)
replace github.com/aws/aws-sdk-go-v2 => ../../
diff --git a/service/xray/go.sum b/service/xray/go.sum
index b8b430c5c70..3aa8f05f35e 100644
--- a/service/xray/go.sum
+++ b/service/xray/go.sum
@@ -1,6 +1,5 @@
-github.com/aws/smithy-go v1.2.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa h1:63Pm+ZJp4/4S5eVtp+C4+cnJvo4s8UZX7+0BDDmHXI8=
-github.com/aws/smithy-go v1.2.1-0.20210330205207-0917d08124fa/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
+github.com/aws/smithy-go v1.3.0 h1:awbB2OJBZ/Txj+c4q+qhDQs3Ob0sRhBuIIkOD4Aq8yc=
+github.com/aws/smithy-go v1.3.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=