From 05a7de0d5529fedd42f760205df44f0da9ca868c Mon Sep 17 00:00:00 2001 From: aws-sdk-go-automation <43143561+aws-sdk-go-automation@users.noreply.github.com> Date: Tue, 18 Oct 2022 11:23:59 -0700 Subject: [PATCH] Release v1.44.118 (2022-10-18) (#4590) Release v1.44.118 (2022-10-18) === ### Service Client Updates * `service/frauddetector`: Updates service documentation * `service/sagemaker`: Updates service API and documentation * This change allows customers to enable data capturing while running a batch transform job, and configure monitoring schedule to monitoring the captured data. * `service/servicediscovery`: Updates service API, documentation, and examples * `service/sesv2`: Updates service API and documentation --- CHANGELOG.md | 10 + aws/endpoints/defaults.go | 3 + aws/version.go | 2 +- .../apis/frauddetector/2019-11-15/docs-2.json | 8 +- .../2019-11-15/endpoint-rule-set-1.json | 315 +++++ .../2019-11-15/endpoint-tests-1.json | 355 +++++ models/apis/sagemaker/2017-07-24/api-2.json | 81 +- models/apis/sagemaker/2017-07-24/docs-2.json | 56 + .../servicediscovery/2017-03-14/api-2.json | 15 +- .../servicediscovery/2017-03-14/docs-2.json | 82 +- .../2017-03-14/endpoint-rule-set-1.json | 353 +++++ .../2017-03-14/endpoint-tests-1.json | 338 +++++ .../2017-03-14/examples-1.json | 4 +- models/apis/sesv2/2019-09-27/api-2.json | 72 +- models/apis/sesv2/2019-09-27/docs-2.json | 81 +- .../sesv2/2019-09-27/endpoint-rule-set-1.json | 315 +++++ .../sesv2/2019-09-27/endpoint-tests-1.json | 1239 +++++++++++++++++ models/endpoints/endpoints.json | 1 + service/frauddetector/api.go | 18 +- service/sagemaker/api.go | 498 ++++++- service/servicediscovery/api.go | 95 +- service/sesv2/api.go | 409 +++++- service/sesv2/sesv2iface/interface.go | 4 + 23 files changed, 4163 insertions(+), 191 deletions(-) create mode 100644 models/apis/frauddetector/2019-11-15/endpoint-rule-set-1.json create mode 100644 models/apis/frauddetector/2019-11-15/endpoint-tests-1.json create mode 100644 models/apis/servicediscovery/2017-03-14/endpoint-rule-set-1.json create mode 100644 models/apis/servicediscovery/2017-03-14/endpoint-tests-1.json create mode 100644 models/apis/sesv2/2019-09-27/endpoint-rule-set-1.json create mode 100644 models/apis/sesv2/2019-09-27/endpoint-tests-1.json diff --git a/CHANGELOG.md b/CHANGELOG.md index 93b7488069b..7a1dada221d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,13 @@ +Release v1.44.118 (2022-10-18) +=== + +### Service Client Updates +* `service/frauddetector`: Updates service documentation +* `service/sagemaker`: Updates service API and documentation + * This change allows customers to enable data capturing while running a batch transform job, and configure monitoring schedule to monitoring the captured data. +* `service/servicediscovery`: Updates service API, documentation, and examples +* `service/sesv2`: Updates service API and documentation + Release v1.44.117 (2022-10-17) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index d9aa3314a48..5db68b99ff4 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -16438,6 +16438,9 @@ var awsPartition = partition{ endpointKey{ Region: "ap-southeast-2", }: endpoint{}, + endpointKey{ + Region: "ap-southeast-3", + }: endpoint{}, endpointKey{ Region: "ca-central-1", }: endpoint{}, diff --git a/aws/version.go b/aws/version.go index 3c0c0ed1db7..114d43b455e 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.44.117" +const SDKVersion = "1.44.118" diff --git a/models/apis/frauddetector/2019-11-15/docs-2.json b/models/apis/frauddetector/2019-11-15/docs-2.json index f46903a67ff..212bac98971 100644 --- a/models/apis/frauddetector/2019-11-15/docs-2.json +++ b/models/apis/frauddetector/2019-11-15/docs-2.json @@ -525,7 +525,7 @@ "CreateDetectorVersionResult$status": "
The status of the detector version.
", "DetectorVersionSummary$status": "The detector version status.
", "GetDetectorVersionResult$status": "The status of the detector version.
", - "UpdateDetectorVersionStatusRequest$status": "The new status.
" + "UpdateDetectorVersionStatusRequest$status": "The new status.
The only supported values are ACTIVE
and INACTIVE
The encryption key ARN.
", - "PutKMSEncryptionKeyRequest$kmsEncryptionKeyArn": "The KMS encryption key ARN.
" + "PutKMSEncryptionKeyRequest$kmsEncryptionKeyArn": "The KMS encryption key ARN.
The KMS key must be single-Region key. Amazon Fraud Detector does not support multi-Region KMS key.
" } }, "Label": { @@ -1863,8 +1863,8 @@ "refs": { "BatchImport$iamRoleArn": "The ARN of the IAM role to use for this job request.
", "BatchPrediction$iamRoleArn": "The ARN of the IAM role to use for this job request.
", - "CreateBatchImportJobRequest$iamRoleArn": "The ARN of the IAM role created for Amazon S3 bucket that holds your data file. The IAM role must have read and write permissions to both input and output S3 buckets.
", - "CreateBatchPredictionJobRequest$iamRoleArn": "The ARN of the IAM role to use for this job request.
", + "CreateBatchImportJobRequest$iamRoleArn": "The ARN of the IAM role created for Amazon S3 bucket that holds your data file.
The IAM role must have read permissions to your input S3 bucket and write permissions to your output S3 bucket. For more information about bucket permissions, see User policy examples in the Amazon S3 User Guide.
", + "CreateBatchPredictionJobRequest$iamRoleArn": "The ARN of the IAM role to use for this job request.
The IAM Role must have read permissions to your input S3 bucket and write permissions to your output S3 bucket. For more information about bucket permissions, see User policy examples in the Amazon S3 User Guide.
", "ExternalEventsDetail$dataAccessRoleArn": "The ARN of the role that provides Amazon Fraud Detector access to the data location.
" } }, diff --git a/models/apis/frauddetector/2019-11-15/endpoint-rule-set-1.json b/models/apis/frauddetector/2019-11-15/endpoint-rule-set-1.json new file mode 100644 index 00000000000..cb32c664dec --- /dev/null +++ b/models/apis/frauddetector/2019-11-15/endpoint-rule-set-1.json @@ -0,0 +1,315 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": true, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://frauddetector-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://frauddetector-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://frauddetector.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://frauddetector.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] +} \ No newline at end of file diff --git a/models/apis/frauddetector/2019-11-15/endpoint-tests-1.json b/models/apis/frauddetector/2019-11-15/endpoint-tests-1.json new file mode 100644 index 00000000000..7cbe8e6d7a4 --- /dev/null +++ b/models/apis/frauddetector/2019-11-15/endpoint-tests-1.json @@ -0,0 +1,355 @@ +{ + "testCases": [ + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://frauddetector-fips.us-west-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-west-2", + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://frauddetector-fips.us-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-west-2", + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://frauddetector.us-west-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-west-2", + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://frauddetector.us-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-west-2", + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://frauddetector-fips.eu-west-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "eu-west-1", + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://frauddetector-fips.eu-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "eu-west-1", + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://frauddetector.eu-west-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "eu-west-1", + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://frauddetector.eu-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "eu-west-1", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://frauddetector-fips.ap-southeast-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-southeast-1", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://frauddetector-fips.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-southeast-1", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://frauddetector.ap-southeast-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-southeast-1", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://frauddetector.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-southeast-1", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://frauddetector-fips.ap-southeast-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-southeast-2", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://frauddetector-fips.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-southeast-2", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://frauddetector.ap-southeast-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-southeast-2", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://frauddetector.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-southeast-2", + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://frauddetector-fips.us-east-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-east-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://frauddetector-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-east-1", + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://frauddetector.us-east-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-east-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://frauddetector.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-east-1", + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://frauddetector-fips.us-east-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-east-2", + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://frauddetector-fips.us-east-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-east-2", + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://frauddetector.us-east-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-east-2", + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://frauddetector.us-east-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-east-2", + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-east-1", + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "Region": "us-east-1", + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "UseFIPS": false, + "Region": "us-east-1", + "UseDualStack": true, + "Endpoint": "https://example.com" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/models/apis/sagemaker/2017-07-24/api-2.json b/models/apis/sagemaker/2017-07-24/api-2.json index e18861c4749..1b671ee54a3 100644 --- a/models/apis/sagemaker/2017-07-24/api-2.json +++ b/models/apis/sagemaker/2017-07-24/api-2.json @@ -3911,6 +3911,15 @@ "AWS/Textract/AnalyzeDocument/Forms/V1" ] }, + "BatchDataCaptureConfig":{ + "type":"structure", + "required":["DestinationS3Uri"], + "members":{ + "DestinationS3Uri":{"shape":"S3Uri"}, + "KmsKeyId":{"shape":"KmsKeyId"}, + "GenerateInferenceId":{"shape":"Boolean"} + } + }, "BatchDescribeModelPackageError":{ "type":"structure", "required":[ @@ -3968,6 +3977,27 @@ "SingleRecord" ] }, + "BatchTransformInput":{ + "type":"structure", + "required":[ + "DataCapturedDestinationS3Uri", + "DatasetFormat", + "LocalPath" + ], + "members":{ + "DataCapturedDestinationS3Uri":{"shape":"DestinationS3Uri"}, + "DatasetFormat":{"shape":"MonitoringDatasetFormat"}, + "LocalPath":{"shape":"ProcessingLocalPath"}, + "S3InputMode":{"shape":"ProcessingS3InputMode"}, + "S3DataDistributionType":{"shape":"ProcessingS3DataDistributionType"}, + "FeaturesAttribute":{"shape":"String"}, + "InferenceAttribute":{"shape":"String"}, + "ProbabilityAttribute":{"shape":"String"}, + "ProbabilityThresholdAttribute":{"shape":"ProbabilityThresholdAttribute"}, + "StartTimeOffset":{"shape":"MonitoringTimeOffsetString"}, + "EndTimeOffset":{"shape":"MonitoringTimeOffsetString"} + } + }, "Bias":{ "type":"structure", "members":{ @@ -5898,6 +5928,7 @@ "Environment":{"shape":"TransformEnvironmentMap"}, "TransformInput":{"shape":"TransformInput"}, "TransformOutput":{"shape":"TransformOutput"}, + "DataCaptureConfig":{"shape":"BatchDataCaptureConfig"}, "TransformResources":{"shape":"TransformResources"}, "DataProcessing":{"shape":"DataProcessing"}, "Tags":{"shape":"TagList"}, @@ -6164,9 +6195,9 @@ }, "DataQualityJobInput":{ "type":"structure", - "required":["EndpointInput"], "members":{ - "EndpointInput":{"shape":"EndpointInput"} + "EndpointInput":{"shape":"EndpointInput"}, + "BatchTransformInput":{"shape":"BatchTransformInput"} } }, "DataSource":{ @@ -8095,6 +8126,7 @@ "Environment":{"shape":"TransformEnvironmentMap"}, "TransformInput":{"shape":"TransformInput"}, "TransformOutput":{"shape":"TransformOutput"}, + "DataCaptureConfig":{"shape":"BatchDataCaptureConfig"}, "TransformResources":{"shape":"TransformResources"}, "CreationTime":{"shape":"Timestamp"}, "TransformStartTime":{"shape":"Timestamp"}, @@ -12514,12 +12546,10 @@ }, "ModelBiasJobInput":{ "type":"structure", - "required":[ - "EndpointInput", - "GroundTruthS3Input" - ], + "required":["GroundTruthS3Input"], "members":{ "EndpointInput":{"shape":"EndpointInput"}, + "BatchTransformInput":{"shape":"BatchTransformInput"}, "GroundTruthS3Input":{"shape":"MonitoringGroundTruthS3Input"} } }, @@ -12591,9 +12621,9 @@ }, "ModelExplainabilityJobInput":{ "type":"structure", - "required":["EndpointInput"], "members":{ - "EndpointInput":{"shape":"EndpointInput"} + "EndpointInput":{"shape":"EndpointInput"}, + "BatchTransformInput":{"shape":"BatchTransformInput"} } }, "ModelInput":{ @@ -12951,12 +12981,10 @@ }, "ModelQualityJobInput":{ "type":"structure", - "required":[ - "EndpointInput", - "GroundTruthS3Input" - ], + "required":["GroundTruthS3Input"], "members":{ "EndpointInput":{"shape":"EndpointInput"}, + "BatchTransformInput":{"shape":"BatchTransformInput"}, "GroundTruthS3Input":{"shape":"MonitoringGroundTruthS3Input"} } }, @@ -13035,6 +13063,20 @@ "max":50, "min":1 }, + "MonitoringCsvDatasetFormat":{ + "type":"structure", + "members":{ + "Header":{"shape":"Boolean"} + } + }, + "MonitoringDatasetFormat":{ + "type":"structure", + "members":{ + "Csv":{"shape":"MonitoringCsvDatasetFormat"}, + "Json":{"shape":"MonitoringJsonDatasetFormat"}, + "Parquet":{"shape":"MonitoringParquetDatasetFormat"} + } + }, "MonitoringEnvironmentMap":{ "type":"map", "key":{"shape":"ProcessingEnvironmentKey"}, @@ -13083,9 +13125,9 @@ }, "MonitoringInput":{ "type":"structure", - "required":["EndpointInput"], "members":{ - "EndpointInput":{"shape":"EndpointInput"} + "EndpointInput":{"shape":"EndpointInput"}, + "BatchTransformInput":{"shape":"BatchTransformInput"} } }, "MonitoringInputs":{ @@ -13152,6 +13194,12 @@ "type":"list", "member":{"shape":"MonitoringJobDefinitionSummary"} }, + "MonitoringJsonDatasetFormat":{ + "type":"structure", + "members":{ + "Line":{"shape":"Boolean"} + } + }, "MonitoringMaxRuntimeInSeconds":{ "type":"integer", "max":86400, @@ -13186,6 +13234,11 @@ "max":1, "min":1 }, + "MonitoringParquetDatasetFormat":{ + "type":"structure", + "members":{ + } + }, "MonitoringProblemType":{ "type":"string", "enum":[ diff --git a/models/apis/sagemaker/2017-07-24/docs-2.json b/models/apis/sagemaker/2017-07-24/docs-2.json index 525b85becd7..a21e9abe027 100644 --- a/models/apis/sagemaker/2017-07-24/docs-2.json +++ b/models/apis/sagemaker/2017-07-24/docs-2.json @@ -1102,6 +1102,13 @@ "HumanLoopRequestSource$AwsManagedHumanLoopRequestSource": "Specifies whether Amazon Rekognition or Amazon Textract are used as the integration source. The default field settings and JSON parsing rules are different based on the integration source. Valid values:
" } }, + "BatchDataCaptureConfig": { + "base": "Configuration to control how SageMaker captures inference data for batch transform jobs.
", + "refs": { + "CreateTransformJobRequest$DataCaptureConfig": "Configuration to control how SageMaker captures inference data.
", + "DescribeTransformJobResponse$DataCaptureConfig": "Configuration to control how SageMaker captures inference data.
" + } + }, "BatchDescribeModelPackageError": { "base": "The error code and error description associated with the resource.
", "refs": { @@ -1139,6 +1146,16 @@ "TransformJobDefinition$BatchStrategy": "A string that determines the number of records included in a single mini-batch.
SingleRecord
means only one record is used per mini-batch. MultiRecord
means a mini-batch is set to contain as many records that can fit within the MaxPayloadInMB
limit.
Input object for the batch transform job.
", + "refs": { + "DataQualityJobInput$BatchTransformInput": "Input object for the batch transform job.
", + "ModelBiasJobInput$BatchTransformInput": "Input object for the batch transform job.
", + "ModelExplainabilityJobInput$BatchTransformInput": "Input object for the batch transform job.
", + "ModelQualityJobInput$BatchTransformInput": "Input object for the batch transform job.
", + "MonitoringInput$BatchTransformInput": "Input object for the batch transform job.
" + } + }, "Bias": { "base": "Contains bias metrics for a model.
", "refs": { @@ -1169,6 +1186,7 @@ "refs": { "AlgorithmSpecification$EnableSageMakerMetricsTimeSeries": "To generate and save time-series metrics during training, set to true
. The default is false
and time-series metrics aren't generated except in the following cases:
You use one of the SageMaker built-in algorithms
You use one of the following Prebuilt SageMaker Docker Images:
Tensorflow (version >= 1.15)
MXNet (version >= 1.6)
PyTorch (version >= 1.3)
You specify at least one MetricDefinition
Whether to use traffic encryption between the container layers.
", + "BatchDataCaptureConfig$GenerateInferenceId": "Flag that indicates whether to append inference id to the output.
", "ChannelSpecification$IsRequired": "Indicates whether the channel is required by the algorithm.
", "ClarifyCheckStepMetadata$SkipCheck": "This flag indicates if the drift check against the previous baseline will be skipped or not. If it is set to False
, the previous baseline of the configured check type must be available.
This flag indicates if a newly calculated baseline can be accessed through step properties BaselineUsedForDriftCheckConstraints
and BaselineUsedForDriftCheckStatistics
. If it is set to False
, the previous baseline of the configured check type must also be available. These can be accessed through the BaselineUsedForDriftCheckConstraints
property.
To encrypt all communications between ML compute instances in distributed training, choose True
. Encryption provides greater security for distributed training, but training might take longer. How long it takes depends on the amount of communication between compute instances, especially if you use a deep learning algorithm in distributed training.
A Boolean indicating whether managed spot training is enabled (True
) or not (False
).
Toggle for excluding devices deployed in other stages.
", + "MonitoringCsvDatasetFormat$Header": "Indicates if the CSV data has a header.
", + "MonitoringJsonDatasetFormat$Line": "Indicates if the file should be read as a json object per line.
", "MonitoringNetworkConfig$EnableInterContainerTrafficEncryption": "Whether to encrypt all communications between the instances used for the monitoring jobs. Choose True
to encrypt communications. Encryption provides greater security for distributed jobs, but the processing might take longer.
Whether to allow inbound and outbound network calls to and from the containers used for the monitoring job.
", "NetworkConfig$EnableInterContainerTrafficEncryption": "Whether to encrypt all communications between distributed processing jobs. Choose True
to encrypt communications. Encryption provides greater security for distributed processing jobs, but the processing might take longer.
The Amazon S3 location to upload inference responses to.
", + "BatchTransformInput$DataCapturedDestinationS3Uri": "The Amazon S3 location being used to capture the data.
", "DataCaptureConfig$DestinationS3Uri": "The Amazon S3 location used to capture the data.
", "DataCaptureConfigSummary$DestinationS3Uri": "The Amazon S3 location being used to capture the data.
", "ProductionVariantCoreDumpConfig$DestinationS3Uri": "The Amazon S3 bucket to send the core dump to.
" @@ -5980,6 +6001,7 @@ "AthenaDatasetDefinition$KmsKeyId": "The Amazon Web Services Key Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to encrypt data generated from an Athena query execution.
", "AutoMLOutputDataConfig$KmsKeyId": "The Amazon Web Services KMS encryption key ID.
", "AutoMLSecurityConfig$VolumeKmsKeyId": "The key used to encrypt stored data.
", + "BatchDataCaptureConfig$KmsKeyId": "The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service key that SageMaker uses to encrypt data on the storage volume attached to the ML compute instance that hosts the batch transform job.
The KmsKeyId can be any of the following formats:
Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab
Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
Alias name: alias/ExampleAlias
Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias
Use KmsKeyId
.
SageMaker uses Amazon Web Services KMS to encrypt the EFS volume attached to the domain with an Amazon Web Services managed key by default. For more control, specify a customer managed key.
", "CreateEdgePackagingJobRequest$ResourceKey": "The Amazon Web Services KMS key to use when encrypting the EBS volume the edge packaging job runs on.
", @@ -7744,6 +7766,18 @@ "MonitoringAppSpecification$ContainerArguments": "An array of arguments for the container used to run the monitoring job.
" } }, + "MonitoringCsvDatasetFormat": { + "base": "Represents the CSV dataset format used when running a monitoring job.
", + "refs": { + "MonitoringDatasetFormat$Csv": "The CSV dataset used in the monitoring job.
" + } + }, + "MonitoringDatasetFormat": { + "base": "Represents the dataset format used when running a monitoring job.
", + "refs": { + "BatchTransformInput$DatasetFormat": "The dataset format for your batch transform job.
" + } + }, "MonitoringEnvironmentMap": { "base": null, "refs": { @@ -7864,6 +7898,12 @@ "ListModelQualityJobDefinitionsResponse$JobDefinitionSummaries": "A list of summaries of model quality monitoring job definitions.
" } }, + "MonitoringJsonDatasetFormat": { + "base": "Represents the JSON dataset format used when running a monitoring job.
", + "refs": { + "MonitoringDatasetFormat$Json": "The JSON dataset used in the monitoring job
" + } + }, "MonitoringMaxRuntimeInSeconds": { "base": null, "refs": { @@ -7909,6 +7949,12 @@ "MonitoringOutputConfig$MonitoringOutputs": "Monitoring outputs for monitoring jobs. This is where the output of the periodic monitoring jobs is uploaded.
" } }, + "MonitoringParquetDatasetFormat": { + "base": "Represents the Parquet dataset format used when running a monitoring job.
", + "refs": { + "MonitoringDatasetFormat$Parquet": "The Parquet dataset used in the monitoring job
" + } + }, "MonitoringProblemType": { "base": null, "refs": { @@ -8033,6 +8079,8 @@ "MonitoringTimeOffsetString": { "base": null, "refs": { + "BatchTransformInput$StartTimeOffset": "If specified, monitoring jobs substract this time from the start time. For information about using offsets for scheduling monitoring jobs, see Schedule Model Quality Monitoring Jobs.
", + "BatchTransformInput$EndTimeOffset": "If specified, monitoring jobs substract this time from the end time. For information about using offsets for scheduling monitoring jobs, see Schedule Model Quality Monitoring Jobs.
", "EndpointInput$StartTimeOffset": "If specified, monitoring jobs substract this time from the start time. For information about using offsets for scheduling monitoring jobs, see Schedule Model Quality Monitoring Jobs.
", "EndpointInput$EndTimeOffset": "If specified, monitoring jobs substract this time from the end time. For information about using offsets for scheduling monitoring jobs, see Schedule Model Quality Monitoring Jobs.
" } @@ -8999,6 +9047,7 @@ "ProbabilityThresholdAttribute": { "base": null, "refs": { + "BatchTransformInput$ProbabilityThresholdAttribute": "The threshold for the class probability to be evaluated as a positive result.
", "EndpointInput$ProbabilityThresholdAttribute": "The threshold for the class probability to be evaluated as a positive result.
" } }, @@ -9139,6 +9188,7 @@ "ProcessingLocalPath": { "base": null, "refs": { + "BatchTransformInput$LocalPath": "Path to the filesystem where the batch transform data is available to the container.
", "DatasetDefinition$LocalPath": "The local path where you want Amazon SageMaker to download the Dataset Definition inputs to run a processing job. LocalPath
is an absolute path to the input data. This is a required parameter when AppManaged
is False
(default).
Path to the filesystem where the endpoint data is available to the container.
", "MonitoringS3Output$LocalPath": "The local path to the Amazon S3 storage location where Amazon SageMaker saves the results of a monitoring job. LocalPath is an absolute path for the output data.
", @@ -9189,6 +9239,7 @@ "ProcessingS3DataDistributionType": { "base": null, "refs": { + "BatchTransformInput$S3DataDistributionType": "Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defaults to FullyReplicated
Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defaults to FullyReplicated
Whether to distribute the data from Amazon S3 to all processing instances with FullyReplicated
, or whether the data from Amazon S3 is shared by Amazon S3 key, downloading one shard of data to each processing instance.
Whether the Pipe
or File
is used as the input mode for transferring data for the monitoring job. Pipe
mode is recommended for large datasets. File
mode is useful for small files that fit in memory. Defaults to File
.
Whether the Pipe
or File
is used as the input mode for transferring data for the monitoring job. Pipe
mode is recommended for large datasets. File
mode is useful for small files that fit in memory. Defaults to File
.
Whether to use File
or Pipe
input mode. In File mode, Amazon SageMaker copies the data from the input source onto the local ML storage volume before starting your processing container. This is the most commonly used input mode. In Pipe
mode, Amazon SageMaker streams input data from the source directly to your processing container into named pipes without using the ML storage volume.
A URL to the Amazon S3 data source containing selected features from the input data source to run an Autopilot job. You can input FeatureAttributeNames
(optional) in JSON format as shown below:
{ \"FeatureAttributeNames\":[\"col1\", \"col2\", ...] }
.
You can also specify the data type of the feature (optional) in the format shown below:
{ \"FeatureDataTypes\":{\"col1\":\"numeric\", \"col2\":\"categorical\" ... } }
These column keys may not include the target column.
In ensembling mode, Autopilot will only support the following data types: numeric
, categorical
, text
and datetime
. In HPO mode, Autopilot can support numeric
, categorical
, text
, datetime
and sequence
.
If only FeatureDataTypes
is provided, the column keys (col1
, col2
,..) should be a subset of the column names in the input data.
If both FeatureDataTypes
and FeatureAttributeNames
are provided, then the column keys should be a subset of the column names provided in FeatureAttributeNames
.
The key name FeatureAttributeNames
is fixed. The values listed in [\"col1\", \"col2\", ...]
is case sensitive and should be a list of strings containing unique values that are a subset of the column names in the input data. The list of columns provided must not include the target column.
The Amazon S3 output path. Must be 128 characters or less.
", "AutoMLS3DataSource$S3Uri": "The URL to the Amazon S3 data source.
", + "BatchDataCaptureConfig$DestinationS3Uri": "The Amazon S3 location being used to capture the data.
", "CheckpointConfig$S3Uri": "Identifies the S3 path where you want SageMaker to store checkpoints. For example, s3://bucket-name/key-name-prefix
.
The S3 URI of the file, referred to as a label category configuration file, that defines the categories used to label the data objects.
For 3D point cloud and video frame task types, you can add label category attributes and frame attributes to your label category configuration file. To learn how, see Create a Labeling Category Configuration File for 3D Point Cloud Labeling Jobs.
For named entity recognition jobs, in addition to \"labels\"
, you must provide worker instructions in the label category configuration file using the \"instructions\"
parameter: \"instructions\": {\"shortInstruction\":\"<h1>Add header</h1><p>Add Instructions</p>\", \"fullInstruction\":\"<p>Add additional instructions.</p>\"}
. For details and an example, see Create a Named Entity Recognition Labeling Job (API) .
For all other built-in task types and custom tasks, your label category configuration file must be a JSON file in the following format. Identify the labels you want to use by replacing label_1
, label_2
,...
,label_n
with your label categories.
{
\"document-version\": \"2018-11-28\",
\"labels\": [{\"label\": \"label_1\"},{\"label\": \"label_2\"},...{\"label\": \"label_n\"}]
}
Note the following about the label category configuration file:
For image classification and text classification (single and multi-label) you must specify at least two label categories. For all other task types, the minimum number of label categories required is one.
Each label category must be unique, you cannot specify duplicate label categories.
If you create a 3D point cloud or video frame adjustment or verification labeling job, you must include auditLabelAttributeName
in the label category configuration. Use this parameter to enter the LabelAttributeName
of the labeling job you want to adjust or verify annotations of.
The Amazon Simple Storage Service (Amazon S3) path where the sample payload are stored. This path must point to a single gzip compressed tar archive (.tar.gz suffix).
", @@ -10716,6 +10769,9 @@ "AlgorithmStatusItem$FailureReason": "if the overall status is Failed
, the reason for the failure.
The attributes of the input data that are the input features.
", + "BatchTransformInput$InferenceAttribute": "The attribute of the input data that represents the ground truth label.
", + "BatchTransformInput$ProbabilityAttribute": "In a classification problem, the attribute that represents the class probability.
", "CreateModelPackageInput$Domain": "The machine learning domain of your model package and its components. Common machine learning domains include computer vision and natural language processing.
", "CreateModelPackageInput$Task": "The machine learning task your model package accomplishes. Common machine learning tasks include object detection and image classification. The following tasks are supported by Inference Recommender: \"IMAGE_CLASSIFICATION\"
| \"OBJECT_DETECTION\"
| \"TEXT_GENERATION\"
|\"IMAGE_SEGMENTATION\"
| \"FILL_MASK\"
| \"CLASSIFICATION\"
| \"REGRESSION\"
| \"OTHER\"
.
Specify \"OTHER\" if none of the tasks listed fit your use case.
", "DescribeEdgePackagingJobResponse$EdgePackagingJobStatusMessage": "Returns a message describing the job status and error messages.
", diff --git a/models/apis/servicediscovery/2017-03-14/api-2.json b/models/apis/servicediscovery/2017-03-14/api-2.json index 99f4f4a6cb6..11a508578c8 100644 --- a/models/apis/servicediscovery/2017-03-14/api-2.json +++ b/models/apis/servicediscovery/2017-03-14/api-2.json @@ -640,7 +640,8 @@ "enum":[ "EQ", "IN", - "BETWEEN" + "BETWEEN", + "BEGINS_WITH" ] }, "FilterValue":{ @@ -962,7 +963,11 @@ }, "NamespaceFilterName":{ "type":"string", - "enum":["TYPE"] + "enum":[ + "TYPE", + "NAME", + "HTTP_NAME" + ] }, "NamespaceFilters":{ "type":"list", @@ -979,12 +984,12 @@ }, "NamespaceNamePrivate":{ "type":"string", - "max":1024, - "pattern":"^[!-~]{1,1024}$" + "max":253, + "pattern":"^[!-~]{1,253}$" }, "NamespaceNamePublic":{ "type":"string", - "max":1024, + "max":253, "pattern":"^([a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?\\.)+[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?$" }, "NamespaceNotFound":{ diff --git a/models/apis/servicediscovery/2017-03-14/docs-2.json b/models/apis/servicediscovery/2017-03-14/docs-2.json index cf5751d818f..33093418e0a 100644 --- a/models/apis/servicediscovery/2017-03-14/docs-2.json +++ b/models/apis/servicediscovery/2017-03-14/docs-2.json @@ -2,13 +2,13 @@ "version": "2.0", "service": "With Cloud Map, you can configure public DNS, private DNS, or HTTP namespaces that your microservice applications run in. When an instance becomes available, you can call the Cloud Map API to register the instance with Cloud Map. For public or private DNS namespaces, Cloud Map automatically creates DNS records and an optional health check. Clients that submit public or private DNS queries, or HTTP requests, for the service receive an answer that contains up to eight healthy records.
", "operations": { - "CreateHttpNamespace": "Creates an HTTP namespace. Service instances registered using an HTTP namespace can be discovered using a DiscoverInstances
request but can't be discovered using DNS.
For the current quota on the number of namespaces that you can create using the same account, see Cloud Map quotas in the Cloud Map Developer Guide.
", - "CreatePrivateDnsNamespace": "Creates a private namespace based on DNS, which is visible only inside a specified Amazon VPC. The namespace defines your service naming scheme. For example, if you name your namespace example.com
and name your service backend
, the resulting DNS name for the service is backend.example.com
. Service instances that are registered using a private DNS namespace can be discovered using either a DiscoverInstances
request or using DNS. For the current quota on the number of namespaces that you can create using the same account, see Cloud Map quotas in the Cloud Map Developer Guide.
Creates a public namespace based on DNS, which is visible on the internet. The namespace defines your service naming scheme. For example, if you name your namespace example.com
and name your service backend
, the resulting DNS name for the service is backend.example.com
. You can discover instances that were registered with a public DNS namespace by using either a DiscoverInstances
request or using DNS. For the current quota on the number of namespaces that you can create using the same account, see Cloud Map quotas in the Cloud Map Developer Guide.
Creates a service. This action defines the configuration for the following entities:
For public and private DNS namespaces, one of the following combinations of DNS records in Amazon Route 53:
A
AAAA
A
and AAAA
SRV
CNAME
Optionally, a health check
After you create the service, you can submit a RegisterInstance request, and Cloud Map uses the values in the configuration to create the specified entities.
For the current quota on the number of instances that you can register using the same namespace and using the same service, see Cloud Map quotas in the Cloud Map Developer Guide.
", + "CreateHttpNamespace": "Creates an HTTP namespace. Service instances registered using an HTTP namespace can be discovered using a DiscoverInstances
request but can't be discovered using DNS.
For the current quota on the number of namespaces that you can create using the same Amazon Web Services account, see Cloud Map quotas in the Cloud Map Developer Guide.
", + "CreatePrivateDnsNamespace": "Creates a private namespace based on DNS, which is visible only inside a specified Amazon VPC. The namespace defines your service naming scheme. For example, if you name your namespace example.com
and name your service backend
, the resulting DNS name for the service is backend.example.com
. Service instances that are registered using a private DNS namespace can be discovered using either a DiscoverInstances
request or using DNS. For the current quota on the number of namespaces that you can create using the same Amazon Web Services account, see Cloud Map quotas in the Cloud Map Developer Guide.
Creates a public namespace based on DNS, which is visible on the internet. The namespace defines your service naming scheme. For example, if you name your namespace example.com
and name your service backend
, the resulting DNS name for the service is backend.example.com
. You can discover instances that were registered with a public DNS namespace by using either a DiscoverInstances
request or using DNS. For the current quota on the number of namespaces that you can create using the same Amazon Web Services account, see Cloud Map quotas in the Cloud Map Developer Guide.
The CreatePublicDnsNamespace
API operation is not supported in the Amazon Web Services GovCloud (US) Regions.
Creates a service. This action defines the configuration for the following entities:
For public and private DNS namespaces, one of the following combinations of DNS records in Amazon Route 53:
A
AAAA
A
and AAAA
SRV
CNAME
Optionally, a health check
After you create the service, you can submit a RegisterInstance request, and Cloud Map uses the values in the configuration to create the specified entities.
For the current quota on the number of instances that you can register using the same namespace and using the same service, see Cloud Map quotas in the Cloud Map Developer Guide.
", "DeleteNamespace": "Deletes a namespace from the current account. If the namespace still contains one or more services, the request fails.
", "DeleteService": "Deletes a specified service. If the service still contains one or more registered instances, the request fails.
", - "DeregisterInstance": "Deletes the Amazon Route 53 DNS records and health check, if any, that Cloud Map created for the specified instance.
", + "DeregisterInstance": "Deletes the Amazon Route 53 DNS records and health check, if any, that Cloud Map created for the specified instance.
", "DiscoverInstances": "Discovers registered instances for a specified namespace and service. You can use DiscoverInstances
to discover instances for any type of namespace. For public and private DNS namespaces, you can also use DNS queries to discover instances.
Gets information about a specified instance.
", "GetInstancesHealthStatus": "Gets the current health status (Healthy
, Unhealthy
, or Unknown
) of one or more instances that are associated with a specified service.
There's a brief delay between when you register an instance and when the health status for the instance is available.
Gets information about any operation that returns an operation ID in the response, such as a CreateService
request.
To get a list of operations that match specified criteria, see ListOperations.
Gets the settings for a specified service.
", "ListInstances": "Lists summary information about the instances that you registered by using a specified service.
", - "ListNamespaces": "Lists summary information about the namespaces that were created by the current account.
", + "ListNamespaces": "Lists summary information about the namespaces that were created by the current Amazon Web Services account.
", "ListOperations": "Lists operations that match the criteria that you specify.
", "ListServices": "Lists summary information for all the services that are associated with one or more specified namespaces.
", "ListTagsForResource": "Lists tags for the specified resource.
", @@ -24,7 +24,7 @@ "TagResource": "Adds one or more tags to the specified resource.
", "UntagResource": "Removes one or more tags from the specified resource.
", "UpdateHttpNamespace": "Updates an HTTP namespace.
", - "UpdateInstanceCustomHealthStatus": "Submits a request to change the health status of a custom health check to healthy or unhealthy.
You can use UpdateInstanceCustomHealthStatus
to change the status only for custom health checks, which you define using HealthCheckCustomConfig
when you create a service. You can't use it to change the status for Route 53 health checks, which you define using HealthCheckConfig
.
For more information, see HealthCheckCustomConfig.
", + "UpdateInstanceCustomHealthStatus": "Submits a request to change the health status of a custom health check to healthy or unhealthy.
You can use UpdateInstanceCustomHealthStatus
to change the status only for custom health checks, which you define using HealthCheckCustomConfig
when you create a service. You can't use it to change the status for Route 53 health checks, which you define using HealthCheckConfig
.
For more information, see HealthCheckCustomConfig.
", "UpdatePrivateDnsNamespace": "Updates a private DNS namespace.
", "UpdatePublicDnsNamespace": "Updates a public DNS namespace.
", "UpdateService": "Submits a request to perform the following operations:
Update the TTL setting for existing DnsRecords
configurations
Add, update, or delete HealthCheckConfig
for a specified service
You can't add, update, or delete a HealthCheckCustomConfig
configuration.
For public and private DNS namespaces, note the following:
If you omit any existing DnsRecords
or HealthCheckConfig
configurations from an UpdateService
request, the configurations are deleted from the service.
If you omit an existing HealthCheckCustomConfig
configuration from an UpdateService
request, the configuration isn't deleted from the service.
When you update settings for a service, Cloud Map also updates the corresponding settings in all the records and health checks that were created by using the specified service.
" @@ -66,9 +66,9 @@ "DiscoverInstancesRequest$QueryParameters": "Filters to scope the results based on custom attributes for the instance (for example, {version=v1, az=1a}
). Only instances that match all the specified key-value pairs are returned.
Opportunistic filters to scope the results based on custom attributes. If there are instances that match both the filters specified in both the QueryParameters
parameter and this parameter, all of these instances are returned. Otherwise, the filters are ignored, and only instances that match the filters that are specified in the QueryParameters
parameter are returned.
If you included any attributes when you registered the instance, the values of those attributes.
", - "Instance$Attributes": "A string map that contains the following information for the service that you specify in ServiceId
:
The attributes that apply to the records that are defined in the service.
For each attribute, the applicable value.
Supported attribute keys include the following:
If you want Cloud Map to create a Route 53 alias record that routes traffic to an Elastic Load Balancing load balancer, specify the DNS name that's associated with the load balancer. For information about how to get the DNS name, see AliasTarget->DNSName in the Route 53 API Reference.
Note the following:
The configuration for the service that's specified by ServiceId
must include settings for an A
record, an AAAA
record, or both.
In the service that's specified by ServiceId
, the value of RoutingPolicy
must be WEIGHTED
.
If the service that's specified by ServiceId
includes HealthCheckConfig
settings, Cloud Map creates the health check, but it won't associate the health check with the alias record.
Auto naming currently doesn't support creating alias records that route traffic to Amazon Web Services resources other than ELB load balancers.
If you specify a value for AWS_ALIAS_DNS_NAME
, don't specify values for any of the AWS_INSTANCE
attributes.
HTTP namespaces only. The Amazon EC2 instance ID for the instance. The AWS_INSTANCE_IPV4
attribute contains the primary private IPv4 address.
If the service configuration includes HealthCheckCustomConfig
, you can optionally use AWS_INIT_HEALTH_STATUS
to specify the initial status of the custom health check, HEALTHY
or UNHEALTHY
. If you don't specify a value for AWS_INIT_HEALTH_STATUS
, the initial status is HEALTHY
.
If the service configuration includes a CNAME
record, the domain name that you want Route 53 to return in response to DNS queries (for example, example.com
).
This value is required if the service specified by ServiceId
includes settings for an CNAME
record.
If the service configuration includes an A
record, the IPv4 address that you want Route 53 to return in response to DNS queries (for example, 192.0.2.44
).
This value is required if the service specified by ServiceId
includes settings for an A
record. If the service includes settings for an SRV
record, you must specify a value for AWS_INSTANCE_IPV4
, AWS_INSTANCE_IPV6
, or both.
If the service configuration includes an AAAA
record, the IPv6 address that you want Route 53 to return in response to DNS queries (for example, 2001:0db8:85a3:0000:0000:abcd:0001:2345
).
This value is required if the service specified by ServiceId
includes settings for an AAAA
record. If the service includes settings for an SRV
record, you must specify a value for AWS_INSTANCE_IPV4
, AWS_INSTANCE_IPV6
, or both.
If the service includes an SRV
record, the value that you want Route 53 to return for the port.
If the service includes HealthCheckConfig
, the port on the endpoint that you want Route 53 to send requests to.
This value is required if you specified settings for an SRV
record or a Route 53 health check when you created the service.
A string map that contains the following information:
The attributes that are associated with the instance.
For each attribute, the applicable value.
Supported attribute keys include the following:
For an alias record that routes traffic to an Elastic Load Balancing load balancer, the DNS name that's associated with the load balancer.
The Amazon EC2 instance ID for the instance. When the AWS_EC2_INSTANCE_ID
attribute is specified, then the AWS_INSTANCE_IPV4
attribute contains the primary private IPv4 address.
If the service configuration includes HealthCheckCustomConfig
, you can optionally use AWS_INIT_HEALTH_STATUS
to specify the initial status of the custom health check, HEALTHY
or UNHEALTHY
. If you don't specify a value for AWS_INIT_HEALTH_STATUS
, the initial status is HEALTHY
.
For a CNAME
record, the domain name that Route 53 returns in response to DNS queries (for example, example.com
).
For an A
record, the IPv4 address that Route 53 returns in response to DNS queries (for example, 192.0.2.44
).
For an AAAA
record, the IPv6 address that Route 53 returns in response to DNS queries (for example, 2001:0db8:85a3:0000:0000:abcd:0001:2345
).
For an SRV
record, the value that Route 53 returns for the port. In addition, if the service includes HealthCheckConfig
, the port on the endpoint that Route 53 sends requests to.
A string map that contains the following information for the service that you specify in ServiceId
:
The attributes that apply to the records that are defined in the service.
For each attribute, the applicable value.
Supported attribute keys include the following:
If you want Cloud Map to create an Amazon Route 53 alias record that routes traffic to an Elastic Load Balancing load balancer, specify the DNS name that's associated with the load balancer. For information about how to get the DNS name, see \"DNSName\" in the topic AliasTarget in the Route 53 API Reference.
Note the following:
The configuration for the service that's specified by ServiceId
must include settings for an A
record, an AAAA
record, or both.
In the service that's specified by ServiceId
, the value of RoutingPolicy
must be WEIGHTED
.
If the service that's specified by ServiceId
includes HealthCheckConfig
settings, Cloud Map will create the Route 53 health check, but it doesn't associate the health check with the alias record.
Auto naming currently doesn't support creating alias records that route traffic to Amazon Web Services resources other than Elastic Load Balancing load balancers.
If you specify a value for AWS_ALIAS_DNS_NAME
, don't specify values for any of the AWS_INSTANCE
attributes.
HTTP namespaces only. The Amazon EC2 instance ID for the instance. If the AWS_EC2_INSTANCE_ID
attribute is specified, then the only other attribute that can be specified is AWS_INIT_HEALTH_STATUS
. When the AWS_EC2_INSTANCE_ID
attribute is specified, then the AWS_INSTANCE_IPV4
attribute will be filled out with the primary private IPv4 address.
If the service configuration includes HealthCheckCustomConfig
, you can optionally use AWS_INIT_HEALTH_STATUS
to specify the initial status of the custom health check, HEALTHY
or UNHEALTHY
. If you don't specify a value for AWS_INIT_HEALTH_STATUS
, the initial status is HEALTHY
.
If the service configuration includes a CNAME
record, the domain name that you want Route 53 to return in response to DNS queries (for example, example.com
).
This value is required if the service specified by ServiceId
includes settings for an CNAME
record.
If the service configuration includes an A
record, the IPv4 address that you want Route 53 to return in response to DNS queries (for example, 192.0.2.44
).
This value is required if the service specified by ServiceId
includes settings for an A
record. If the service includes settings for an SRV
record, you must specify a value for AWS_INSTANCE_IPV4
, AWS_INSTANCE_IPV6
, or both.
If the service configuration includes an AAAA
record, the IPv6 address that you want Route 53 to return in response to DNS queries (for example, 2001:0db8:85a3:0000:0000:abcd:0001:2345
).
This value is required if the service specified by ServiceId
includes settings for an AAAA
record. If the service includes settings for an SRV
record, you must specify a value for AWS_INSTANCE_IPV4
, AWS_INSTANCE_IPV6
, or both.
If the service includes an SRV
record, the value that you want Route 53 to return for the port.
If the service includes HealthCheckConfig
, the port on the endpoint that you want Route 53 to send requests to.
This value is required if you specified settings for an SRV
record or a Route 53 health check when you created the service.
You can add up to 30 custom attributes. For each key-value pair, the maximum length of the attribute name is 255 characters, and the maximum length of the attribute value is 1,024 characters. The total size of all provided attributes (sum of all keys and values) must not exceed 5,000 characters.
A string map that contains the following information for the service that you specify in ServiceId
:
The attributes that apply to the records that are defined in the service.
For each attribute, the applicable value.
Do not include sensitive information in the attributes if the namespace is discoverable by public DNS queries.
Supported attribute keys include the following:
If you want Cloud Map to create a Route 53 alias record that routes traffic to an Elastic Load Balancing load balancer, specify the DNS name that's associated with the load balancer. For information about how to get the DNS name, see AliasTarget->DNSName in the Route 53 API Reference.
Note the following:
The configuration for the service that's specified by ServiceId
must include settings for an A
record, an AAAA
record, or both.
In the service that's specified by ServiceId
, the value of RoutingPolicy
must be WEIGHTED
.
If the service that's specified by ServiceId
includes HealthCheckConfig
settings, Cloud Map creates the health check, but it won't associate the health check with the alias record.
Auto naming currently doesn't support creating alias records that route traffic to Amazon Web Services resources other than ELB load balancers.
If you specify a value for AWS_ALIAS_DNS_NAME
, don't specify values for any of the AWS_INSTANCE
attributes.
HTTP namespaces only. The Amazon EC2 instance ID for the instance. The AWS_INSTANCE_IPV4
attribute contains the primary private IPv4 address.
If the service configuration includes HealthCheckCustomConfig
, you can optionally use AWS_INIT_HEALTH_STATUS
to specify the initial status of the custom health check, HEALTHY
or UNHEALTHY
. If you don't specify a value for AWS_INIT_HEALTH_STATUS
, the initial status is HEALTHY
.
If the service configuration includes a CNAME
record, the domain name that you want Route 53 to return in response to DNS queries (for example, example.com
).
This value is required if the service specified by ServiceId
includes settings for an CNAME
record.
If the service configuration includes an A
record, the IPv4 address that you want Route 53 to return in response to DNS queries (for example, 192.0.2.44
).
This value is required if the service specified by ServiceId
includes settings for an A
record. If the service includes settings for an SRV
record, you must specify a value for AWS_INSTANCE_IPV4
, AWS_INSTANCE_IPV6
, or both.
If the service configuration includes an AAAA
record, the IPv6 address that you want Route 53 to return in response to DNS queries (for example, 2001:0db8:85a3:0000:0000:abcd:0001:2345
).
This value is required if the service specified by ServiceId
includes settings for an AAAA
record. If the service includes settings for an SRV
record, you must specify a value for AWS_INSTANCE_IPV4
, AWS_INSTANCE_IPV6
, or both.
If the service includes an SRV
record, the value that you want Route 53 to return for the port.
If the service includes HealthCheckConfig
, the port on the endpoint that you want Route 53 to send requests to.
This value is required if you specified settings for an SRV
record or a Route 53 health check when you created the service.
A string map that contains the following information:
The attributes that are associated with the instance.
For each attribute, the applicable value.
Supported attribute keys include the following:
For an alias record that routes traffic to an Elastic Load Balancing load balancer, the DNS name that's associated with the load balancer.
The Amazon EC2 instance ID for the instance. When the AWS_EC2_INSTANCE_ID
attribute is specified, then the AWS_INSTANCE_IPV4
attribute contains the primary private IPv4 address.
If the service configuration includes HealthCheckCustomConfig
, you can optionally use AWS_INIT_HEALTH_STATUS
to specify the initial status of the custom health check, HEALTHY
or UNHEALTHY
. If you don't specify a value for AWS_INIT_HEALTH_STATUS
, the initial status is HEALTHY
.
For a CNAME
record, the domain name that Route 53 returns in response to DNS queries (for example, example.com
).
For an A
record, the IPv4 address that Route 53 returns in response to DNS queries (for example, 192.0.2.44
).
For an AAAA
record, the IPv6 address that Route 53 returns in response to DNS queries (for example, 2001:0db8:85a3:0000:0000:abcd:0001:2345
).
For an SRV
record, the value that Route 53 returns for the port. In addition, if the service includes HealthCheckConfig
, the port on the endpoint that Route 53 sends requests to.
A string map that contains the following information for the service that you specify in ServiceId
:
The attributes that apply to the records that are defined in the service.
For each attribute, the applicable value.
Do not include sensitive information in the attributes if the namespace is discoverable by public DNS queries.
Supported attribute keys include the following:
If you want Cloud Map to create an Amazon Route 53 alias record that routes traffic to an Elastic Load Balancing load balancer, specify the DNS name that's associated with the load balancer. For information about how to get the DNS name, see \"DNSName\" in the topic AliasTarget in the Route 53 API Reference.
Note the following:
The configuration for the service that's specified by ServiceId
must include settings for an A
record, an AAAA
record, or both.
In the service that's specified by ServiceId
, the value of RoutingPolicy
must be WEIGHTED
.
If the service that's specified by ServiceId
includes HealthCheckConfig
settings, Cloud Map will create the Route 53 health check, but it doesn't associate the health check with the alias record.
Auto naming currently doesn't support creating alias records that route traffic to Amazon Web Services resources other than Elastic Load Balancing load balancers.
If you specify a value for AWS_ALIAS_DNS_NAME
, don't specify values for any of the AWS_INSTANCE
attributes.
HTTP namespaces only. The Amazon EC2 instance ID for the instance. If the AWS_EC2_INSTANCE_ID
attribute is specified, then the only other attribute that can be specified is AWS_INIT_HEALTH_STATUS
. When the AWS_EC2_INSTANCE_ID
attribute is specified, then the AWS_INSTANCE_IPV4
attribute will be filled out with the primary private IPv4 address.
If the service configuration includes HealthCheckCustomConfig
, you can optionally use AWS_INIT_HEALTH_STATUS
to specify the initial status of the custom health check, HEALTHY
or UNHEALTHY
. If you don't specify a value for AWS_INIT_HEALTH_STATUS
, the initial status is HEALTHY
.
If the service configuration includes a CNAME
record, the domain name that you want Route 53 to return in response to DNS queries (for example, example.com
).
This value is required if the service specified by ServiceId
includes settings for an CNAME
record.
If the service configuration includes an A
record, the IPv4 address that you want Route 53 to return in response to DNS queries (for example, 192.0.2.44
).
This value is required if the service specified by ServiceId
includes settings for an A
record. If the service includes settings for an SRV
record, you must specify a value for AWS_INSTANCE_IPV4
, AWS_INSTANCE_IPV6
, or both.
If the service configuration includes an AAAA
record, the IPv6 address that you want Route 53 to return in response to DNS queries (for example, 2001:0db8:85a3:0000:0000:abcd:0001:2345
).
This value is required if the service specified by ServiceId
includes settings for an AAAA
record. If the service includes settings for an SRV
record, you must specify a value for AWS_INSTANCE_IPV4
, AWS_INSTANCE_IPV6
, or both.
If the service includes an SRV
record, the value that you want Route 53 to return for the port.
If the service includes HealthCheckConfig
, the port on the endpoint that you want Route 53 to send requests to.
This value is required if you specified settings for an SRV
record or a Route 53 health check when you created the service.
You can add up to 30 custom attributes. For each key-value pair, the maximum length of the attribute name is 255 characters, and the maximum length of the attribute value is 1,024 characters. The total size of all provided attributes (sum of all keys and values) must not exceed 5,000 characters.
A complex type that contains information about the Amazon Route 53 DNS records that you want Cloud Map to create when you register an instance.
", + "base": "A complex type that contains information about the Amazon Route 53 DNS records that you want Cloud Map to create when you register an instance.
The record types of a service can only be changed by deleting the service and recreating it with a new Dnsconfig
.
A complex type that contains information about the Amazon Route 53 records that you want Cloud Map to create when you register an instance.
", - "Service$DnsConfig": "A complex type that contains information about the Route 53 DNS records that you want Cloud Map to create when you register an instance.
", - "ServiceSummary$DnsConfig": "Information about the Route 53 DNS records that you want Cloud Map to create when you register an instance.
" + "CreateServiceRequest$DnsConfig": "A complex type that contains information about the Amazon Route 53 records that you want Cloud Map to create when you register an instance.
", + "Service$DnsConfig": "A complex type that contains information about the Route 53 DNS records that you want Cloud Map to create when you register an instance.
The record types of a service can only be changed by deleting the service and recreating it with a new Dnsconfig
.
Information about the Route 53 DNS records that you want Cloud Map to create when you register an instance.
" } }, "DnsConfigChange": { - "base": "A complex type that contains information about changes to the Route 53 DNS records that Cloud Map creates when you register an instance.
", + "base": "A complex type that contains information about changes to the Route 53 DNS records that Cloud Map creates when you register an instance.
", "refs": { - "ServiceChange$DnsConfig": "Information about the Route 53 DNS records that you want Cloud Map to create when you register an instance.
" + "ServiceChange$DnsConfig": "Information about the Route 53 DNS records that you want Cloud Map to create when you register an instance.
" } }, "DnsProperties": { - "base": "A complex type that contains the ID for the Route 53 hosted zone that Cloud Map creates when you create a namespace.
", + "base": "A complex type that contains the ID for the Route 53 hosted zone that Cloud Map creates when you create a namespace.
", "refs": { - "NamespaceProperties$DnsProperties": "A complex type that contains the ID for the Route 53 hosted zone that Cloud Map creates when you create a namespace.
" + "NamespaceProperties$DnsProperties": "A complex type that contains the ID for the Route 53 hosted zone that Cloud Map creates when you create a namespace.
" } }, "DnsRecord": { - "base": "A complex type that contains information about the Route 53 DNS records that you want Cloud Map to create when you register an instance.
", + "base": "A complex type that contains information about the Route 53 DNS records that you want Cloud Map to create when you register an instance.
", "refs": { "DnsRecordList$member": null } @@ -203,8 +203,8 @@ "DnsRecordList": { "base": null, "refs": { - "DnsConfig$DnsRecords": "An array that contains one DnsRecord
object for each Route 53 DNS record that you want Cloud Map to create when you register an instance.
An array that contains one DnsRecord
object for each Route 53 record that you want Cloud Map to create when you register an instance.
An array that contains one DnsRecord
object for each Route 53 DNS record that you want Cloud Map to create when you register an instance.
An array that contains one DnsRecord
object for each Route 53 record that you want Cloud Map to create when you register an instance.
The number of consecutive health checks that an endpoint must pass or fail for Route 53 to change the current status of the endpoint from unhealthy to healthy or the other way around. For more information, see How Route 53 Determines Whether an Endpoint Is Healthy in the Route 53 Developer Guide.
", + "HealthCheckConfig$FailureThreshold": "The number of consecutive health checks that an endpoint must pass or fail for Route 53 to change the current status of the endpoint from unhealthy to healthy or the other way around. For more information, see How Route 53 Determines Whether an Endpoint Is Healthy in the Route 53 Developer Guide.
", "HealthCheckCustomConfig$FailureThreshold": "This parameter is no longer supported and is always set to 1. Cloud Map waits for approximately 30 seconds after receiving an UpdateInstanceCustomHealthStatus
request before changing the status of the service instance.
The number of 30-second intervals that you want Cloud Map to wait after receiving an UpdateInstanceCustomHealthStatus
request before it changes the health status of a service instance.
Sending a second or subsequent UpdateInstanceCustomHealthStatus
request with the same value before 30 seconds has passed doesn't accelerate the change. Cloud Map still waits 30
seconds after the first request to make the change.
The operator that you want to use to determine whether ListNamespaces
returns a namespace. Valid values for condition
include:
When you specify EQ
for the condition, you can choose to list only public namespaces or private namespaces, but not both. EQ
is the default condition and can be omitted.
When you specify IN
for the condition, you can choose to list public namespaces, private namespaces, or both.
Not applicable
Specify the operator that you want to use to determine whether a namespace matches the specified value. Valid values for Condition
are one of the following.
EQ
: When you specify EQ
for Condition
, you can specify only one value. EQ
is supported for TYPE
, NAME
, and HTTP_NAME
. EQ
is the default condition and can be omitted.
BEGINS_WITH
: When you specify BEGINS_WITH
for Condition
, you can specify only one value. BEGINS_WITH
is supported for TYPE
, NAME
, and HTTP_NAME
.
The operator that you want to use to determine whether an operation matches the specified value. Valid values for condition include:
EQ
: When you specify EQ
for the condition, you can specify only one value. EQ
is supported for NAMESPACE_ID
, SERVICE_ID
, STATUS
, and TYPE
. EQ
is the default condition and can be omitted.
IN
: When you specify IN
for the condition, you can specify a list of one or more values. IN
is supported for STATUS
and TYPE
. An operation must match one of the specified values to be returned in the response.
BETWEEN
: Specify a start date and an end date in Unix date/time format and Coordinated Universal Time (UTC). The start date must be the first value. BETWEEN
is supported for UPDATE_DATE
.
The operator that you want to use to determine whether a service is returned by ListServices
. Valid values for Condition
include the following:
EQ
: When you specify EQ
, specify one namespace ID for Values
. EQ
is the default condition and can be omitted.
IN
: When you specify IN
, specify a list of the IDs for the namespaces that you want ListServices
to return a list of services for.
BETWEEN
: Not applicable.
The operator that you want to use to determine whether a service is returned by ListServices
. Valid values for Condition
include the following:
EQ
: When you specify EQ
, specify one namespace ID for Values
. EQ
is the default condition and can be omitted.
If you specify EQ
for Condition
, specify either DNS_PUBLIC
or DNS_PRIVATE
.
If you specify IN
for Condition
, you can specify DNS_PUBLIC
, DNS_PRIVATE
, or both.
Specify the values that are applicable to the value that you specify for Name
.
TYPE
: Specify HTTP
, DNS_PUBLIC
, or DNS_PRIVATE
.
NAME
: Specify the name of the namespace, which is found in Namespace.Name
.
HTTP_NAME
: Specify the HTTP name of the namespace, which is found in Namespace.Properties.HttpProperties.HttpName
.
Specify values that are applicable to the value that you specify for Name
:
NAMESPACE_ID: Specify one namespace ID.
SERVICE_ID: Specify one service ID.
STATUS: Specify one or more statuses: SUBMITTED
, PENDING
, SUCCEED
, or FAIL
.
TYPE: Specify one or more of the following types: CREATE_NAMESPACE
, DELETE_NAMESPACE
, UPDATE_SERVICE
, REGISTER_INSTANCE
, or DEREGISTER_INSTANCE
.
UPDATE_DATE: Specify a start date and an end date in Unix date/time format and Coordinated Universal Time (UTC). The start date must be the first value.
The values that are applicable to the value that you specify for Condition
to filter the list of services.
Public DNS and HTTP namespaces only. A complex type that contains settings for an optional health check. If you specify settings for a health check, Cloud Map associates the health check with the records that you specify in DnsConfig
.
If you specify a health check configuration, you can specify either HealthCheckCustomConfig
or HealthCheckConfig
but not both.
Health checks are basic Route 53 health checks that monitor an Amazon Web Services endpoint. For information about pricing for health checks, see Amazon Route 53 Pricing.
Note the following about configuring health checks.
If DnsConfig
includes configurations for both A
and AAAA
records, Cloud Map creates a health check that uses the IPv4 address to check the health of the resource. If the endpoint tthat's specified by the IPv4 address is unhealthy, Route 53 considers both the A
and AAAA
records to be unhealthy.
You can't specify settings for HealthCheckConfig
when the DNSConfig
includes CNAME
for the value of Type
. If you do, the CreateService
request will fail with an InvalidInput
error.
A Route 53 health checker in each health-checking Amazon Web Services Region sends a health check request to an endpoint every 30 seconds. On average, your endpoint receives a health check request about every two seconds. However, health checkers don't coordinate with one another. Therefore, you might sometimes see several requests in one second that's followed by a few seconds with no health checks at all.
Health checkers perform checks from all Route 53 health-checking Regions. For a list of the current Regions, see Regions.
When you register an instance, if you include the AWS_ALIAS_DNS_NAME
attribute, Cloud Map creates a Route 53 alias record. Note the following:
Route 53 automatically sets EvaluateTargetHealth
to true for alias records. When EvaluateTargetHealth
is true, the alias record inherits the health of the referenced Amazon Web Services resource. such as an ELB load balancer. For more information, see EvaluateTargetHealth.
If you include HealthCheckConfig
and then use the service to register an instance that creates an alias record, Route 53 doesn't create the health check.
Health checks are basic Route 53 health checks that monitor an Amazon Web Services endpoint. For information about pricing for health checks, see Amazon Route 53 Pricing.
Public DNS and HTTP namespaces only. A complex type that contains settings for an optional health check. If you specify settings for a health check, Cloud Map associates the health check with the records that you specify in DnsConfig
.
If you specify a health check configuration, you can specify either HealthCheckCustomConfig
or HealthCheckConfig
but not both.
Health checks are basic Route 53 health checks that monitor an Amazon Web Services endpoint. For information about pricing for health checks, see Amazon Route 53 Pricing.
Note the following about configuring health checks.
If DnsConfig
includes configurations for both A
and AAAA
records, Cloud Map creates a health check that uses the IPv4 address to check the health of the resource. If the endpoint tthat's specified by the IPv4 address is unhealthy, Route 53 considers both the A
and AAAA
records to be unhealthy.
You can't specify settings for HealthCheckConfig
when the DNSConfig
includes CNAME
for the value of Type
. If you do, the CreateService
request will fail with an InvalidInput
error.
A Route 53 health checker in each health-checking Amazon Web Services Region sends a health check request to an endpoint every 30 seconds. On average, your endpoint receives a health check request about every two seconds. However, health checkers don't coordinate with one another. Therefore, you might sometimes see several requests in one second that's followed by a few seconds with no health checks at all.
Health checkers perform checks from all Route 53 health-checking Regions. For a list of the current Regions, see Regions.
When you register an instance, if you include the AWS_ALIAS_DNS_NAME
attribute, Cloud Map creates a Route 53 alias record. Note the following:
Route 53 automatically sets EvaluateTargetHealth
to true for alias records. When EvaluateTargetHealth
is true, the alias record inherits the health of the referenced Amazon Web Services resource. such as an ELB load balancer. For more information, see EvaluateTargetHealth.
If you include HealthCheckConfig
and then use the service to register an instance that creates an alias record, Route 53 doesn't create the health check.
Health checks are basic Route 53 health checks that monitor an Amazon Web Services endpoint. For information about pricing for health checks, see Amazon Route 53 Pricing.
Public DNS and HTTP namespaces only. A complex type that contains settings for an optional Route 53 health check. If you specify settings for a health check, Cloud Map associates the health check with all the Route 53 DNS records that you specify in DnsConfig
.
If you specify a health check configuration, you can specify either HealthCheckCustomConfig
or HealthCheckConfig
but not both.
For information about the charges for health checks, see Cloud Map Pricing.
", - "Service$HealthCheckConfig": " Public DNS and HTTP namespaces only. A complex type that contains settings for an optional health check. If you specify settings for a health check, Cloud Map associates the health check with the records that you specify in DnsConfig
.
For information about the charges for health checks, see Amazon Route 53 Pricing.
", + "CreateServiceRequest$HealthCheckConfig": " Public DNS and HTTP namespaces only. A complex type that contains settings for an optional Route 53 health check. If you specify settings for a health check, Cloud Map associates the health check with all the Route 53 DNS records that you specify in DnsConfig
.
If you specify a health check configuration, you can specify either HealthCheckCustomConfig
or HealthCheckConfig
but not both.
For information about the charges for health checks, see Cloud Map Pricing.
", + "Service$HealthCheckConfig": " Public DNS and HTTP namespaces only. A complex type that contains settings for an optional health check. If you specify settings for a health check, Cloud Map associates the health check with the records that you specify in DnsConfig
.
For information about the charges for health checks, see Amazon Route 53 Pricing.
", "ServiceChange$HealthCheckConfig": " Public DNS and HTTP namespaces only. Settings for an optional health check. If you specify settings for a health check, Cloud Map associates the health check with the records that you specify in DnsConfig
.
Public DNS and HTTP namespaces only. Settings for an optional health check. If you specify settings for a health check, Cloud Map associates the health check with the records that you specify in DnsConfig
.
The type of health check that you want to create, which indicates how Route 53 determines whether an endpoint is healthy.
You can't change the value of Type
after you create a health check.
You can create the following types of health checks:
HTTP: Route 53 tries to establish a TCP connection. If successful, Route 53 submits an HTTP request and waits for an HTTP status code of 200 or greater and less than 400.
HTTPS: Route 53 tries to establish a TCP connection. If successful, Route 53 submits an HTTPS request and waits for an HTTP status code of 200 or greater and less than 400.
If you specify HTTPS for the value of Type
, the endpoint must support TLS v1.0 or later.
TCP: Route 53 tries to establish a TCP connection.
If you specify TCP
for Type
, don't specify a value for ResourcePath
.
For more information, see How Route 53 Determines Whether an Endpoint Is Healthy in the Route 53 Developer Guide.
" + "HealthCheckConfig$Type": "The type of health check that you want to create, which indicates how Route 53 determines whether an endpoint is healthy.
You can't change the value of Type
after you create a health check.
You can create the following types of health checks:
HTTP: Route 53 tries to establish a TCP connection. If successful, Route 53 submits an HTTP request and waits for an HTTP status code of 200 or greater and less than 400.
HTTPS: Route 53 tries to establish a TCP connection. If successful, Route 53 submits an HTTPS request and waits for an HTTP status code of 200 or greater and less than 400.
If you specify HTTPS for the value of Type
, the endpoint must support TLS v1.0 or later.
TCP: Route 53 tries to establish a TCP connection.
If you specify TCP
for Type
, don't specify a value for ResourcePath
.
For more information, see How Route 53 Determines Whether an Endpoint Is Healthy in the Route 53 Developer Guide.
" } }, "HealthStatus": { @@ -385,7 +385,7 @@ "InstanceId": { "base": null, "refs": { - "RegisterInstanceRequest$InstanceId": "An identifier that you want to associate with the instance. Note the following:
If the service that's specified by ServiceId
includes settings for an SRV
record, the value of InstanceId
is automatically included as part of the value for the SRV
record. For more information, see DnsRecord > Type.
You can use this value to update an existing instance.
To register a new instance, you must specify a value that's unique among instances that you register by using the same service.
If you specify an existing InstanceId
and ServiceId
, Cloud Map updates the existing DNS records, if any. If there's also an existing health check, Cloud Map deletes the old health check and creates a new one.
The health check isn't deleted immediately, so it will still appear for a while if you submit a ListHealthChecks
request, for example.
An identifier that you want to associate with the instance. Note the following:
If the service that's specified by ServiceId
includes settings for an SRV
record, the value of InstanceId
is automatically included as part of the value for the SRV
record. For more information, see DnsRecord > Type.
You can use this value to update an existing instance.
To register a new instance, you must specify a value that's unique among instances that you register by using the same service.
If you specify an existing InstanceId
and ServiceId
, Cloud Map updates the existing DNS records, if any. If there's also an existing health check, Cloud Map deletes the old health check and creates a new one.
The health check isn't deleted immediately, so it will still appear for a while if you submit a ListHealthChecks
request, for example.
Do not include sensitive information in InstanceId
if the namespace is discoverable by public DNS queries and any Type
member of DnsRecord
for the service contains SRV
because the InstanceId
is discoverable by public DNS queries.
Specify TYPE
.
Specify the namespaces that you want to get using one of the following.
TYPE
: Gets the namespaces of the specified type.
NAME
: Gets the namespaces with the specified name.
HTTP_NAME
: Gets the namespaces with the specified HTTP name.
The HttpName
name of the namespace. It's found in the HttpProperties
member of the Properties
member of the namespace.
The name of an HTTP namespace.
", "Namespace$Name": "The name of the namespace, such as example.com
.
The name of the namespace. When you create a namespace, Cloud Map automatically creates a Route 53 hosted zone that has the same name as the namespace.
" + "NamespaceSummary$Name": "The name of the namespace. When you create a namespace, Cloud Map automatically creates a Route 53 hosted zone that has the same name as the namespace.
" } }, "NamespaceNameHttp": { @@ -530,13 +530,13 @@ "NamespaceNamePrivate": { "base": null, "refs": { - "CreatePrivateDnsNamespaceRequest$Name": "The name that you want to assign to this namespace. When you create a private DNS namespace, Cloud Map automatically creates an Amazon Route 53 private hosted zone that has the same name as the namespace.
" + "CreatePrivateDnsNamespaceRequest$Name": "The name that you want to assign to this namespace. When you create a private DNS namespace, Cloud Map automatically creates an Amazon Route 53 private hosted zone that has the same name as the namespace.
" } }, "NamespaceNamePublic": { "base": null, "refs": { - "CreatePublicDnsNamespaceRequest$Name": "The name that you want to assign to this namespace.
" + "CreatePublicDnsNamespaceRequest$Name": "The name that you want to assign to this namespace.
Do not include sensitive information in the name. The name is publicly available using DNS queries.
The amount of time, in seconds, that you want DNS resolvers to cache the settings for this record.
Alias records don't include a TTL because Route 53 uses the TTL for the Amazon Web Services resource that an alias record routes traffic to. If you include the AWS_ALIAS_DNS_NAME
attribute when you submit a RegisterInstance request, the TTL
value is ignored. Always specify a TTL for the service; you can use a service to register instances that create either alias or non-alias records.
The amount of time, in seconds, that you want DNS resolvers to cache the settings for this record.
Alias records don't include a TTL because Route 53 uses the TTL for the Amazon Web Services resource that an alias record routes traffic to. If you include the AWS_ALIAS_DNS_NAME
attribute when you submit a RegisterInstance request, the TTL
value is ignored. Always specify a TTL for the service; you can use a service to register instances that create either alias or non-alias records.
The time to live (TTL) for purposes of negative caching.
", "SOAChange$TTL": "The updated time to live (TTL) for purposes of negative caching.
" } @@ -739,7 +739,7 @@ "RecordType": { "base": null, "refs": { - "DnsRecord$Type": "The type of the resource, which indicates the type of value that Route 53 returns in response to DNS queries. You can specify values for Type
in the following combinations:
A
AAAA
A
and AAAA
SRV
CNAME
If you want Cloud Map to create a Route 53 alias record when you register an instance, specify A
or AAAA
for Type
.
You specify other settings, such as the IP address for A
and AAAA
records, when you register an instance. For more information, see RegisterInstance.
The following values are supported:
Route 53 returns the IP address of the resource in IPv4 format, such as 192.0.2.44.
Route 53 returns the IP address of the resource in IPv6 format, such as 2001:0db8:85a3:0000:0000:abcd:0001:2345.
Route 53 returns the domain name of the resource, such as www.example.com. Note the following:
You specify the domain name that you want to route traffic to when you register an instance. For more information, see Attributes in the topic RegisterInstance.
You must specify WEIGHTED
for the value of RoutingPolicy
.
You can't specify both CNAME
for Type
and settings for HealthCheckConfig
. If you do, the request will fail with an InvalidInput
error.
Route 53 returns the value for an SRV
record. The value for an SRV
record uses the following values:
priority weight port service-hostname
Note the following about the values:
The values of priority
and weight
are both set to 1
and can't be changed.
The value of port
comes from the value that you specify for the AWS_INSTANCE_PORT
attribute when you submit a RegisterInstance request.
The value of service-hostname
is a concatenation of the following values:
The value that you specify for InstanceId
when you register an instance.
The name of the service.
The name of the namespace.
For example, if the value of InstanceId
is test
, the name of the service is backend
, and the name of the namespace is example.com
, the value of service-hostname
is the following:
test.backend.example.com
If you specify settings for an SRV
record, note the following:
If you specify values for AWS_INSTANCE_IPV4
, AWS_INSTANCE_IPV6
, or both in the RegisterInstance
request, Cloud Map automatically creates A
and/or AAAA
records that have the same name as the value of service-hostname
in the SRV
record. You can ignore these records.
If you're using a system that requires a specific SRV
format, such as HAProxy, see the Name element in the documentation about CreateService
for information about how to specify the correct name format.
The type of the resource, which indicates the type of value that Route 53 returns in response to DNS queries. You can specify values for Type
in the following combinations:
A
AAAA
A
and AAAA
SRV
CNAME
If you want Cloud Map to create a Route 53 alias record when you register an instance, specify A
or AAAA
for Type
.
You specify other settings, such as the IP address for A
and AAAA
records, when you register an instance. For more information, see RegisterInstance.
The following values are supported:
Route 53 returns the IP address of the resource in IPv4 format, such as 192.0.2.44.
Route 53 returns the IP address of the resource in IPv6 format, such as 2001:0db8:85a3:0000:0000:abcd:0001:2345.
Route 53 returns the domain name of the resource, such as www.example.com. Note the following:
You specify the domain name that you want to route traffic to when you register an instance. For more information, see Attributes in the topic RegisterInstance.
You must specify WEIGHTED
for the value of RoutingPolicy
.
You can't specify both CNAME
for Type
and settings for HealthCheckConfig
. If you do, the request will fail with an InvalidInput
error.
Route 53 returns the value for an SRV
record. The value for an SRV
record uses the following values:
priority weight port service-hostname
Note the following about the values:
The values of priority
and weight
are both set to 1
and can't be changed.
The value of port
comes from the value that you specify for the AWS_INSTANCE_PORT
attribute when you submit a RegisterInstance request.
The value of service-hostname
is a concatenation of the following values:
The value that you specify for InstanceId
when you register an instance.
The name of the service.
The name of the namespace.
For example, if the value of InstanceId
is test
, the name of the service is backend
, and the name of the namespace is example.com
, the value of service-hostname
is the following:
test.backend.example.com
If you specify settings for an SRV
record, note the following:
If you specify values for AWS_INSTANCE_IPV4
, AWS_INSTANCE_IPV6
, or both in the RegisterInstance
request, Cloud Map automatically creates A
and/or AAAA
records that have the same name as the value of service-hostname
in the SRV
record. You can ignore these records.
If you're using a system that requires a specific SRV
format, such as HAProxy, see the Name element in the documentation about CreateService
for information about how to specify the correct name format.
The ID of the service that you want to delete.
", "DeregisterInstanceRequest$ServiceId": "The ID of the service that the instance is associated with.
", "DeregisterInstanceRequest$InstanceId": "The value that you specified for Id
in the RegisterInstance request.
The ID of the namespace to use for DNS configuration.
", - "DnsProperties$HostedZoneId": "The ID for the Route 53 hosted zone that Cloud Map creates when you create a namespace.
", + "DnsConfig$NamespaceId": "Use NamespaceId in Service instead.
The ID of the namespace to use for DNS configuration.
", + "DnsProperties$HostedZoneId": "The ID for the Route 53 hosted zone that Cloud Map creates when you create a namespace.
", "DuplicateRequest$DuplicateOperationId": "The ID of the operation that's already in progress.
", "GetInstanceRequest$ServiceId": "The ID of the service that the instance is associated with.
", "GetInstanceRequest$InstanceId": "The ID of the instance that you want to get information about.
", @@ -855,13 +855,13 @@ "ResourcePath": { "base": null, "refs": { - "HealthCheckConfig$ResourcePath": "The path that you want Route 53 to request when performing health checks. The path can be any value that your endpoint returns an HTTP status code of a 2xx or 3xx format for when the endpoint is healthy. An example file is /docs/route53-health-check.html
. Route 53 automatically adds the DNS name for the service. If you don't specify a value for ResourcePath
, the default value is /
.
If you specify TCP
for Type
, you must not specify a value for ResourcePath
.
The path that you want Route 53 to request when performing health checks. The path can be any value that your endpoint returns an HTTP status code of a 2xx or 3xx format for when the endpoint is healthy. An example file is /docs/route53-health-check.html
. Route 53 automatically adds the DNS name for the service. If you don't specify a value for ResourcePath
, the default value is /
.
If you specify TCP
for Type
, you must not specify a value for ResourcePath
.
The routing policy that you want to apply to all Route 53 DNS records that Cloud Map creates when you register an instance and specify this service.
If you want to use this service to register instances that create alias records, specify WEIGHTED
for the routing policy.
You can specify the following values:
If you define a health check for the service and the health check is healthy, Route 53 returns the applicable value for up to eight instances.
For example, suppose that the service includes configurations for one A
record and a health check. You use the service to register 10 instances. Route 53 responds to DNS queries with IP addresses for up to eight healthy instances. If fewer than eight instances are healthy, Route 53 responds to every DNS query with the IP addresses for all of the healthy instances.
If you don't define a health check for the service, Route 53 assumes that all instances are healthy and returns the values for up to eight instances.
For more information about the multivalue routing policy, see Multivalue Answer Routing in the Route 53 Developer Guide.
Route 53 returns the applicable value from one randomly selected instance from among the instances that you registered using the same service. Currently, all records have the same weight, so you can't route more or less traffic to any instances.
For example, suppose that the service includes configurations for one A
record and a health check. You use the service to register 10 instances. Route 53 responds to DNS queries with the IP address for one randomly selected instance from among the healthy instances. If no instances are healthy, Route 53 responds to DNS queries as if all of the instances were healthy.
If you don't define a health check for the service, Route 53 assumes that all instances are healthy and returns the applicable value for one randomly selected instance.
For more information about the weighted routing policy, see Weighted Routing in the Route 53 Developer Guide.
The routing policy that you want to apply to all Route 53 DNS records that Cloud Map creates when you register an instance and specify this service.
If you want to use this service to register instances that create alias records, specify WEIGHTED
for the routing policy.
You can specify the following values:
If you define a health check for the service and the health check is healthy, Route 53 returns the applicable value for up to eight instances.
For example, suppose that the service includes configurations for one A
record and a health check. You use the service to register 10 instances. Route 53 responds to DNS queries with IP addresses for up to eight healthy instances. If fewer than eight instances are healthy, Route 53 responds to every DNS query with the IP addresses for all of the healthy instances.
If you don't define a health check for the service, Route 53 assumes that all instances are healthy and returns the values for up to eight instances.
For more information about the multivalue routing policy, see Multivalue Answer Routing in the Route 53 Developer Guide.
Route 53 returns the applicable value from one randomly selected instance from among the instances that you registered using the same service. Currently, all records have the same weight, so you can't route more or less traffic to any instances.
For example, suppose that the service includes configurations for one A
record and a health check. You use the service to register 10 instances. Route 53 responds to DNS queries with the IP address for one randomly selected instance from among the healthy instances. If no instances are healthy, Route 53 responds to DNS queries as if all of the instances were healthy.
If you don't define a health check for the service, Route 53 assumes that all instances are healthy and returns the applicable value for one randomly selected instance.
For more information about the weighted routing policy, see Weighted Routing in the Route 53 Developer Guide.
The name that you want to assign to the service.
If you want Cloud Map to create an SRV
record when you register an instance and you're using a system that requires a specific SRV
format, such as HAProxy, specify the following for Name
:
Start the name with an underscore (_), such as _exampleservice
.
End the name with ._protocol, such as ._tcp
.
When you register an instance, Cloud Map creates an SRV
record and assigns a name to the record by concatenating the service name and the namespace name (for example,
_exampleservice._tcp.example.com
).
For services that are accessible by DNS queries, you can't create multiple services with names that differ only by case (such as EXAMPLE and example). Otherwise, these services have the same DNS name and can't be distinguished. However, if you use a namespace that's only accessible by API calls, then you can create services that with names that differ only by case.
The name that you want to assign to the service.
Do not include sensitive information in the name if the namespace is discoverable by public DNS queries.
If you want Cloud Map to create an SRV
record when you register an instance and you're using a system that requires a specific SRV
format, such as HAProxy, specify the following for Name
:
Start the name with an underscore (_), such as _exampleservice
.
End the name with ._protocol, such as ._tcp
.
When you register an instance, Cloud Map creates an SRV
record and assigns a name to the record by concatenating the service name and the namespace name (for example,
_exampleservice._tcp.example.com
).
For services that are accessible by DNS queries, you can't create multiple services with names that differ only by case (such as EXAMPLE and example). Otherwise, these services have the same DNS name and can't be distinguished. However, if you use a namespace that's only accessible by API calls, then you can create services that with names that differ only by case.
The name of the service that you specified when you registered the instance.
", "HttpInstanceSummary$ServiceName": "The name of the service that you specified when you registered the instance.
", "Service$Name": "The name of the service.
", diff --git a/models/apis/servicediscovery/2017-03-14/endpoint-rule-set-1.json b/models/apis/servicediscovery/2017-03-14/endpoint-rule-set-1.json new file mode 100644 index 00000000000..46ad4510fbc --- /dev/null +++ b/models/apis/servicediscovery/2017-03-14/endpoint-rule-set-1.json @@ -0,0 +1,353 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": true, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://servicediscovery-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "servicediscovery" + ] + } + ], + "endpoint": { + "url": "https://servicediscovery-fips.ca-central-1.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [ + { + "fn": "stringEquals", + "argv": [ + { + "ref": "Region" + }, + "servicediscovery" + ] + } + ], + "endpoint": { + "url": "https://servicediscovery-fips.us-gov-west-1.amazonaws.com", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + }, + { + "conditions": [], + "endpoint": { + "url": "https://servicediscovery-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://servicediscovery.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://servicediscovery.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] +} \ No newline at end of file diff --git a/models/apis/servicediscovery/2017-03-14/endpoint-tests-1.json b/models/apis/servicediscovery/2017-03-14/endpoint-tests-1.json new file mode 100644 index 00000000000..000ec7603c5 --- /dev/null +++ b/models/apis/servicediscovery/2017-03-14/endpoint-tests-1.json @@ -0,0 +1,338 @@ +{ + "testCases": [ + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-gov-east-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-gov-east-1", + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery.us-gov-east-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-gov-east-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-gov-east-1", + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "UseFIPS": true, + "Region": "us-iso-west-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery-fips.us-iso-west-1.c2s.ic.gov" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-iso-west-1", + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "UseFIPS": false, + "Region": "us-iso-west-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery.us-iso-west-1.c2s.ic.gov" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-iso-west-1", + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "UseFIPS": true, + "Region": "cn-north-1", + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "UseFIPS": true, + "Region": "cn-north-1", + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "UseFIPS": false, + "Region": "cn-north-1", + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "UseFIPS": false, + "Region": "cn-north-1", + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery-fips.us-gov-west-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-gov-west-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery-fips.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-gov-west-1", + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery.us-gov-west-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-gov-west-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-gov-west-1", + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery-fips.us-east-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-east-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery.us-east-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-east-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-east-1", + "UseDualStack": false + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery-fips.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "UseFIPS": true, + "Region": "cn-northwest-1", + "UseDualStack": true + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery-fips.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "UseFIPS": true, + "Region": "cn-northwest-1", + "UseDualStack": false + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "UseFIPS": false, + "Region": "cn-northwest-1", + "UseDualStack": true + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://servicediscovery.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "UseFIPS": false, + "Region": "cn-northwest-1", + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-east-1", + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "Region": "us-east-1", + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "UseFIPS": false, + "Region": "us-east-1", + "UseDualStack": true, + "Endpoint": "https://example.com" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/models/apis/servicediscovery/2017-03-14/examples-1.json b/models/apis/servicediscovery/2017-03-14/examples-1.json index cc99fe4cb49..d04f83ea4cf 100644 --- a/models/apis/servicediscovery/2017-03-14/examples-1.json +++ b/models/apis/servicediscovery/2017-03-14/examples-1.json @@ -260,7 +260,7 @@ }, "output": { "Namespace": { - "Arn": "arn:aws:servicediscovery:us-west-2: 123456789120:namespace/ns-e1tpmexample0001", + "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-e1tpmexample0001", "CreateDate": "20181118T211712Z", "CreatorRequestId": "example-creator-request-id-0001", "Description": "Example.com AWS Cloud Map HTTP Namespace", @@ -322,7 +322,7 @@ }, "output": { "Service": { - "Arn": "arn:aws:servicediscovery:us-west-2:123456789120:service/srv-e4anhexample0004", + "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:service/srv-e4anhexample0004", "CreateDate": "20181118T211707Z", "CreatorRequestId": "example-creator-request-id-0004", "Description": "Example.com AWS Cloud Map HTTP Service", diff --git a/models/apis/sesv2/2019-09-27/api-2.json b/models/apis/sesv2/2019-09-27/api-2.json index 6d2bda1a86b..4c341c78f3e 100644 --- a/models/apis/sesv2/2019-09-27/api-2.json +++ b/models/apis/sesv2/2019-09-27/api-2.json @@ -445,6 +445,20 @@ {"shape":"BadRequestException"} ] }, + "GetDedicatedIpPool":{ + "name":"GetDedicatedIpPool", + "http":{ + "method":"GET", + "requestUri":"/v2/email/dedicated-ip-pools/{PoolName}" + }, + "input":{"shape":"GetDedicatedIpPoolRequest"}, + "output":{"shape":"GetDedicatedIpPoolResponse"}, + "errors":[ + {"shape":"TooManyRequestsException"}, + {"shape":"NotFoundException"}, + {"shape":"BadRequestException"} + ] + }, "GetDedicatedIps":{ "name":"GetDedicatedIps", "http":{ @@ -1524,7 +1538,8 @@ "required":["PoolName"], "members":{ "PoolName":{"shape":"PoolName"}, - "Tags":{"shape":"TagList"} + "Tags":{"shape":"TagList"}, + "ScalingMode":{"shape":"ScalingMode"} } }, "CreateDedicatedIpPoolResponse":{ @@ -1685,6 +1700,17 @@ "type":"list", "member":{"shape":"DedicatedIp"} }, + "DedicatedIpPool":{ + "type":"structure", + "required":[ + "PoolName", + "ScalingMode" + ], + "members":{ + "PoolName":{"shape":"PoolName"}, + "ScalingMode":{"shape":"ScalingMode"} + } + }, "DefaultDimensionValue":{"type":"string"}, "DeleteConfigurationSetEventDestinationRequest":{ "type":"structure", @@ -2291,6 +2317,23 @@ "FailureRedirectionURL":{"shape":"FailureRedirectionURL"} } }, + "GetDedicatedIpPoolRequest":{ + "type":"structure", + "required":["PoolName"], + "members":{ + "PoolName":{ + "shape":"PoolName", + "location":"uri", + "locationName":"PoolName" + } + } + }, + "GetDedicatedIpPoolResponse":{ + "type":"structure", + "members":{ + "DedicatedIpPool":{"shape":"DedicatedIpPool"} + } + }, "GetDedicatedIpRequest":{ "type":"structure", "required":["Ip"], @@ -2469,7 +2512,8 @@ "MailFromAttributes":{"shape":"MailFromAttributes"}, "Policies":{"shape":"PolicyMap"}, "Tags":{"shape":"TagList"}, - "ConfigurationSetName":{"shape":"ConfigurationSetName"} + "ConfigurationSetName":{"shape":"ConfigurationSetName"}, + "VerificationStatus":{"shape":"VerificationStatus"} } }, "GetEmailTemplateRequest":{ @@ -2546,7 +2590,8 @@ "members":{ "IdentityType":{"shape":"IdentityType"}, "IdentityName":{"shape":"Identity"}, - "SendingEnabled":{"shape":"Enabled"} + "SendingEnabled":{"shape":"Enabled"}, + "VerificationStatus":{"shape":"VerificationStatus"} } }, "IdentityInfoList":{ @@ -2593,7 +2638,9 @@ "JobId":{"shape":"JobId"}, "ImportDestination":{"shape":"ImportDestination"}, "JobStatus":{"shape":"JobStatus"}, - "CreatedTimestamp":{"shape":"Timestamp"} + "CreatedTimestamp":{"shape":"Timestamp"}, + "ProcessedRecordsCount":{"shape":"ProcessedRecordsCount"}, + "FailedRecordsCount":{"shape":"FailedRecordsCount"} } }, "ImportJobSummaryList":{ @@ -3486,6 +3533,13 @@ "type":"string", "pattern":"^s3:\\/\\/([^\\/]+)\\/(.*?([^\\/]+)\\/?)$" }, + "ScalingMode":{ + "type":"string", + "enum":[ + "STANDARD", + "MANAGED" + ] + }, "Selector":{ "type":"string", "max":63, @@ -3979,6 +4033,16 @@ "sensitive":true }, "UseDefaultIfPreferenceUnavailable":{"type":"boolean"}, + "VerificationStatus":{ + "type":"string", + "enum":[ + "PENDING", + "SUCCESS", + "FAILED", + "TEMPORARY_FAILURE", + "NOT_STARTED" + ] + }, "Volume":{"type":"long"}, "VolumeStatistics":{ "type":"structure", diff --git a/models/apis/sesv2/2019-09-27/docs-2.json b/models/apis/sesv2/2019-09-27/docs-2.json index 213a6dc08d6..1a740f72799 100644 --- a/models/apis/sesv2/2019-09-27/docs-2.json +++ b/models/apis/sesv2/2019-09-27/docs-2.json @@ -6,7 +6,7 @@ "CreateConfigurationSetEventDestination": "Create an event destination. Events include message sends, deliveries, opens, clicks, bounces, and complaints. Event destinations are places that you can send information about these events to. For example, you can send event data to Amazon SNS to receive notifications when you receive bounces or complaints, or you can use Amazon Kinesis Data Firehose to stream data to Amazon S3 for long-term storage.
A single configuration set can include more than one event destination.
", "CreateContact": "Creates a contact, which is an end-user who is receiving the email, and adds them to a contact list.
", "CreateContactList": "Creates a contact list.
", - "CreateCustomVerificationEmailTemplate": "Creates a new custom verification email template.
For more information about custom verification email templates, see Using Custom Verification Email Templates in the Amazon SES Developer Guide.
You can execute this operation no more than once per second.
", + "CreateCustomVerificationEmailTemplate": "Creates a new custom verification email template.
For more information about custom verification email templates, see Using custom verification email templates in the Amazon SES Developer Guide.
You can execute this operation no more than once per second.
", "CreateDedicatedIpPool": "Create a new pool of dedicated IP addresses. A pool can include one or more dedicated IP addresses that are associated with your Amazon Web Services account. You can associate a pool with a configuration set. When you send an email that uses that configuration set, the message is sent from one of the addresses in the associated pool.
", "CreateDeliverabilityTestReport": "Create a new predictive inbox placement test. Predictive inbox placement tests can help you predict how your messages will be handled by various email providers around the world. When you perform a predictive inbox placement test, you provide a sample message that contains the content that you plan to send to your customers. Amazon SES then sends that message to special email addresses spread across several major email providers. After about 24 hours, the test is complete, and you can use the GetDeliverabilityTestReport
operation to view the results of the test.
Starts the process of verifying an email identity. An identity is an email address or domain that you use when you send email. Before you can use an identity to send email, you first have to verify it. By verifying an identity, you demonstrate that you're the owner of the identity, and that you've given Amazon SES API v2 permission to send email from the identity.
When you verify an email address, Amazon SES sends an email to the address. Your email address is verified as soon as you follow the link in the verification email.
When you verify a domain without specifying the DkimSigningAttributes
object, this operation provides a set of DKIM tokens. You can convert these tokens into CNAME records, which you then add to the DNS configuration for your domain. Your domain is verified when Amazon SES detects these records in the DNS configuration for your domain. This verification method is known as Easy DKIM.
Alternatively, you can perform the verification process by providing your own public-private key pair. This verification method is known as Bring Your Own DKIM (BYODKIM). To use BYODKIM, your call to the CreateEmailIdentity
operation has to include the DkimSigningAttributes
object. When you specify this object, you provide a selector (a component of the DNS record name that identifies the public key to use for DKIM authentication) and a private key.
When you verify a domain, this operation provides a set of DKIM tokens, which you can convert into CNAME tokens. You add these CNAME tokens to the DNS configuration for your domain. Your domain is verified when Amazon SES detects these records in the DNS configuration for your domain. For some DNS providers, it can take 72 hours or more to complete the domain verification process.
Additionally, you can associate an existing configuration set with the email identity that you're verifying.
", @@ -17,7 +17,7 @@ "DeleteConfigurationSetEventDestination": "Delete an event destination.
Events include message sends, deliveries, opens, clicks, bounces, and complaints. Event destinations are places that you can send information about these events to. For example, you can send event data to Amazon SNS to receive notifications when you receive bounces or complaints, or you can use Amazon Kinesis Data Firehose to stream data to Amazon S3 for long-term storage.
", "DeleteContact": "Removes a contact from a contact list.
", "DeleteContactList": "Deletes a contact list and all of the contacts on that list.
", - "DeleteCustomVerificationEmailTemplate": "Deletes an existing custom verification email template.
For more information about custom verification email templates, see Using Custom Verification Email Templates in the Amazon SES Developer Guide.
You can execute this operation no more than once per second.
", + "DeleteCustomVerificationEmailTemplate": "Deletes an existing custom verification email template.
For more information about custom verification email templates, see Using custom verification email templates in the Amazon SES Developer Guide.
You can execute this operation no more than once per second.
", "DeleteDedicatedIpPool": "Delete a dedicated IP pool.
", "DeleteEmailIdentity": "Deletes an email identity. An identity can be either an email address or a domain name.
", "DeleteEmailIdentityPolicy": "Deletes the specified sending authorization policy for the given identity (an email address or a domain). This API returns successfully even if a policy with the specified name does not exist.
This API is for the identity owner only. If you have not verified the identity, this API will return an error.
Sending authorization is a feature that enables an identity owner to authorize other senders to use its identities. For information about using sending authorization, see the Amazon SES Developer Guide.
You can execute this operation no more than once per second.
", @@ -29,8 +29,9 @@ "GetConfigurationSetEventDestinations": "Retrieve a list of event destinations that are associated with a configuration set.
Events include message sends, deliveries, opens, clicks, bounces, and complaints. Event destinations are places that you can send information about these events to. For example, you can send event data to Amazon SNS to receive notifications when you receive bounces or complaints, or you can use Amazon Kinesis Data Firehose to stream data to Amazon S3 for long-term storage.
", "GetContact": "Returns a contact from a contact list.
", "GetContactList": "Returns contact list metadata. It does not return any information about the contacts present in the list.
", - "GetCustomVerificationEmailTemplate": "Returns the custom email verification template for the template name you specify.
For more information about custom verification email templates, see Using Custom Verification Email Templates in the Amazon SES Developer Guide.
You can execute this operation no more than once per second.
", + "GetCustomVerificationEmailTemplate": "Returns the custom email verification template for the template name you specify.
For more information about custom verification email templates, see Using custom verification email templates in the Amazon SES Developer Guide.
You can execute this operation no more than once per second.
", "GetDedicatedIp": "Get information about a dedicated IP address, including the name of the dedicated IP pool that it's associated with, as well information about the automatic warm-up process for the address.
", + "GetDedicatedIpPool": "Retrieve information about the dedicated pool.
", "GetDedicatedIps": "List the dedicated IP addresses that are associated with your Amazon Web Services account.
", "GetDeliverabilityDashboardOptions": "Retrieve information about the status of the Deliverability dashboard for your account. When the Deliverability dashboard is enabled, you gain access to reputation, deliverability, and other metrics for the domains that you use to send email. You also gain the ability to perform predictive inbox placement tests.
When you use the Deliverability dashboard, you pay a monthly subscription charge, in addition to any other fees that you accrue by using Amazon SES and other Amazon Web Services services. For more information about the features and cost of a Deliverability dashboard subscription, see Amazon SES Pricing.
", "GetDeliverabilityTestReport": "Retrieve the results of a predictive inbox placement test.
", @@ -44,7 +45,7 @@ "ListConfigurationSets": "List all of the configuration sets associated with your account in the current region.
Configuration sets are groups of rules that you can apply to the emails you send. You apply a configuration set to an email by including a reference to the configuration set in the headers of the email. When you apply a configuration set to an email, all of the rules in that configuration set are applied to the email.
", "ListContactLists": "Lists all of the contact lists available.
", "ListContacts": "Lists the contacts present in a specific contact list.
", - "ListCustomVerificationEmailTemplates": "Lists the existing custom verification email templates for your account in the current Amazon Web Services Region.
For more information about custom verification email templates, see Using Custom Verification Email Templates in the Amazon SES Developer Guide.
You can execute this operation no more than once per second.
", + "ListCustomVerificationEmailTemplates": "Lists the existing custom verification email templates for your account in the current Amazon Web Services Region.
For more information about custom verification email templates, see Using custom verification email templates in the Amazon SES Developer Guide.
You can execute this operation no more than once per second.
", "ListDedicatedIpPools": "List all of the dedicated IP pools that exist in your Amazon Web Services account in the current Region.
", "ListDeliverabilityTestReports": "Show a list of the predictive inbox placement tests that you've performed, regardless of their statuses. For predictive inbox placement tests that are complete, you can use the GetDeliverabilityTestReport
operation to view the results.
Retrieve deliverability data for all the campaigns that used a specific domain to send email during a specified time range. This data is available for a domain only if you enabled the Deliverability dashboard for the domain.
", @@ -72,7 +73,7 @@ "PutEmailIdentityMailFromAttributes": "Used to enable or disable the custom Mail-From domain configuration for an email identity.
", "PutSuppressedDestination": "Adds an email address to the suppression list for your account.
", "SendBulkEmail": "Composes an email message to multiple destinations.
", - "SendCustomVerificationEmail": "Adds an email address to the list of identities for your Amazon SES account in the current Amazon Web Services Region and attempts to verify it. As a result of executing this operation, a customized verification email is sent to the specified address.
To use this operation, you must first create a custom verification email template. For more information about creating and using custom verification email templates, see Using Custom Verification Email Templates in the Amazon SES Developer Guide.
You can execute this operation no more than once per second.
", + "SendCustomVerificationEmail": "Adds an email address to the list of identities for your Amazon SES account in the current Amazon Web Services Region and attempts to verify it. As a result of executing this operation, a customized verification email is sent to the specified address.
To use this operation, you must first create a custom verification email template. For more information about creating and using custom verification email templates, see Using custom verification email templates in the Amazon SES Developer Guide.
You can execute this operation no more than once per second.
", "SendEmail": "Sends an email message. You can use the Amazon SES API v2 to send the following types of messages:
Simple – A standard email message. When you create this type of message, you specify the sender, the recipient, and the message body, and Amazon SES assembles the message for you.
Raw – A raw, MIME-formatted email message. When you send this type of email, you have to specify all of the message headers, as well as the message body. You can use this message type to send messages that contain attachments. The message that you specify has to be a valid MIME message.
Templated – A message that contains personalization tags. When you send this type of email, Amazon SES API v2 automatically replaces the tags with values that you specify.
Add one or more tags (keys and values) to a specified resource. A tag is a label that you optionally define and associate with a resource. Tags can help you categorize and manage resources in different ways, such as by purpose, owner, environment, or other criteria. A resource can have as many as 50 tags.
Each tag consists of a required tag key and an associated tag value, both of which you define. A tag key is a general label that acts as a category for more specific tag values. A tag value acts as a descriptor within a tag key.
", "TestRenderEmailTemplate": "Creates a preview of the MIME content of an email when provided with a template and a set of replacement data.
You can execute this operation no more than once per second.
", @@ -80,7 +81,7 @@ "UpdateConfigurationSetEventDestination": "Update the configuration of an event destination for a configuration set.
Events include message sends, deliveries, opens, clicks, bounces, and complaints. Event destinations are places that you can send information about these events to. For example, you can send event data to Amazon SNS to receive notifications when you receive bounces or complaints, or you can use Amazon Kinesis Data Firehose to stream data to Amazon S3 for long-term storage.
", "UpdateContact": "Updates a contact's preferences for a list. It is not necessary to specify all existing topic preferences in the TopicPreferences object, just the ones that need updating.
", "UpdateContactList": "Updates contact list metadata. This operation does a complete replacement.
", - "UpdateCustomVerificationEmailTemplate": "Updates an existing custom verification email template.
For more information about custom verification email templates, see Using Custom Verification Email Templates in the Amazon SES Developer Guide.
You can execute this operation no more than once per second.
", + "UpdateCustomVerificationEmailTemplate": "Updates an existing custom verification email template.
For more information about custom verification email templates, see Using custom verification email templates in the Amazon SES Developer Guide.
You can execute this operation no more than once per second.
", "UpdateEmailIdentityPolicy": "Updates the specified sending authorization policy for the given identity (an email address or a domain). This API returns successfully even if a policy with the specified name does not exist.
This API is for the identity owner only. If you have not verified the identity, this API will return an error.
Sending authorization is a feature that enables an identity owner to authorize other senders to use its identities. For information about using sending authorization, see the Amazon SES Developer Guide.
You can execute this operation no more than once per second.
", "UpdateEmailTemplate": "Updates an email template. Email templates enable you to send personalized email to one or more destinations in a single API operation. For more information, see the Amazon SES Developer Guide.
You can execute this operation no more than once per second.
" }, @@ -147,7 +148,7 @@ "BehaviorOnMxFailure": { "base": "The action to take if the required MX record can't be found when you send an email. When you set this value to UseDefaultValue
, the mail is sent using amazonses.com as the MAIL FROM domain. When you set this value to RejectMessage
, the Amazon SES API v2 returns a MailFromDomainNotVerified
error, and doesn't attempt to deliver the email.
These behaviors are taken when the custom MAIL FROM domain configuration is in the Pending
, Failed
, and TemporaryFailure
states.
The action to take if the required MX record can't be found when you send an email. When you set this value to UseDefaultValue
, the mail is sent using amazonses.com as the MAIL FROM domain. When you set this value to RejectMessage
, the Amazon SES API v2 returns a MailFromDomainNotVerified
error, and doesn't attempt to deliver the email.
These behaviors are taken when the custom MAIL FROM domain configuration is in the Pending
, Failed
, and TemporaryFailure
states.
The action to take if the required MX record can't be found when you send an email. When you set this value to USE_DEFAULT_VALUE
, the mail is sent using amazonses.com as the MAIL FROM domain. When you set this value to REJECT_MESSAGE
, the Amazon SES API v2 returns a MailFromDomainNotVerified
error, and doesn't attempt to deliver the email.
These behaviors are taken when the custom MAIL FROM domain configuration is in the Pending
, Failed
, and TemporaryFailure
states.
The action to take if the required MX record isn't found when you send an email. When you set this value to UseDefaultValue
, the mail is sent using amazonses.com as the MAIL FROM domain. When you set this value to RejectMessage
, the Amazon SES API v2 returns a MailFromDomainNotVerified
error, and doesn't attempt to deliver the email.
These behaviors are taken when the custom MAIL FROM domain configuration is in the Pending
, Failed
, and TemporaryFailure
states.
A list of dedicated IP addresses that are associated with your Amazon Web Services account.
" } }, + "DedicatedIpPool": { + "base": "Contains information about a dedicated IP pool.
", + "refs": { + "GetDedicatedIpPoolResponse$DedicatedIpPool": "An object that contains information about a dedicated IP pool.
" + } + }, "DefaultDimensionValue": { "base": "The default value of the dimension that is published to Amazon CloudWatch if you don't provide the value of the dimension when you send an email. This value has to meet the following criteria:
It can only contain ASCII letters (a–z, A–Z), numbers (0–9), underscores (_), or dashes (-).
It can contain no more than 256 characters.
The default value of the dimension that is published to Amazon CloudWatch if you don't provide the value of the dimension when you send an email. This value has to meet the following criteria:
It can only contain ASCII letters (a–z, A–Z), numbers (0–9), underscores (_), or dashes (-).
It can contain no more than 256 characters.
The default value of the dimension that is published to Amazon CloudWatch if you don't provide the value of the dimension when you send an email. This value has to meet the following criteria:
Can only contain ASCII letters (a–z, A–Z), numbers (0–9), underscores (_), or dashes (-), at signs (@), and periods (.).
It can contain no more than 256 characters.
The number of records that failed processing because of invalid input or other reasons.
" + "GetImportJobResponse$FailedRecordsCount": "The number of records that failed processing because of invalid input or other reasons.
", + "ImportJobSummary$FailedRecordsCount": "The number of records that failed processing because of invalid input or other reasons.
" } }, "FailedRecordsS3Url": { @@ -1118,6 +1126,16 @@ "refs": { } }, + "GetDedicatedIpPoolRequest": { + "base": "A request to obtain more information about a dedicated IP pool.
", + "refs": { + } + }, + "GetDedicatedIpPoolResponse": { + "base": "The following element is returned by the service.
", + "refs": { + } + }, "GetDedicatedIpRequest": { "base": "A request to obtain more information about a dedicated IP address.
", "refs": { @@ -1578,7 +1596,7 @@ "Max24HourSend": { "base": null, "refs": { - "SendQuota$Max24HourSend": "The maximum number of emails that you can send in the current Amazon Web Services Region over a 24-hour period. This value is also called your sending quota.
" + "SendQuota$Max24HourSend": "The maximum number of emails that you can send in the current Amazon Web Services Region over a 24-hour period. A value of -1 signifies an unlimited quota. (This value is also referred to as your sending quota.)
" } }, "MaxItems": { @@ -1768,8 +1786,10 @@ "refs": { "CreateDedicatedIpPoolRequest$PoolName": "The name of the dedicated IP pool.
", "DedicatedIp$PoolName": "The name of the dedicated IP pool that the IP address is associated with.
", + "DedicatedIpPool$PoolName": "The name of the dedicated IP pool.
", "DeleteDedicatedIpPoolRequest$PoolName": "The name of the dedicated IP pool that you want to delete.
", "DeliveryOptions$SendingPoolName": "The name of the dedicated IP pool to associate with the configuration set.
", + "GetDedicatedIpPoolRequest$PoolName": "The name of the dedicated IP pool to retrieve.
", "GetDedicatedIpsRequest$PoolName": "The name of the IP pool that the dedicated IP address is associated with.
", "ListOfDedicatedIpPools$member": null, "PutDedicatedIpInPoolRequest$DestinationPoolName": "The name of the IP pool that you want to add the dedicated IP address to. You have to specify an IP pool that already exists.
" @@ -1784,7 +1804,8 @@ "ProcessedRecordsCount": { "base": null, "refs": { - "GetImportJobResponse$ProcessedRecordsCount": "The current number of records processed.
" + "GetImportJobResponse$ProcessedRecordsCount": "The current number of records processed.
", + "ImportJobSummary$ProcessedRecordsCount": "The current number of records processed.
" } }, "PutAccountDedicatedIpWarmupAttributesRequest": { @@ -2043,6 +2064,13 @@ "ImportDataSource$S3Url": "An Amazon S3 URL in the format s3://<bucket_name>/<object>.
" } }, + "ScalingMode": { + "base": null, + "refs": { + "CreateDedicatedIpPoolRequest$ScalingMode": "The type of scaling mode.
", + "DedicatedIpPool$ScalingMode": "The type of the dedicated IP pool.
STANDARD
– A dedicated IP pool where the customer can control which IPs are part of the pool.
MANAGED
– A dedicated IP pool where the reputation and number of IPs is automatically managed by Amazon SES.
The content of the custom verification email template.
", "refs": { - "CreateCustomVerificationEmailTemplateRequest$TemplateContent": "The content of the custom verification email. The total size of the email must be less than 10 MB. The message body may contain HTML, with some limitations. For more information, see Custom Verification Email Frequently Asked Questions in the Amazon SES Developer Guide.
", + "CreateCustomVerificationEmailTemplateRequest$TemplateContent": "The content of the custom verification email. The total size of the email must be less than 10 MB. The message body may contain HTML, with some limitations. For more information, see Custom verification email frequently asked questions in the Amazon SES Developer Guide.
", "GetCustomVerificationEmailTemplateResponse$TemplateContent": "The content of the custom verification email.
", - "UpdateCustomVerificationEmailTemplateRequest$TemplateContent": "The content of the custom verification email. The total size of the email must be less than 10 MB. The message body may contain HTML, with some limitations. For more information, see Custom Verification Email Frequently Asked Questions in the Amazon SES Developer Guide.
" + "UpdateCustomVerificationEmailTemplateRequest$TemplateContent": "The content of the custom verification email. The total size of the email must be less than 10 MB. The message body may contain HTML, with some limitations. For more information, see Custom verification email frequently asked questions in the Amazon SES Developer Guide.
" } }, "TestRenderEmailTemplateRequest": { @@ -2286,30 +2314,30 @@ "Timestamp": { "base": null, "refs": { - "BlacklistEntry$ListingTime": "The time when the blacklisting event occurred, shown in Unix time format.
", + "BlacklistEntry$ListingTime": "The time when the blacklisting event occurred.
", "Contact$LastUpdatedTimestamp": "A timestamp noting the last time the contact's information was updated.
", "ContactList$LastUpdatedTimestamp": "A timestamp noting the last time the contact list was updated.
", "DailyVolume$StartDate": "The date that the DailyVolume metrics apply to, in Unix time.
", - "DeliverabilityTestReport$CreateDate": "The date and time when the predictive inbox placement test was created, in Unix time format.
", + "DeliverabilityTestReport$CreateDate": "The date and time when the predictive inbox placement test was created.
", "DkimAttributes$LastKeyGenerationTimestamp": "[Easy DKIM] The last time a key pair was generated for this identity.
", - "DomainDeliverabilityCampaign$FirstSeenDateTime": "The first time, in Unix time format, when the email message was delivered to any recipient's inbox. This value can help you determine how long it took for a campaign to deliver an email message.
", - "DomainDeliverabilityCampaign$LastSeenDateTime": "The last time, in Unix time format, when the email message was delivered to any recipient's inbox. This value can help you determine how long it took for a campaign to deliver an email message.
", - "DomainDeliverabilityTrackingOption$SubscriptionStartDate": "The date, in Unix time format, when you enabled the Deliverability dashboard for the domain.
", + "DomainDeliverabilityCampaign$FirstSeenDateTime": "The first time when the email message was delivered to any recipient's inbox. This value can help you determine how long it took for a campaign to deliver an email message.
", + "DomainDeliverabilityCampaign$LastSeenDateTime": "The last time when the email message was delivered to any recipient's inbox. This value can help you determine how long it took for a campaign to deliver an email message.
", + "DomainDeliverabilityTrackingOption$SubscriptionStartDate": "The date when you enabled the Deliverability dashboard for the domain.
", "EmailTemplateMetadata$CreatedTimestamp": "The time and date the template was created.
", "GetContactListResponse$CreatedTimestamp": "A timestamp noting when the contact list was created.
", "GetContactListResponse$LastUpdatedTimestamp": "A timestamp noting the last time the contact list was updated.
", "GetContactResponse$CreatedTimestamp": "A timestamp noting when the contact was created.
", "GetContactResponse$LastUpdatedTimestamp": "A timestamp noting the last time the contact's information was updated.
", - "GetDeliverabilityDashboardOptionsResponse$SubscriptionExpiryDate": "The date, in Unix time format, when your current subscription to the Deliverability dashboard is scheduled to expire, if your subscription is scheduled to expire at the end of the current calendar month. This value is null if you have an active subscription that isn’t due to expire at the end of the month.
", + "GetDeliverabilityDashboardOptionsResponse$SubscriptionExpiryDate": "The date when your current subscription to the Deliverability dashboard is scheduled to expire, if your subscription is scheduled to expire at the end of the current calendar month. This value is null if you have an active subscription that isn’t due to expire at the end of the month.
", "GetDomainStatisticsReportRequest$StartDate": "The first day (in Unix time) that you want to obtain domain deliverability metrics for.
", "GetDomainStatisticsReportRequest$EndDate": "The last day (in Unix time) that you want to obtain domain deliverability metrics for. The EndDate
that you specify has to be less than or equal to 30 days after the StartDate
.
The time stamp of when the import job was created.
", "GetImportJobResponse$CompletedTimestamp": "The time stamp of when the import job was completed.
", "ImportJobSummary$CreatedTimestamp": "The date and time when the import job was created.
", - "ListDomainDeliverabilityCampaignsRequest$StartDate": "The first day, in Unix time format, that you want to obtain deliverability data for.
", - "ListDomainDeliverabilityCampaignsRequest$EndDate": "The last day, in Unix time format, that you want to obtain deliverability data for. This value has to be less than or equal to 30 days after the value of the StartDate
parameter.
Used to filter the list of suppressed email destinations so that it only includes addresses that were added to the list after a specific date. The date that you specify should be in Unix time format.
", - "ListSuppressedDestinationsRequest$EndDate": "Used to filter the list of suppressed email destinations so that it only includes addresses that were added to the list before a specific date. The date that you specify should be in Unix time format.
", + "ListDomainDeliverabilityCampaignsRequest$StartDate": "The first day that you want to obtain deliverability data for.
", + "ListDomainDeliverabilityCampaignsRequest$EndDate": "The last day that you want to obtain deliverability data for. This value has to be less than or equal to 30 days after the value of the StartDate
parameter.
Used to filter the list of suppressed email destinations so that it only includes addresses that were added to the list after a specific date.
", + "ListSuppressedDestinationsRequest$EndDate": "Used to filter the list of suppressed email destinations so that it only includes addresses that were added to the list before a specific date.
", "SuppressedDestination$LastUpdateTime": "The date and time when the suppressed destination was last updated, shown in Unix time format.
", "SuppressedDestinationSummary$LastUpdateTime": "The date and time when the suppressed destination was last updated, shown in Unix time format.
" } @@ -2471,6 +2499,13 @@ "TopicFilter$UseDefaultIfPreferenceUnavailable": "Notes that the default subscription status should be applied to a contact because the contact has not noted their preference for subscribing to a topic.
" } }, + "VerificationStatus": { + "base": null, + "refs": { + "GetEmailIdentityResponse$VerificationStatus": "The verification status of the identity. The status can be one of the following:
PENDING
– The verification process was initiated, but Amazon SES hasn't yet been able to verify the identity.
SUCCESS
– The verification process completed successfully.
FAILED
– The verification process failed.
TEMPORARY_FAILURE
– A temporary issue is preventing Amazon SES from determining the verification status of the identity.
NOT_STARTED
– The verification process hasn't been initiated for the identity.
The verification status of the identity. The status can be one of the following:
PENDING
– The verification process was initiated, but Amazon SES hasn't yet been able to verify the identity.
SUCCESS
– The verification process completed successfully.
FAILED
– The verification process failed.
TEMPORARY_FAILURE
– A temporary issue is preventing Amazon SES from determining the verification status of the identity.
NOT_STARTED
– The verification process hasn't been initiated for the identity.
An object that contains information about inbox placement volume.
", "refs": { diff --git a/models/apis/sesv2/2019-09-27/endpoint-rule-set-1.json b/models/apis/sesv2/2019-09-27/endpoint-rule-set-1.json new file mode 100644 index 00000000000..15ffbd7a1b7 --- /dev/null +++ b/models/apis/sesv2/2019-09-27/endpoint-rule-set-1.json @@ -0,0 +1,315 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": true, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + }, + { + "fn": "parseURL", + "argv": [ + { + "ref": "Endpoint" + } + ], + "assign": "url" + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://email-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://email-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ] + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "type": "tree", + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://email.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ] + }, + { + "conditions": [], + "endpoint": { + "url": "https://email.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ] + } + ] +} \ No newline at end of file diff --git a/models/apis/sesv2/2019-09-27/endpoint-tests-1.json b/models/apis/sesv2/2019-09-27/endpoint-tests-1.json new file mode 100644 index 00000000000..6fd9c71adeb --- /dev/null +++ b/models/apis/sesv2/2019-09-27/endpoint-tests-1.json @@ -0,0 +1,1239 @@ +{ + "testCases": [ + { + "documentation": "For region ap-south-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ap-south-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-south-1", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-south-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ap-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-south-1", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.ap-south-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-south-1", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.ap-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-south-1", + "UseDualStack": false + } + }, + { + "documentation": "For region eu-south-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.eu-south-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "eu-south-1", + "UseDualStack": true + } + }, + { + "documentation": "For region eu-south-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.eu-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "eu-south-1", + "UseDualStack": false + } + }, + { + "documentation": "For region eu-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.eu-south-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "eu-south-1", + "UseDualStack": true + } + }, + { + "documentation": "For region eu-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.eu-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "eu-south-1", + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ca-central-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "ca-central-1", + "UseDualStack": true + } + }, + { + "documentation": "For region ca-central-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ca-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "ca-central-1", + "UseDualStack": false + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.ca-central-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "ca-central-1", + "UseDualStack": true + } + }, + { + "documentation": "For region ca-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.ca-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "ca-central-1", + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.eu-central-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "eu-central-1", + "UseDualStack": true + } + }, + { + "documentation": "For region eu-central-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.eu-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "eu-central-1", + "UseDualStack": false + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.eu-central-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "eu-central-1", + "UseDualStack": true + } + }, + { + "documentation": "For region eu-central-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.eu-central-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "eu-central-1", + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.us-west-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-west-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.us-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-west-1", + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.us-west-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-west-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.us-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-west-1", + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.us-west-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-west-2", + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.us-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-west-2", + "UseDualStack": false + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.us-west-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-west-2", + "UseDualStack": true + } + }, + { + "documentation": "For region us-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.us-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-west-2", + "UseDualStack": false + } + }, + { + "documentation": "For region af-south-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.af-south-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "af-south-1", + "UseDualStack": true + } + }, + { + "documentation": "For region af-south-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.af-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "af-south-1", + "UseDualStack": false + } + }, + { + "documentation": "For region af-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.af-south-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "af-south-1", + "UseDualStack": true + } + }, + { + "documentation": "For region af-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.af-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "af-south-1", + "UseDualStack": false + } + }, + { + "documentation": "For region eu-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.eu-north-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "eu-north-1", + "UseDualStack": true + } + }, + { + "documentation": "For region eu-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.eu-north-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "eu-north-1", + "UseDualStack": false + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.eu-north-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "eu-north-1", + "UseDualStack": true + } + }, + { + "documentation": "For region eu-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.eu-north-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "eu-north-1", + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-3 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.eu-west-3.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "eu-west-3", + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-3 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.eu-west-3.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "eu-west-3", + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.eu-west-3.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "eu-west-3", + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.eu-west-3.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "eu-west-3", + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.eu-west-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "eu-west-2", + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.eu-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "eu-west-2", + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.eu-west-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "eu-west-2", + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.eu-west-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "eu-west-2", + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.eu-west-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "eu-west-1", + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.eu-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "eu-west-1", + "UseDualStack": false + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.eu-west-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "eu-west-1", + "UseDualStack": true + } + }, + { + "documentation": "For region eu-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.eu-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "eu-west-1", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ap-northeast-3.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-northeast-3", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ap-northeast-3.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-northeast-3", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.ap-northeast-3.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-northeast-3", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-northeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.ap-northeast-3.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-northeast-3", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ap-northeast-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-northeast-2", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-northeast-2", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.ap-northeast-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-northeast-2", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-northeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.ap-northeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-northeast-2", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ap-northeast-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-northeast-1", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-northeast-1", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.ap-northeast-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-northeast-1", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-northeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.ap-northeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-northeast-1", + "UseDualStack": false + } + }, + { + "documentation": "For region me-south-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.me-south-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "me-south-1", + "UseDualStack": true + } + }, + { + "documentation": "For region me-south-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.me-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "me-south-1", + "UseDualStack": false + } + }, + { + "documentation": "For region me-south-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.me-south-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "me-south-1", + "UseDualStack": true + } + }, + { + "documentation": "For region me-south-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.me-south-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "me-south-1", + "UseDualStack": false + } + }, + { + "documentation": "For region sa-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.sa-east-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "sa-east-1", + "UseDualStack": true + } + }, + { + "documentation": "For region sa-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.sa-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "sa-east-1", + "UseDualStack": false + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.sa-east-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "sa-east-1", + "UseDualStack": true + } + }, + { + "documentation": "For region sa-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.sa-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "sa-east-1", + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.us-gov-west-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-gov-west-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-gov-west-1", + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.us-gov-west-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-gov-west-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-west-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.us-gov-west-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-gov-west-1", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ap-southeast-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-southeast-1", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-southeast-1", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.ap-southeast-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-southeast-1", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.ap-southeast-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-southeast-1", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ap-southeast-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-southeast-2", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-southeast-2", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.ap-southeast-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-southeast-2", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.ap-southeast-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-southeast-2", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-3 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ap-southeast-3.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-southeast-3", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-3 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.ap-southeast-3.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "ap-southeast-3", + "UseDualStack": false + } + }, + { + "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.ap-southeast-3.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-southeast-3", + "UseDualStack": true + } + }, + { + "documentation": "For region ap-southeast-3 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.ap-southeast-3.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "ap-southeast-3", + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.us-east-1.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-east-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-east-1", + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.us-east-1.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-east-1", + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.us-east-1.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-east-1", + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.us-east-2.api.aws" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-east-2", + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-2 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.us-east-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": true, + "Region": "us-east-2", + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.us-east-2.api.aws" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-east-2", + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-2 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.us-east-2.amazonaws.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-east-2", + "UseDualStack": false + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email-fips.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "UseFIPS": true, + "Region": "cn-northwest-1", + "UseDualStack": true + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email-fips.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "UseFIPS": true, + "Region": "cn-northwest-1", + "UseDualStack": false + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://email.cn-northwest-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "UseFIPS": false, + "Region": "cn-northwest-1", + "UseDualStack": true + } + }, + { + "documentation": "For region cn-northwest-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://email.cn-northwest-1.amazonaws.com.cn" + } + }, + "params": { + "UseFIPS": false, + "Region": "cn-northwest-1", + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "Region": "us-east-1", + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "UseFIPS": true, + "Region": "us-east-1", + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "UseFIPS": false, + "Region": "us-east-1", + "UseDualStack": true, + "Endpoint": "https://example.com" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index 3e4e46811e4..8f552aa7a63 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -9587,6 +9587,7 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-3" : { }, "ca-central-1" : { "variants" : [ { "hostname" : "network-firewall-fips.ca-central-1.amazonaws.com", diff --git a/service/frauddetector/api.go b/service/frauddetector/api.go index 83b44046a58..543332b2fa6 100644 --- a/service/frauddetector/api.go +++ b/service/frauddetector/api.go @@ -8531,8 +8531,12 @@ type CreateBatchImportJobInput struct { EventTypeName *string `locationName:"eventTypeName" min:"1" type:"string" required:"true"` // The ARN of the IAM role created for Amazon S3 bucket that holds your data - // file. The IAM role must have read and write permissions to both input and - // output S3 buckets. + // file. + // + // The IAM role must have read permissions to your input S3 bucket and write + // permissions to your output S3 bucket. For more information about bucket permissions, + // see User policy examples (https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-policies-s3.html) + // in the Amazon S3 User Guide. // // IamRoleArn is a required field IamRoleArn *string `locationName:"iamRoleArn" min:"1" type:"string" required:"true"` @@ -8701,6 +8705,11 @@ type CreateBatchPredictionJobInput struct { // The ARN of the IAM role to use for this job request. // + // The IAM Role must have read permissions to your input S3 bucket and write + // permissions to your output S3 bucket. For more information about bucket permissions, + // see User policy examples (https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-policies-s3.html) + // in the Amazon S3 User Guide. + // // IamRoleArn is a required field IamRoleArn *string `locationName:"iamRoleArn" min:"1" type:"string" required:"true"` @@ -17109,6 +17118,9 @@ type PutKMSEncryptionKeyInput struct { // The KMS encryption key ARN. // + // The KMS key must be single-Region key. Amazon Fraud Detector does not support + // multi-Region KMS key. + // // KmsEncryptionKeyArn is a required field KmsEncryptionKeyArn *string `locationName:"kmsEncryptionKeyArn" min:"7" type:"string" required:"true"` } @@ -18931,6 +18943,8 @@ type UpdateDetectorVersionStatusInput struct { // The new status. // + // The only supported values are ACTIVE and INACTIVE + // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"DetectorVersionStatus"` } diff --git a/service/sagemaker/api.go b/service/sagemaker/api.go index c9e2e5b2587..aa2b3004571 100644 --- a/service/sagemaker/api.go +++ b/service/sagemaker/api.go @@ -28843,6 +28843,84 @@ func (s *AutoRollbackConfig) SetAlarms(v []*Alarm) *AutoRollbackConfig { return s } +// Configuration to control how SageMaker captures inference data for batch +// transform jobs. +type BatchDataCaptureConfig struct { + _ struct{} `type:"structure"` + + // The Amazon S3 location being used to capture the data. + // + // DestinationS3Uri is a required field + DestinationS3Uri *string `type:"string" required:"true"` + + // Flag that indicates whether to append inference id to the output. + GenerateInferenceId *bool `type:"boolean"` + + // The Amazon Resource Name (ARN) of a Amazon Web Services Key Management Service + // key that SageMaker uses to encrypt data on the storage volume attached to + // the ML compute instance that hosts the batch transform job. + // + // The KmsKeyId can be any of the following formats: + // + // * Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab + // + // * Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab + // + // * Alias name: alias/ExampleAlias + // + // * Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias + KmsKeyId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchDataCaptureConfig) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchDataCaptureConfig) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchDataCaptureConfig) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchDataCaptureConfig"} + if s.DestinationS3Uri == nil { + invalidParams.Add(request.NewErrParamRequired("DestinationS3Uri")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDestinationS3Uri sets the DestinationS3Uri field's value. +func (s *BatchDataCaptureConfig) SetDestinationS3Uri(v string) *BatchDataCaptureConfig { + s.DestinationS3Uri = &v + return s +} + +// SetGenerateInferenceId sets the GenerateInferenceId field's value. +func (s *BatchDataCaptureConfig) SetGenerateInferenceId(v bool) *BatchDataCaptureConfig { + s.GenerateInferenceId = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *BatchDataCaptureConfig) SetKmsKeyId(v string) *BatchDataCaptureConfig { + s.KmsKeyId = &v + return s +} + // The error code and error description associated with the resource. type BatchDescribeModelPackageError struct { _ struct{} `type:"structure"` @@ -29079,6 +29157,167 @@ func (s *BatchDescribeModelPackageSummary) SetModelPackageVersion(v int64) *Batc return s } +// Input object for the batch transform job. +type BatchTransformInput_ struct { + _ struct{} `type:"structure"` + + // The Amazon S3 location being used to capture the data. + // + // DataCapturedDestinationS3Uri is a required field + DataCapturedDestinationS3Uri *string `type:"string" required:"true"` + + // The dataset format for your batch transform job. + // + // DatasetFormat is a required field + DatasetFormat *MonitoringDatasetFormat `type:"structure" required:"true"` + + // If specified, monitoring jobs substract this time from the end time. For + // information about using offsets for scheduling monitoring jobs, see Schedule + // Model Quality Monitoring Jobs (https://docs.aws.amazon.com/sagemaker/latest/dg/model-monitor-model-quality-schedule.html). + EndTimeOffset *string `min:"1" type:"string"` + + // The attributes of the input data that are the input features. + FeaturesAttribute *string `type:"string"` + + // The attribute of the input data that represents the ground truth label. + InferenceAttribute *string `type:"string"` + + // Path to the filesystem where the batch transform data is available to the + // container. + // + // LocalPath is a required field + LocalPath *string `type:"string" required:"true"` + + // In a classification problem, the attribute that represents the class probability. + ProbabilityAttribute *string `type:"string"` + + // The threshold for the class probability to be evaluated as a positive result. + ProbabilityThresholdAttribute *float64 `type:"double"` + + // Whether input data distributed in Amazon S3 is fully replicated or sharded + // by an S3 key. Defaults to FullyReplicated + S3DataDistributionType *string `type:"string" enum:"ProcessingS3DataDistributionType"` + + // Whether the Pipe or File is used as the input mode for transferring data + // for the monitoring job. Pipe mode is recommended for large datasets. File + // mode is useful for small files that fit in memory. Defaults to File. + S3InputMode *string `type:"string" enum:"ProcessingS3InputMode"` + + // If specified, monitoring jobs substract this time from the start time. For + // information about using offsets for scheduling monitoring jobs, see Schedule + // Model Quality Monitoring Jobs (https://docs.aws.amazon.com/sagemaker/latest/dg/model-monitor-model-quality-schedule.html). + StartTimeOffset *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchTransformInput_) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BatchTransformInput_) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BatchTransformInput_) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BatchTransformInput_"} + if s.DataCapturedDestinationS3Uri == nil { + invalidParams.Add(request.NewErrParamRequired("DataCapturedDestinationS3Uri")) + } + if s.DatasetFormat == nil { + invalidParams.Add(request.NewErrParamRequired("DatasetFormat")) + } + if s.EndTimeOffset != nil && len(*s.EndTimeOffset) < 1 { + invalidParams.Add(request.NewErrParamMinLen("EndTimeOffset", 1)) + } + if s.LocalPath == nil { + invalidParams.Add(request.NewErrParamRequired("LocalPath")) + } + if s.StartTimeOffset != nil && len(*s.StartTimeOffset) < 1 { + invalidParams.Add(request.NewErrParamMinLen("StartTimeOffset", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDataCapturedDestinationS3Uri sets the DataCapturedDestinationS3Uri field's value. +func (s *BatchTransformInput_) SetDataCapturedDestinationS3Uri(v string) *BatchTransformInput_ { + s.DataCapturedDestinationS3Uri = &v + return s +} + +// SetDatasetFormat sets the DatasetFormat field's value. +func (s *BatchTransformInput_) SetDatasetFormat(v *MonitoringDatasetFormat) *BatchTransformInput_ { + s.DatasetFormat = v + return s +} + +// SetEndTimeOffset sets the EndTimeOffset field's value. +func (s *BatchTransformInput_) SetEndTimeOffset(v string) *BatchTransformInput_ { + s.EndTimeOffset = &v + return s +} + +// SetFeaturesAttribute sets the FeaturesAttribute field's value. +func (s *BatchTransformInput_) SetFeaturesAttribute(v string) *BatchTransformInput_ { + s.FeaturesAttribute = &v + return s +} + +// SetInferenceAttribute sets the InferenceAttribute field's value. +func (s *BatchTransformInput_) SetInferenceAttribute(v string) *BatchTransformInput_ { + s.InferenceAttribute = &v + return s +} + +// SetLocalPath sets the LocalPath field's value. +func (s *BatchTransformInput_) SetLocalPath(v string) *BatchTransformInput_ { + s.LocalPath = &v + return s +} + +// SetProbabilityAttribute sets the ProbabilityAttribute field's value. +func (s *BatchTransformInput_) SetProbabilityAttribute(v string) *BatchTransformInput_ { + s.ProbabilityAttribute = &v + return s +} + +// SetProbabilityThresholdAttribute sets the ProbabilityThresholdAttribute field's value. +func (s *BatchTransformInput_) SetProbabilityThresholdAttribute(v float64) *BatchTransformInput_ { + s.ProbabilityThresholdAttribute = &v + return s +} + +// SetS3DataDistributionType sets the S3DataDistributionType field's value. +func (s *BatchTransformInput_) SetS3DataDistributionType(v string) *BatchTransformInput_ { + s.S3DataDistributionType = &v + return s +} + +// SetS3InputMode sets the S3InputMode field's value. +func (s *BatchTransformInput_) SetS3InputMode(v string) *BatchTransformInput_ { + s.S3InputMode = &v + return s +} + +// SetStartTimeOffset sets the StartTimeOffset field's value. +func (s *BatchTransformInput_) SetStartTimeOffset(v string) *BatchTransformInput_ { + s.StartTimeOffset = &v + return s +} + // Contains bias metrics for a model. type Bias struct { _ struct{} `type:"structure"` @@ -39764,6 +40003,9 @@ type CreateTransformJobInput struct { // limit, set BatchStrategy to MultiRecord and SplitType to Line. BatchStrategy *string `type:"string" enum:"BatchStrategy"` + // Configuration to control how SageMaker captures inference data. + DataCaptureConfig *BatchDataCaptureConfig `type:"structure"` + // The data structure used to specify the data to be used for inference in a // batch transform job and to associate the data that is relevant to the prediction // results in the output. The input filter provided allows you to exclude input @@ -39891,6 +40133,11 @@ func (s *CreateTransformJobInput) Validate() error { if s.TransformResources == nil { invalidParams.Add(request.NewErrParamRequired("TransformResources")) } + if s.DataCaptureConfig != nil { + if err := s.DataCaptureConfig.Validate(); err != nil { + invalidParams.AddNested("DataCaptureConfig", err.(request.ErrInvalidParams)) + } + } if s.ExperimentConfig != nil { if err := s.ExperimentConfig.Validate(); err != nil { invalidParams.AddNested("ExperimentConfig", err.(request.ErrInvalidParams)) @@ -39939,6 +40186,12 @@ func (s *CreateTransformJobInput) SetBatchStrategy(v string) *CreateTransformJob return s } +// SetDataCaptureConfig sets the DataCaptureConfig field's value. +func (s *CreateTransformJobInput) SetDataCaptureConfig(v *BatchDataCaptureConfig) *CreateTransformJobInput { + s.DataCaptureConfig = v + return s +} + // SetDataProcessing sets the DataProcessing field's value. func (s *CreateTransformJobInput) SetDataProcessing(v *DataProcessing) *CreateTransformJobInput { s.DataProcessing = v @@ -41530,10 +41783,11 @@ func (s *DataQualityBaselineConfig) SetStatisticsResource(v *MonitoringStatistic type DataQualityJobInput struct { _ struct{} `type:"structure"` + // Input object for the batch transform job. + BatchTransformInput *BatchTransformInput_ `type:"structure"` + // Input object for the endpoint - // - // EndpointInput is a required field - EndpointInput *EndpointInput `type:"structure" required:"true"` + EndpointInput *EndpointInput `type:"structure"` } // String returns the string representation. @@ -41557,8 +41811,10 @@ func (s DataQualityJobInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *DataQualityJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DataQualityJobInput"} - if s.EndpointInput == nil { - invalidParams.Add(request.NewErrParamRequired("EndpointInput")) + if s.BatchTransformInput != nil { + if err := s.BatchTransformInput.Validate(); err != nil { + invalidParams.AddNested("BatchTransformInput", err.(request.ErrInvalidParams)) + } } if s.EndpointInput != nil { if err := s.EndpointInput.Validate(); err != nil { @@ -41572,6 +41828,12 @@ func (s *DataQualityJobInput) Validate() error { return nil } +// SetBatchTransformInput sets the BatchTransformInput field's value. +func (s *DataQualityJobInput) SetBatchTransformInput(v *BatchTransformInput_) *DataQualityJobInput { + s.BatchTransformInput = v + return s +} + // SetEndpointInput sets the EndpointInput field's value. func (s *DataQualityJobInput) SetEndpointInput(v *EndpointInput) *DataQualityJobInput { s.EndpointInput = v @@ -54420,6 +54682,9 @@ type DescribeTransformJobOutput struct { // CreationTime is a required field CreationTime *time.Time `type:"timestamp" required:"true"` + // Configuration to control how SageMaker captures inference data. + DataCaptureConfig *BatchDataCaptureConfig `type:"structure"` + // The data structure used to specify the data to be used for inference in a // batch transform job and to associate the data that is relevant to the prediction // results in the output. The input filter provided allows you to exclude input @@ -54546,6 +54811,12 @@ func (s *DescribeTransformJobOutput) SetCreationTime(v time.Time) *DescribeTrans return s } +// SetDataCaptureConfig sets the DataCaptureConfig field's value. +func (s *DescribeTransformJobOutput) SetDataCaptureConfig(v *BatchDataCaptureConfig) *DescribeTransformJobOutput { + s.DataCaptureConfig = v + return s +} + // SetDataProcessing sets the DataProcessing field's value. func (s *DescribeTransformJobOutput) SetDataProcessing(v *DataProcessing) *DescribeTransformJobOutput { s.DataProcessing = v @@ -75849,10 +76120,11 @@ func (s *ModelBiasBaselineConfig) SetConstraintsResource(v *MonitoringConstraint type ModelBiasJobInput struct { _ struct{} `type:"structure"` + // Input object for the batch transform job. + BatchTransformInput *BatchTransformInput_ `type:"structure"` + // Input object for the endpoint - // - // EndpointInput is a required field - EndpointInput *EndpointInput `type:"structure" required:"true"` + EndpointInput *EndpointInput `type:"structure"` // Location of ground truth labels to use in model bias job. // @@ -75881,12 +76153,14 @@ func (s ModelBiasJobInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *ModelBiasJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModelBiasJobInput"} - if s.EndpointInput == nil { - invalidParams.Add(request.NewErrParamRequired("EndpointInput")) - } if s.GroundTruthS3Input == nil { invalidParams.Add(request.NewErrParamRequired("GroundTruthS3Input")) } + if s.BatchTransformInput != nil { + if err := s.BatchTransformInput.Validate(); err != nil { + invalidParams.AddNested("BatchTransformInput", err.(request.ErrInvalidParams)) + } + } if s.EndpointInput != nil { if err := s.EndpointInput.Validate(); err != nil { invalidParams.AddNested("EndpointInput", err.(request.ErrInvalidParams)) @@ -75899,6 +76173,12 @@ func (s *ModelBiasJobInput) Validate() error { return nil } +// SetBatchTransformInput sets the BatchTransformInput field's value. +func (s *ModelBiasJobInput) SetBatchTransformInput(v *BatchTransformInput_) *ModelBiasJobInput { + s.BatchTransformInput = v + return s +} + // SetEndpointInput sets the EndpointInput field's value. func (s *ModelBiasJobInput) SetEndpointInput(v *EndpointInput) *ModelBiasJobInput { s.EndpointInput = v @@ -76318,10 +76598,11 @@ func (s *ModelExplainabilityBaselineConfig) SetConstraintsResource(v *Monitoring type ModelExplainabilityJobInput struct { _ struct{} `type:"structure"` + // Input object for the batch transform job. + BatchTransformInput *BatchTransformInput_ `type:"structure"` + // Input object for the endpoint - // - // EndpointInput is a required field - EndpointInput *EndpointInput `type:"structure" required:"true"` + EndpointInput *EndpointInput `type:"structure"` } // String returns the string representation. @@ -76345,8 +76626,10 @@ func (s ModelExplainabilityJobInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *ModelExplainabilityJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModelExplainabilityJobInput"} - if s.EndpointInput == nil { - invalidParams.Add(request.NewErrParamRequired("EndpointInput")) + if s.BatchTransformInput != nil { + if err := s.BatchTransformInput.Validate(); err != nil { + invalidParams.AddNested("BatchTransformInput", err.(request.ErrInvalidParams)) + } } if s.EndpointInput != nil { if err := s.EndpointInput.Validate(); err != nil { @@ -76360,6 +76643,12 @@ func (s *ModelExplainabilityJobInput) Validate() error { return nil } +// SetBatchTransformInput sets the BatchTransformInput field's value. +func (s *ModelExplainabilityJobInput) SetBatchTransformInput(v *BatchTransformInput_) *ModelExplainabilityJobInput { + s.BatchTransformInput = v + return s +} + // SetEndpointInput sets the EndpointInput field's value. func (s *ModelExplainabilityJobInput) SetEndpointInput(v *EndpointInput) *ModelExplainabilityJobInput { s.EndpointInput = v @@ -77951,10 +78240,11 @@ func (s *ModelQualityBaselineConfig) SetConstraintsResource(v *MonitoringConstra type ModelQualityJobInput struct { _ struct{} `type:"structure"` + // Input object for the batch transform job. + BatchTransformInput *BatchTransformInput_ `type:"structure"` + // Input object for the endpoint - // - // EndpointInput is a required field - EndpointInput *EndpointInput `type:"structure" required:"true"` + EndpointInput *EndpointInput `type:"structure"` // The ground truth label provided for the model. // @@ -77983,12 +78273,14 @@ func (s ModelQualityJobInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *ModelQualityJobInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ModelQualityJobInput"} - if s.EndpointInput == nil { - invalidParams.Add(request.NewErrParamRequired("EndpointInput")) - } if s.GroundTruthS3Input == nil { invalidParams.Add(request.NewErrParamRequired("GroundTruthS3Input")) } + if s.BatchTransformInput != nil { + if err := s.BatchTransformInput.Validate(); err != nil { + invalidParams.AddNested("BatchTransformInput", err.(request.ErrInvalidParams)) + } + } if s.EndpointInput != nil { if err := s.EndpointInput.Validate(); err != nil { invalidParams.AddNested("EndpointInput", err.(request.ErrInvalidParams)) @@ -78001,6 +78293,12 @@ func (s *ModelQualityJobInput) Validate() error { return nil } +// SetBatchTransformInput sets the BatchTransformInput field's value. +func (s *ModelQualityJobInput) SetBatchTransformInput(v *BatchTransformInput_) *ModelQualityJobInput { + s.BatchTransformInput = v + return s +} + // SetEndpointInput sets the EndpointInput field's value. func (s *ModelQualityJobInput) SetEndpointInput(v *EndpointInput) *ModelQualityJobInput { s.EndpointInput = v @@ -78388,6 +78686,88 @@ func (s *MonitoringConstraintsResource) SetS3Uri(v string) *MonitoringConstraint return s } +// Represents the CSV dataset format used when running a monitoring job. +type MonitoringCsvDatasetFormat struct { + _ struct{} `type:"structure"` + + // Indicates if the CSV data has a header. + Header *bool `type:"boolean"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MonitoringCsvDatasetFormat) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MonitoringCsvDatasetFormat) GoString() string { + return s.String() +} + +// SetHeader sets the Header field's value. +func (s *MonitoringCsvDatasetFormat) SetHeader(v bool) *MonitoringCsvDatasetFormat { + s.Header = &v + return s +} + +// Represents the dataset format used when running a monitoring job. +type MonitoringDatasetFormat struct { + _ struct{} `type:"structure"` + + // The CSV dataset used in the monitoring job. + Csv *MonitoringCsvDatasetFormat `type:"structure"` + + // The JSON dataset used in the monitoring job + Json *MonitoringJsonDatasetFormat `type:"structure"` + + // The Parquet dataset used in the monitoring job + Parquet *MonitoringParquetDatasetFormat `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MonitoringDatasetFormat) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MonitoringDatasetFormat) GoString() string { + return s.String() +} + +// SetCsv sets the Csv field's value. +func (s *MonitoringDatasetFormat) SetCsv(v *MonitoringCsvDatasetFormat) *MonitoringDatasetFormat { + s.Csv = v + return s +} + +// SetJson sets the Json field's value. +func (s *MonitoringDatasetFormat) SetJson(v *MonitoringJsonDatasetFormat) *MonitoringDatasetFormat { + s.Json = v + return s +} + +// SetParquet sets the Parquet field's value. +func (s *MonitoringDatasetFormat) SetParquet(v *MonitoringParquetDatasetFormat) *MonitoringDatasetFormat { + s.Parquet = v + return s +} + // Summary of information about the last monitoring job to run. type MonitoringExecutionSummary struct { _ struct{} `type:"structure"` @@ -78547,10 +78927,11 @@ func (s *MonitoringGroundTruthS3Input) SetS3Uri(v string) *MonitoringGroundTruth type MonitoringInput struct { _ struct{} `type:"structure"` + // Input object for the batch transform job. + BatchTransformInput *BatchTransformInput_ `type:"structure"` + // The endpoint for a monitoring job. - // - // EndpointInput is a required field - EndpointInput *EndpointInput `type:"structure" required:"true"` + EndpointInput *EndpointInput `type:"structure"` } // String returns the string representation. @@ -78574,8 +78955,10 @@ func (s MonitoringInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *MonitoringInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "MonitoringInput"} - if s.EndpointInput == nil { - invalidParams.Add(request.NewErrParamRequired("EndpointInput")) + if s.BatchTransformInput != nil { + if err := s.BatchTransformInput.Validate(); err != nil { + invalidParams.AddNested("BatchTransformInput", err.(request.ErrInvalidParams)) + } } if s.EndpointInput != nil { if err := s.EndpointInput.Validate(); err != nil { @@ -78589,6 +78972,12 @@ func (s *MonitoringInput) Validate() error { return nil } +// SetBatchTransformInput sets the BatchTransformInput field's value. +func (s *MonitoringInput) SetBatchTransformInput(v *BatchTransformInput_) *MonitoringInput { + s.BatchTransformInput = v + return s +} + // SetEndpointInput sets the EndpointInput field's value. func (s *MonitoringInput) SetEndpointInput(v *EndpointInput) *MonitoringInput { s.EndpointInput = v @@ -78853,6 +79242,38 @@ func (s *MonitoringJobDefinitionSummary) SetMonitoringJobDefinitionName(v string return s } +// Represents the JSON dataset format used when running a monitoring job. +type MonitoringJsonDatasetFormat struct { + _ struct{} `type:"structure"` + + // Indicates if the file should be read as a json object per line. + Line *bool `type:"boolean"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MonitoringJsonDatasetFormat) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MonitoringJsonDatasetFormat) GoString() string { + return s.String() +} + +// SetLine sets the Line field's value. +func (s *MonitoringJsonDatasetFormat) SetLine(v bool) *MonitoringJsonDatasetFormat { + s.Line = &v + return s +} + // The networking configuration for the monitoring job. type MonitoringNetworkConfig struct { _ struct{} `type:"structure"` @@ -79050,6 +79471,29 @@ func (s *MonitoringOutputConfig) SetMonitoringOutputs(v []*MonitoringOutput) *Mo return s } +// Represents the Parquet dataset format used when running a monitoring job. +type MonitoringParquetDatasetFormat struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MonitoringParquetDatasetFormat) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s MonitoringParquetDatasetFormat) GoString() string { + return s.String() +} + // Identifies the resources to deploy for a monitoring job. type MonitoringResources struct { _ struct{} `type:"structure"` diff --git a/service/servicediscovery/api.go b/service/servicediscovery/api.go index 5577694bac7..37b2b50b233 100644 --- a/service/servicediscovery/api.go +++ b/service/servicediscovery/api.go @@ -61,7 +61,7 @@ func (c *ServiceDiscovery) CreateHttpNamespaceRequest(input *CreateHttpNamespace // using DNS. // // For the current quota on the number of namespaces that you can create using -// the same account, see Cloud Map quotas (https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html) +// the same Amazon Web Services account, see Cloud Map quotas (https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html) // in the Cloud Map Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -163,8 +163,8 @@ func (c *ServiceDiscovery) CreatePrivateDnsNamespaceRequest(input *CreatePrivate // the resulting DNS name for the service is backend.example.com. Service instances // that are registered using a private DNS namespace can be discovered using // either a DiscoverInstances request or using DNS. For the current quota on -// the number of namespaces that you can create using the same account, see -// Cloud Map quotas (https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html) +// the number of namespaces that you can create using the same Amazon Web Services +// account, see Cloud Map quotas (https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html) // in the Cloud Map Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -266,9 +266,13 @@ func (c *ServiceDiscovery) CreatePublicDnsNamespaceRequest(input *CreatePublicDn // name for the service is backend.example.com. You can discover instances that // were registered with a public DNS namespace by using either a DiscoverInstances // request or using DNS. For the current quota on the number of namespaces that -// you can create using the same account, see Cloud Map quotas (https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html) +// you can create using the same Amazon Web Services account, see Cloud Map +// quotas (https://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html) // in the Cloud Map Developer Guide. // +// The CreatePublicDnsNamespace API operation is not supported in the Amazon +// Web Services GovCloud (US) Regions. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -1490,7 +1494,7 @@ func (c *ServiceDiscovery) ListNamespacesRequest(input *ListNamespacesInput) (re // ListNamespaces API operation for AWS Cloud Map. // // Lists summary information about the namespaces that were created by the current -// account. +// Amazon Web Services account. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2998,6 +3002,9 @@ type CreatePublicDnsNamespaceInput struct { // The name that you want to assign to this namespace. // + // Do not include sensitive information in the name. The name is publicly available + // using DNS queries. + // // Name is a required field Name *string `type:"string" required:"true"` @@ -3157,6 +3164,9 @@ type CreateServiceInput struct { // The name that you want to assign to the service. // + // Do not include sensitive information in the name if the namespace is discoverable + // by public DNS queries. + // // If you want Cloud Map to create an SRV record when you register an instance // and you're using a system that requires a specific SRV format, such as HAProxy // (http://www.haproxy.org/), specify the following for Name: @@ -3802,6 +3812,9 @@ func (s *DiscoverInstancesOutput) SetInstances(v []*HttpInstanceSummary) *Discov // A complex type that contains information about the Amazon Route 53 DNS records // that you want Cloud Map to create when you register an instance. +// +// The record types of a service can only be changed by deleting the service +// and recreating it with a new Dnsconfig. type DnsConfig struct { _ struct{} `type:"structure"` @@ -3811,6 +3824,9 @@ type DnsConfig struct { // DnsRecords is a required field DnsRecords []*DnsRecord `type:"list" required:"true"` + // Use NamespaceId in Service (https://docs.aws.amazon.com/cloud-map/latest/api/API_Service.html) + // instead. + // // The ID of the namespace to use for DNS configuration. // // Deprecated: Top level attribute in request should be used to reference namespace-id @@ -5122,6 +5138,9 @@ type Instance struct { // // * For each attribute, the applicable value. // + // Do not include sensitive information in the attributes if the namespace is + // discoverable by public DNS queries. + // // Supported attribute keys include the following: // // AWS_ALIAS_DNS_NAME @@ -6287,34 +6306,37 @@ func (s *NamespaceAlreadyExists) RequestID() string { type NamespaceFilter struct { _ struct{} `type:"structure"` - // The operator that you want to use to determine whether ListNamespaces returns - // a namespace. Valid values for condition include: + // Specify the operator that you want to use to determine whether a namespace + // matches the specified value. Valid values for Condition are one of the following. // - // EQ + // * EQ: When you specify EQ for Condition, you can specify only one value. + // EQ is supported for TYPE, NAME, and HTTP_NAME. EQ is the default condition + // and can be omitted. // - // When you specify EQ for the condition, you can choose to list only public - // namespaces or private namespaces, but not both. EQ is the default condition - // and can be omitted. - // - // IN + // * BEGINS_WITH: When you specify BEGINS_WITH for Condition, you can specify + // only one value. BEGINS_WITH is supported for TYPE, NAME, and HTTP_NAME. + Condition *string `type:"string" enum:"FilterCondition"` + + // Specify the namespaces that you want to get using one of the following. // - // When you specify IN for the condition, you can choose to list public namespaces, - // private namespaces, or both. + // * TYPE: Gets the namespaces of the specified type. // - // BETWEEN + // * NAME: Gets the namespaces with the specified name. // - // Not applicable - Condition *string `type:"string" enum:"FilterCondition"` - - // Specify TYPE. + // * HTTP_NAME: Gets the namespaces with the specified HTTP name. // // Name is a required field Name *string `type:"string" required:"true" enum:"NamespaceFilterName"` - // If you specify EQ for Condition, specify either DNS_PUBLIC or DNS_PRIVATE. + // Specify the values that are applicable to the value that you specify for + // Name. // - // If you specify IN for Condition, you can specify DNS_PUBLIC, DNS_PRIVATE, - // or both. + // * TYPE: Specify HTTP, DNS_PUBLIC, or DNS_PRIVATE. + // + // * NAME: Specify the name of the namespace, which is found in Namespace.Name. + // + // * HTTP_NAME: Specify the HTTP name of the namespace, which is found in + // Namespace.Properties.HttpProperties.HttpName. // // Values is a required field Values []*string `type:"list" required:"true"` @@ -7485,6 +7507,9 @@ type RegisterInstanceInput struct { // // * For each attribute, the applicable value. // + // Do not include sensitive information in the attributes if the namespace is + // discoverable by public DNS queries. + // // Supported attribute keys include the following: // // AWS_ALIAS_DNS_NAME @@ -7602,6 +7627,10 @@ type RegisterInstanceInput struct { // check isn't deleted immediately, so it will still appear for a while if // you submit a ListHealthChecks request, for example. // + // Do not include sensitive information in InstanceId if the namespace is discoverable + // by public DNS queries and any Type member of DnsRecord for the service contains + // SRV because the InstanceId is discoverable by public DNS queries. + // // InstanceId is a required field InstanceId *string `type:"string" required:"true"` @@ -8083,6 +8112,9 @@ type Service struct { // A complex type that contains information about the Route 53 DNS records that // you want Cloud Map to create when you register an instance. + // + // The record types of a service can only be changed by deleting the service + // and recreating it with a new Dnsconfig. DnsConfig *DnsConfig `type:"structure"` // Public DNS and HTTP namespaces only. A complex type that contains settings @@ -8378,11 +8410,6 @@ type ServiceFilter struct { // // * EQ: When you specify EQ, specify one namespace ID for Values. EQ is // the default condition and can be omitted. - // - // * IN: When you specify IN, specify a list of the IDs for the namespaces - // that you want ListServices to return a list of services for. - // - // * BETWEEN: Not applicable. Condition *string `type:"string" enum:"FilterCondition"` // Specify NAMESPACE_ID. @@ -9522,6 +9549,9 @@ const ( // FilterConditionBetween is a FilterCondition enum value FilterConditionBetween = "BETWEEN" + + // FilterConditionBeginsWith is a FilterCondition enum value + FilterConditionBeginsWith = "BEGINS_WITH" ) // FilterCondition_Values returns all elements of the FilterCondition enum @@ -9530,6 +9560,7 @@ func FilterCondition_Values() []string { FilterConditionEq, FilterConditionIn, FilterConditionBetween, + FilterConditionBeginsWith, } } @@ -9600,12 +9631,20 @@ func HealthStatusFilter_Values() []string { const ( // NamespaceFilterNameType is a NamespaceFilterName enum value NamespaceFilterNameType = "TYPE" + + // NamespaceFilterNameName is a NamespaceFilterName enum value + NamespaceFilterNameName = "NAME" + + // NamespaceFilterNameHttpName is a NamespaceFilterName enum value + NamespaceFilterNameHttpName = "HTTP_NAME" ) // NamespaceFilterName_Values returns all elements of the NamespaceFilterName enum func NamespaceFilterName_Values() []string { return []string{ NamespaceFilterNameType, + NamespaceFilterNameName, + NamespaceFilterNameHttpName, } } diff --git a/service/sesv2/api.go b/service/sesv2/api.go index 9a422e4f0de..a13f7dbfd87 100644 --- a/service/sesv2/api.go +++ b/service/sesv2/api.go @@ -437,7 +437,7 @@ func (c *SESV2) CreateCustomVerificationEmailTemplateRequest(input *CreateCustom // Creates a new custom verification email template. // // For more information about custom verification email templates, see Using -// Custom Verification Email Templates (https://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-verify-address-custom.html) +// custom verification email templates (https://docs.aws.amazon.com/ses/latest/dg/creating-identities.html#send-email-verify-address-custom) // in the Amazon SES Developer Guide. // // You can execute this operation no more than once per second. @@ -1510,7 +1510,7 @@ func (c *SESV2) DeleteCustomVerificationEmailTemplateRequest(input *DeleteCustom // Deletes an existing custom verification email template. // // For more information about custom verification email templates, see Using -// Custom Verification Email Templates (https://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-verify-address-custom.html) +// custom verification email templates (https://docs.aws.amazon.com/ses/latest/dg/creating-identities.html#send-email-verify-address-custom) // in the Amazon SES Developer Guide. // // You can execute this operation no more than once per second. @@ -2577,7 +2577,7 @@ func (c *SESV2) GetCustomVerificationEmailTemplateRequest(input *GetCustomVerifi // specify. // // For more information about custom verification email templates, see Using -// Custom Verification Email Templates (https://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-verify-address-custom.html) +// custom verification email templates (https://docs.aws.amazon.com/ses/latest/dg/creating-identities.html#send-email-verify-address-custom) // in the Amazon SES Developer Guide. // // You can execute this operation no more than once per second. @@ -2709,6 +2709,91 @@ func (c *SESV2) GetDedicatedIpWithContext(ctx aws.Context, input *GetDedicatedIp return out, req.Send() } +const opGetDedicatedIpPool = "GetDedicatedIpPool" + +// GetDedicatedIpPoolRequest generates a "aws/request.Request" representing the +// client's request for the GetDedicatedIpPool operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetDedicatedIpPool for more information on using the GetDedicatedIpPool +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetDedicatedIpPoolRequest method. +// req, resp := client.GetDedicatedIpPoolRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetDedicatedIpPool +func (c *SESV2) GetDedicatedIpPoolRequest(input *GetDedicatedIpPoolInput) (req *request.Request, output *GetDedicatedIpPoolOutput) { + op := &request.Operation{ + Name: opGetDedicatedIpPool, + HTTPMethod: "GET", + HTTPPath: "/v2/email/dedicated-ip-pools/{PoolName}", + } + + if input == nil { + input = &GetDedicatedIpPoolInput{} + } + + output = &GetDedicatedIpPoolOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDedicatedIpPool API operation for Amazon Simple Email Service. +// +// Retrieve information about the dedicated pool. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Simple Email Service's +// API operation GetDedicatedIpPool for usage and error information. +// +// Returned Error Types: +// +// - TooManyRequestsException +// Too many requests have been made to the operation. +// +// - NotFoundException +// The resource you attempted to access doesn't exist. +// +// - BadRequestException +// The input you provided is invalid. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/sesv2-2019-09-27/GetDedicatedIpPool +func (c *SESV2) GetDedicatedIpPool(input *GetDedicatedIpPoolInput) (*GetDedicatedIpPoolOutput, error) { + req, out := c.GetDedicatedIpPoolRequest(input) + return out, req.Send() +} + +// GetDedicatedIpPoolWithContext is the same as GetDedicatedIpPool with the addition of +// the ability to pass a context and additional request options. +// +// See GetDedicatedIpPool for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SESV2) GetDedicatedIpPoolWithContext(ctx aws.Context, input *GetDedicatedIpPoolInput, opts ...request.Option) (*GetDedicatedIpPoolOutput, error) { + req, out := c.GetDedicatedIpPoolRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetDedicatedIps = "GetDedicatedIps" // GetDedicatedIpsRequest generates a "aws/request.Request" representing the @@ -4128,7 +4213,7 @@ func (c *SESV2) ListCustomVerificationEmailTemplatesRequest(input *ListCustomVer // the current Amazon Web Services Region. // // For more information about custom verification email templates, see Using -// Custom Verification Email Templates (https://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-verify-address-custom.html) +// custom verification email templates (https://docs.aws.amazon.com/ses/latest/dg/creating-identities.html#send-email-verify-address-custom) // in the Amazon SES Developer Guide. // // You can execute this operation no more than once per second. @@ -7044,7 +7129,7 @@ func (c *SESV2) SendCustomVerificationEmailRequest(input *SendCustomVerification // // To use this operation, you must first create a custom verification email // template. For more information about creating and using custom verification -// email templates, see Using Custom Verification Email Templates (https://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-verify-address-custom.html) +// email templates, see Using custom verification email templates (https://docs.aws.amazon.com/ses/latest/dg/creating-identities.html#send-email-verify-address-custom) // in the Amazon SES Developer Guide. // // You can execute this operation no more than once per second. @@ -7812,7 +7897,7 @@ func (c *SESV2) UpdateCustomVerificationEmailTemplateRequest(input *UpdateCustom // Updates an existing custom verification email template. // // For more information about custom verification email templates, see Using -// Custom Verification Email Templates (https://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-verify-address-custom.html) +// custom verification email templates (https://docs.aws.amazon.com/ses/latest/dg/creating-identities.html#send-email-verify-address-custom) // in the Amazon SES Developer Guide. // // You can execute this operation no more than once per second. @@ -8345,7 +8430,7 @@ type BlacklistEntry struct { // maintainer. Description *string `type:"string"` - // The time when the blacklisting event occurred, shown in Unix time format. + // The time when the blacklisting event occurred. ListingTime *time.Time `type:"timestamp"` // The name of the blacklist that the IP address appears on. @@ -8751,8 +8836,8 @@ type CloudWatchDimensionConfiguration struct { // if you don't provide the value of the dimension when you send an email. This // value has to meet the following criteria: // - // * It can only contain ASCII letters (a–z, A–Z), numbers (0–9), underscores - // (_), or dashes (-). + // * Can only contain ASCII letters (a–z, A–Z), numbers (0–9), underscores + // (_), or dashes (-), at signs (@), and periods (.). // // * It can contain no more than 256 characters. // @@ -9717,8 +9802,8 @@ type CreateCustomVerificationEmailTemplateInput struct { // The content of the custom verification email. The total size of the email // must be less than 10 MB. The message body may contain HTML, with some limitations. - // For more information, see Custom Verification Email Frequently Asked Questions - // (https://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-verify-address-custom.html#custom-verification-emails-faq) + // For more information, see Custom verification email frequently asked questions + // (https://docs.aws.amazon.com/ses/latest/dg/creating-identities.html#send-email-verify-address-custom-faq) // in the Amazon SES Developer Guide. // // TemplateContent is a required field @@ -9853,6 +9938,9 @@ type CreateDedicatedIpPoolInput struct { // PoolName is a required field PoolName *string `type:"string" required:"true"` + // The type of scaling mode. + ScalingMode *string `type:"string" enum:"ScalingMode"` + // An object that defines the tags (keys and values) that you want to associate // with the pool. Tags []*Tag `type:"list"` @@ -9905,6 +9993,12 @@ func (s *CreateDedicatedIpPoolInput) SetPoolName(v string) *CreateDedicatedIpPoo return s } +// SetScalingMode sets the ScalingMode field's value. +func (s *CreateDedicatedIpPoolInput) SetScalingMode(v string) *CreateDedicatedIpPoolInput { + s.ScalingMode = &v + return s +} + // SetTags sets the Tags field's value. func (s *CreateDedicatedIpPoolInput) SetTags(v []*Tag) *CreateDedicatedIpPoolInput { s.Tags = v @@ -10760,6 +10854,57 @@ func (s *DedicatedIp) SetWarmupStatus(v string) *DedicatedIp { return s } +// Contains information about a dedicated IP pool. +type DedicatedIpPool struct { + _ struct{} `type:"structure"` + + // The name of the dedicated IP pool. + // + // PoolName is a required field + PoolName *string `type:"string" required:"true"` + + // The type of the dedicated IP pool. + // + // * STANDARD – A dedicated IP pool where the customer can control which + // IPs are part of the pool. + // + // * MANAGED – A dedicated IP pool where the reputation and number of IPs + // is automatically managed by Amazon SES. + // + // ScalingMode is a required field + ScalingMode *string `type:"string" required:"true" enum:"ScalingMode"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DedicatedIpPool) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DedicatedIpPool) GoString() string { + return s.String() +} + +// SetPoolName sets the PoolName field's value. +func (s *DedicatedIpPool) SetPoolName(v string) *DedicatedIpPool { + s.PoolName = &v + return s +} + +// SetScalingMode sets the ScalingMode field's value. +func (s *DedicatedIpPool) SetScalingMode(v string) *DedicatedIpPool { + s.ScalingMode = &v + return s +} + // A request to delete an event destination from a configuration set. type DeleteConfigurationSetEventDestinationInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -11561,8 +11706,7 @@ func (s DeleteSuppressedDestinationOutput) GoString() string { type DeliverabilityTestReport struct { _ struct{} `type:"structure"` - // The date and time when the predictive inbox placement test was created, in - // Unix time format. + // The date and time when the predictive inbox placement test was created. CreateDate *time.Time `type:"timestamp"` // The status of the predictive inbox placement test. If the status is IN_PROGRESS, @@ -11977,9 +12121,9 @@ type DomainDeliverabilityCampaign struct { // The major email providers who handled the email message. Esps []*string `type:"list"` - // The first time, in Unix time format, when the email message was delivered - // to any recipient's inbox. This value can help you determine how long it took - // for a campaign to deliver an email message. + // The first time when the email message was delivered to any recipient's inbox. + // This value can help you determine how long it took for a campaign to deliver + // an email message. FirstSeenDateTime *time.Time `type:"timestamp"` // The verified email address that the email message was sent from. @@ -11992,9 +12136,9 @@ type DomainDeliverabilityCampaign struct { // The number of email messages that were delivered to recipients’ inboxes. InboxCount *int64 `type:"long"` - // The last time, in Unix time format, when the email message was delivered - // to any recipient's inbox. This value can help you determine how long it took - // for a campaign to deliver an email message. + // The last time when the email message was delivered to any recipient's inbox. + // This value can help you determine how long it took for a campaign to deliver + // an email message. LastSeenDateTime *time.Time `type:"timestamp"` // The projected number of recipients that the email message was sent to. @@ -12139,8 +12283,7 @@ type DomainDeliverabilityTrackingOption struct { // for the domain. InboxPlacementTrackingOption *InboxPlacementTrackingOption `type:"structure"` - // The date, in Unix time format, when you enabled the Deliverability dashboard - // for the domain. + // The date when you enabled the Deliverability dashboard for the domain. SubscriptionStartDate *time.Time `type:"timestamp"` } @@ -13665,6 +13808,88 @@ func (s *GetDedicatedIpOutput) SetDedicatedIp(v *DedicatedIp) *GetDedicatedIpOut return s } +// A request to obtain more information about a dedicated IP pool. +type GetDedicatedIpPoolInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The name of the dedicated IP pool to retrieve. + // + // PoolName is a required field + PoolName *string `location:"uri" locationName:"PoolName" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDedicatedIpPoolInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDedicatedIpPoolInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDedicatedIpPoolInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDedicatedIpPoolInput"} + if s.PoolName == nil { + invalidParams.Add(request.NewErrParamRequired("PoolName")) + } + if s.PoolName != nil && len(*s.PoolName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PoolName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPoolName sets the PoolName field's value. +func (s *GetDedicatedIpPoolInput) SetPoolName(v string) *GetDedicatedIpPoolInput { + s.PoolName = &v + return s +} + +// The following element is returned by the service. +type GetDedicatedIpPoolOutput struct { + _ struct{} `type:"structure"` + + // An object that contains information about a dedicated IP pool. + DedicatedIpPool *DedicatedIpPool `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDedicatedIpPoolOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetDedicatedIpPoolOutput) GoString() string { + return s.String() +} + +// SetDedicatedIpPool sets the DedicatedIpPool field's value. +func (s *GetDedicatedIpPoolOutput) SetDedicatedIpPool(v *DedicatedIpPool) *GetDedicatedIpPoolOutput { + s.DedicatedIpPool = v + return s +} + // A request to obtain more information about dedicated IP pools. type GetDedicatedIpsInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -13822,10 +14047,10 @@ type GetDeliverabilityDashboardOptionsOutput struct { // scheduled to expire at the end of the current calendar month. PendingExpirationSubscribedDomains []*DomainDeliverabilityTrackingOption `type:"list"` - // The date, in Unix time format, when your current subscription to the Deliverability - // dashboard is scheduled to expire, if your subscription is scheduled to expire - // at the end of the current calendar month. This value is null if you have - // an active subscription that isn’t due to expire at the end of the month. + // The date when your current subscription to the Deliverability dashboard is + // scheduled to expire, if your subscription is scheduled to expire at the end + // of the current calendar month. This value is null if you have an active subscription + // that isn’t due to expire at the end of the month. SubscriptionExpiryDate *time.Time `type:"timestamp"` } @@ -14313,6 +14538,22 @@ type GetEmailIdentityOutput struct { // with the email identity. Tags []*Tag `type:"list"` + // The verification status of the identity. The status can be one of the following: + // + // * PENDING – The verification process was initiated, but Amazon SES hasn't + // yet been able to verify the identity. + // + // * SUCCESS – The verification process completed successfully. + // + // * FAILED – The verification process failed. + // + // * TEMPORARY_FAILURE – A temporary issue is preventing Amazon SES from + // determining the verification status of the identity. + // + // * NOT_STARTED – The verification process hasn't been initiated for the + // identity. + VerificationStatus *string `type:"string" enum:"VerificationStatus"` + // Specifies whether or not the identity is verified. You can only send email // from verified email addresses or domains. For more information about verifying // identities, see the Amazon Pinpoint User Guide (https://docs.aws.amazon.com/pinpoint/latest/userguide/channels-email-manage-verify.html). @@ -14379,6 +14620,12 @@ func (s *GetEmailIdentityOutput) SetTags(v []*Tag) *GetEmailIdentityOutput { return s } +// SetVerificationStatus sets the VerificationStatus field's value. +func (s *GetEmailIdentityOutput) SetVerificationStatus(v string) *GetEmailIdentityOutput { + s.VerificationStatus = &v + return s +} + // SetVerifiedForSendingStatus sets the VerifiedForSendingStatus field's value. func (s *GetEmailIdentityOutput) SetVerifiedForSendingStatus(v bool) *GetEmailIdentityOutput { s.VerifiedForSendingStatus = &v @@ -14823,6 +15070,22 @@ type IdentityInfo struct { // you can send email from an identity, you have to demostrate that you own // the identity, and that you authorize Amazon SES to send email from that identity. SendingEnabled *bool `type:"boolean"` + + // The verification status of the identity. The status can be one of the following: + // + // * PENDING – The verification process was initiated, but Amazon SES hasn't + // yet been able to verify the identity. + // + // * SUCCESS – The verification process completed successfully. + // + // * FAILED – The verification process failed. + // + // * TEMPORARY_FAILURE – A temporary issue is preventing Amazon SES from + // determining the verification status of the identity. + // + // * NOT_STARTED – The verification process hasn't been initiated for the + // identity. + VerificationStatus *string `type:"string" enum:"VerificationStatus"` } // String returns the string representation. @@ -14861,6 +15124,12 @@ func (s *IdentityInfo) SetSendingEnabled(v bool) *IdentityInfo { return s } +// SetVerificationStatus sets the VerificationStatus field's value. +func (s *IdentityInfo) SetVerificationStatus(v string) *IdentityInfo { + s.VerificationStatus = &v + return s +} + // An object that contains details about the data source of the import job. type ImportDataSource struct { _ struct{} `type:"structure"` @@ -14992,6 +15261,10 @@ type ImportJobSummary struct { // The date and time when the import job was created. CreatedTimestamp *time.Time `type:"timestamp"` + // The number of records that failed processing because of invalid input or + // other reasons. + FailedRecordsCount *int64 `type:"integer"` + // An object that contains details about the resource destination the import // job is going to target. ImportDestination *ImportDestination `type:"structure"` @@ -15001,6 +15274,9 @@ type ImportJobSummary struct { // The status of the import job. JobStatus *string `type:"string" enum:"JobStatus"` + + // The current number of records processed. + ProcessedRecordsCount *int64 `type:"integer"` } // String returns the string representation. @@ -15027,6 +15303,12 @@ func (s *ImportJobSummary) SetCreatedTimestamp(v time.Time) *ImportJobSummary { return s } +// SetFailedRecordsCount sets the FailedRecordsCount field's value. +func (s *ImportJobSummary) SetFailedRecordsCount(v int64) *ImportJobSummary { + s.FailedRecordsCount = &v + return s +} + // SetImportDestination sets the ImportDestination field's value. func (s *ImportJobSummary) SetImportDestination(v *ImportDestination) *ImportJobSummary { s.ImportDestination = v @@ -15045,6 +15327,12 @@ func (s *ImportJobSummary) SetJobStatus(v string) *ImportJobSummary { return s } +// SetProcessedRecordsCount sets the ProcessedRecordsCount field's value. +func (s *ImportJobSummary) SetProcessedRecordsCount(v int64) *ImportJobSummary { + s.ProcessedRecordsCount = &v + return s +} + // An object that contains information about the inbox placement data settings // for a verified domain that’s associated with your Amazon Web Services account. // This data is available only if you enabled the Deliverability dashboard for @@ -15952,9 +16240,9 @@ func (s *ListDeliverabilityTestReportsOutput) SetNextToken(v string) *ListDelive type ListDomainDeliverabilityCampaignsInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The last day, in Unix time format, that you want to obtain deliverability - // data for. This value has to be less than or equal to 30 days after the value - // of the StartDate parameter. + // The last day that you want to obtain deliverability data for. This value + // has to be less than or equal to 30 days after the value of the StartDate + // parameter. // // EndDate is a required field EndDate *time.Time `location:"querystring" locationName:"EndDate" type:"timestamp" required:"true"` @@ -15970,8 +16258,7 @@ type ListDomainDeliverabilityCampaignsInput struct { // includes a NextToken element, which you can use to obtain additional results. PageSize *int64 `location:"querystring" locationName:"PageSize" type:"integer"` - // The first day, in Unix time format, that you want to obtain deliverability - // data for. + // The first day that you want to obtain deliverability data for. // // StartDate is a required field StartDate *time.Time `location:"querystring" locationName:"StartDate" type:"timestamp" required:"true"` @@ -16453,8 +16740,7 @@ type ListSuppressedDestinationsInput struct { _ struct{} `type:"structure" nopayload:"true"` // Used to filter the list of suppressed email destinations so that it only - // includes addresses that were added to the list before a specific date. The - // date that you specify should be in Unix time format. + // includes addresses that were added to the list before a specific date. EndDate *time.Time `location:"querystring" locationName:"EndDate" type:"timestamp"` // A token returned from a previous call to ListSuppressedDestinations to indicate @@ -16471,8 +16757,7 @@ type ListSuppressedDestinationsInput struct { Reasons []*string `location:"querystring" locationName:"Reason" type:"list" enum:"SuppressionListReason"` // Used to filter the list of suppressed email destinations so that it only - // includes addresses that were added to the list after a specific date. The - // date that you specify should be in Unix time format. + // includes addresses that were added to the list after a specific date. StartDate *time.Time `location:"querystring" locationName:"StartDate" type:"timestamp"` } @@ -16654,8 +16939,8 @@ type MailFromAttributes struct { _ struct{} `type:"structure"` // The action to take if the required MX record can't be found when you send - // an email. When you set this value to UseDefaultValue, the mail is sent using - // amazonses.com as the MAIL FROM domain. When you set this value to RejectMessage, + // an email. When you set this value to USE_DEFAULT_VALUE, the mail is sent + // using amazonses.com as the MAIL FROM domain. When you set this value to REJECT_MESSAGE, // the Amazon SES API v2 returns a MailFromDomainNotVerified error, and doesn't // attempt to deliver the email. // @@ -19691,8 +19976,8 @@ type SendQuota struct { _ struct{} `type:"structure"` // The maximum number of emails that you can send in the current Amazon Web - // Services Region over a 24-hour period. This value is also called your sending - // quota. + // Services Region over a 24-hour period. A value of -1 signifies an unlimited + // quota. (This value is also referred to as your sending quota.) Max24HourSend *float64 `type:"double"` // The maximum number of emails that you can send per second in the current @@ -21315,8 +21600,8 @@ type UpdateCustomVerificationEmailTemplateInput struct { // The content of the custom verification email. The total size of the email // must be less than 10 MB. The message body may contain HTML, with some limitations. - // For more information, see Custom Verification Email Frequently Asked Questions - // (https://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-verify-address-custom.html#custom-verification-emails-faq) + // For more information, see Custom verification email frequently asked questions + // (https://docs.aws.amazon.com/ses/latest/dg/creating-identities.html#send-email-verify-address-custom-faq) // in the Amazon SES Developer Guide. // // TemplateContent is a required field @@ -22184,6 +22469,22 @@ func ReviewStatus_Values() []string { } } +const ( + // ScalingModeStandard is a ScalingMode enum value + ScalingModeStandard = "STANDARD" + + // ScalingModeManaged is a ScalingMode enum value + ScalingModeManaged = "MANAGED" +) + +// ScalingMode_Values returns all elements of the ScalingMode enum +func ScalingMode_Values() []string { + return []string{ + ScalingModeStandard, + ScalingModeManaged, + } +} + const ( // SubscriptionStatusOptIn is a SubscriptionStatus enum value SubscriptionStatusOptIn = "OPT_IN" @@ -22267,6 +22568,34 @@ func TlsPolicy_Values() []string { } } +const ( + // VerificationStatusPending is a VerificationStatus enum value + VerificationStatusPending = "PENDING" + + // VerificationStatusSuccess is a VerificationStatus enum value + VerificationStatusSuccess = "SUCCESS" + + // VerificationStatusFailed is a VerificationStatus enum value + VerificationStatusFailed = "FAILED" + + // VerificationStatusTemporaryFailure is a VerificationStatus enum value + VerificationStatusTemporaryFailure = "TEMPORARY_FAILURE" + + // VerificationStatusNotStarted is a VerificationStatus enum value + VerificationStatusNotStarted = "NOT_STARTED" +) + +// VerificationStatus_Values returns all elements of the VerificationStatus enum +func VerificationStatus_Values() []string { + return []string{ + VerificationStatusPending, + VerificationStatusSuccess, + VerificationStatusFailed, + VerificationStatusTemporaryFailure, + VerificationStatusNotStarted, + } +} + // The warmup status of a dedicated IP. const ( // WarmupStatusInProgress is a WarmupStatus enum value diff --git a/service/sesv2/sesv2iface/interface.go b/service/sesv2/sesv2iface/interface.go index 770485341a3..7bd16cac435 100644 --- a/service/sesv2/sesv2iface/interface.go +++ b/service/sesv2/sesv2iface/interface.go @@ -176,6 +176,10 @@ type SESV2API interface { GetDedicatedIpWithContext(aws.Context, *sesv2.GetDedicatedIpInput, ...request.Option) (*sesv2.GetDedicatedIpOutput, error) GetDedicatedIpRequest(*sesv2.GetDedicatedIpInput) (*request.Request, *sesv2.GetDedicatedIpOutput) + GetDedicatedIpPool(*sesv2.GetDedicatedIpPoolInput) (*sesv2.GetDedicatedIpPoolOutput, error) + GetDedicatedIpPoolWithContext(aws.Context, *sesv2.GetDedicatedIpPoolInput, ...request.Option) (*sesv2.GetDedicatedIpPoolOutput, error) + GetDedicatedIpPoolRequest(*sesv2.GetDedicatedIpPoolInput) (*request.Request, *sesv2.GetDedicatedIpPoolOutput) + GetDedicatedIps(*sesv2.GetDedicatedIpsInput) (*sesv2.GetDedicatedIpsOutput, error) GetDedicatedIpsWithContext(aws.Context, *sesv2.GetDedicatedIpsInput, ...request.Option) (*sesv2.GetDedicatedIpsOutput, error) GetDedicatedIpsRequest(*sesv2.GetDedicatedIpsInput) (*request.Request, *sesv2.GetDedicatedIpsOutput)