diff --git a/CHANGELOG.md b/CHANGELOG.md index fbeab17db6d..4bc17929fc6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,18 @@ +Release v1.42.22 (2021-12-09) +=== + +### Service Client Updates +* `service/ec2`: Updates service API, documentation, and waiters + * Adds waiters support for internet gateways. +* `service/models.lex.v2`: Updates service API and documentation +* `service/network-firewall`: Updates service API and documentation +* `service/route53-recovery-control-config`: Updates service API and documentation +* `service/route53domains`: Updates service API, documentation, and paginators + * Amazon Route 53 domain registration APIs now support filtering and sorting in the ListDomains API, deleting a domain by using the DeleteDomain API and getting domain pricing information by using the ListPrices API. +* `service/savingsplans`: Updates service documentation +* `service/sms`: Updates service documentation + * This release adds SMS discontinuation information to the API and CLI references. + Release v1.42.21 (2021-12-08) === diff --git a/aws/version.go b/aws/version.go index c69593fe8d8..c483cebcc12 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.42.21" +const SDKVersion = "1.42.22" diff --git a/models/apis/ec2/2016-11-15/api-2.json b/models/apis/ec2/2016-11-15/api-2.json index 802138755e2..36febc2426d 100755 --- a/models/apis/ec2/2016-11-15/api-2.json +++ b/models/apis/ec2/2016-11-15/api-2.json @@ -17487,7 +17487,7 @@ "type":"structure", "members":{ "ElasticGpuId":{ - "shape":"String", + "shape":"ElasticGpuId", "locationName":"elasticGpuId" }, "ElasticGpuAssociationId":{ diff --git a/models/apis/ec2/2016-11-15/docs-2.json b/models/apis/ec2/2016-11-15/docs-2.json index 46d346163e5..1a6506f321f 100755 --- a/models/apis/ec2/2016-11-15/docs-2.json +++ b/models/apis/ec2/2016-11-15/docs-2.json @@ -7231,6 +7231,7 @@ "ElasticGpuId": { "base": null, "refs": { + "ElasticGpuAssociation$ElasticGpuId": "<p>The ID of the Elastic Graphics accelerator.</p>", "ElasticGpuIdSet$member": null } }, @@ -16626,7 +16627,6 @@ "EbsBlockDevice$KmsKeyId": "<p>Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.</p> <p>This parameter is only supported on <code>BlockDeviceMapping</code> objects called by <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html\">RunInstances</a>, <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotFleet.html\">RequestSpotFleet</a>, and <a href=\"https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotInstances.html\">RequestSpotInstances</a>.</p>", "EbsBlockDevice$OutpostArn": "<p>The ARN of the Outpost on which the snapshot is stored.</p>", "EbsInstanceBlockDevice$VolumeId": "<p>The ID of the EBS volume.</p>", - "ElasticGpuAssociation$ElasticGpuId": "<p>The ID of the Elastic Graphics accelerator.</p>", "ElasticGpuAssociation$ElasticGpuAssociationId": "<p>The ID of the association.</p>", "ElasticGpuAssociation$ElasticGpuAssociationState": "<p>The state of the association between the instance and the Elastic Graphics accelerator.</p>", "ElasticGpuAssociation$ElasticGpuAssociationTime": "<p>The time the Elastic Graphics accelerator was associated with the instance.</p>", diff --git a/models/apis/ec2/2016-11-15/waiters-2.json b/models/apis/ec2/2016-11-15/waiters-2.json index 133c6800b5f..75d0696523d 100755 --- a/models/apis/ec2/2016-11-15/waiters-2.json +++ b/models/apis/ec2/2016-11-15/waiters-2.json @@ -281,6 +281,24 @@ } ] }, + "InternetGatewayExists": { + "operation": "DescribeInternetGateways", + "delay": 5, + "maxAttempts": 6, + "acceptors": [ + { + "expected": true, + "matcher": "path", + "state": "success", + "argument": "length(InternetGateways[].InternetGatewayId) > `0`" + }, + { + "expected": "InvalidInternetGateway.NotFound", + "matcher": "error", + "state": "retry" + } + ] + }, "KeyPairExists": { "operation": "DescribeKeyPairs", "delay": 5, diff --git a/models/apis/models.lex.v2/2020-08-07/api-2.json b/models/apis/models.lex.v2/2020-08-07/api-2.json index 8f0b02196cf..9699b66481d 100644 --- a/models/apis/models.lex.v2/2020-08-07/api-2.json +++ b/models/apis/models.lex.v2/2020-08-07/api-2.json @@ -2162,7 +2162,6 @@ "type":"structure", "required":[ "slotTypeName", - "valueSelectionSetting", "botId", "botVersion", "localeId" @@ -2187,7 +2186,8 @@ "shape":"LocaleId", "location":"uri", "locationName":"localeId" - } + }, + "externalSourceSetting":{"shape":"ExternalSourceSetting"} } }, "CreateSlotTypeResponse":{ @@ -2202,7 +2202,8 @@ "botId":{"shape":"Id"}, "botVersion":{"shape":"DraftBotVersion"}, "localeId":{"shape":"LocaleId"}, - "creationDateTime":{"shape":"Timestamp"} + "creationDateTime":{"shape":"Timestamp"}, + "externalSourceSetting":{"shape":"ExternalSourceSetting"} } }, "CreateUploadUrlRequest":{ @@ -2666,7 +2667,8 @@ "creationDateTime":{"shape":"Timestamp"}, "lastUpdatedDateTime":{"shape":"Timestamp"}, "lastBuildSubmittedDateTime":{"shape":"Timestamp"}, - "botLocaleHistoryEvents":{"shape":"BotLocaleHistoryEventsList"} + "botLocaleHistoryEvents":{"shape":"BotLocaleHistoryEventsList"}, + "recommendedActions":{"shape":"RecommendedActions"} } }, "DescribeBotRecommendationRequest":{ @@ -2996,7 +2998,8 @@ "botVersion":{"shape":"BotVersion"}, "localeId":{"shape":"LocaleId"}, "creationDateTime":{"shape":"Timestamp"}, - "lastUpdatedDateTime":{"shape":"Timestamp"} + "lastUpdatedDateTime":{"shape":"Timestamp"}, + "externalSourceSetting":{"shape":"ExternalSourceSetting"} } }, "Description":{ @@ -3109,6 +3112,12 @@ "type":"list", "member":{"shape":"ExportSummary"} }, + "ExternalSourceSetting":{ + "type":"structure", + "members":{ + "grammarSlotTypeSetting":{"shape":"GrammarSlotTypeSetting"} + } + }, "FailureReason":{"type":"string"}, "FailureReasons":{ "type":"list", @@ -3190,6 +3199,24 @@ "timeoutInSeconds":{"shape":"FulfillmentTimeout"} } }, + "GrammarSlotTypeSetting":{ + "type":"structure", + "members":{ + "source":{"shape":"GrammarSlotTypeSource"} + } + }, + "GrammarSlotTypeSource":{ + "type":"structure", + "required":[ + "s3BucketName", + "s3ObjectKey" + ], + "members":{ + "s3BucketName":{"shape":"S3BucketName"}, + "s3ObjectKey":{"shape":"S3ObjectPath"}, + "kmsKeyArn":{"shape":"KmsKeyArn"} + } + }, "HitCount":{"type":"integer"}, "Id":{ "type":"string", @@ -4108,6 +4135,11 @@ "max":5000, "min":1 }, + "RecommendedAction":{"type":"string"}, + "RecommendedActions":{ + "type":"list", + "member":{"shape":"RecommendedAction"} + }, "RecommendedIntentSummary":{ "type":"structure", "members":{ @@ -4204,6 +4236,12 @@ "kmsKeyArn":{"shape":"KmsKeyArn"} } }, + "S3ObjectPath":{ + "type":"string", + "max":1024, + "min":1, + "pattern":"[\\.\\-\\!\\*\\_\\'\\(\\)a-zA-Z0-9][\\.\\-\\!\\*\\_\\'\\(\\)\\/a-zA-Z0-9]*$" + }, "SSMLMessage":{ "type":"structure", "required":["value"], @@ -4434,6 +4472,14 @@ "type":"list", "member":{"shape":"SlotSummary"} }, + "SlotTypeCategory":{ + "type":"string", + "enum":[ + "Custom", + "Extended", + "ExternalGrammar" + ] + }, "SlotTypeFilter":{ "type":"structure", "required":[ @@ -4449,7 +4495,10 @@ }, "SlotTypeFilterName":{ "type":"string", - "enum":["SlotTypeName"] + "enum":[ + "SlotTypeName", + "ExternalSourceType" + ] }, "SlotTypeFilterOperator":{ "type":"string", @@ -4496,7 +4545,8 @@ "slotTypeName":{"shape":"Name"}, "description":{"shape":"Description"}, "parentSlotTypeSignature":{"shape":"SlotTypeSignature"}, - "lastUpdatedDateTime":{"shape":"Timestamp"} + "lastUpdatedDateTime":{"shape":"Timestamp"}, + "slotTypeCategory":{"shape":"SlotTypeCategory"} } }, "SlotTypeSummaryList":{ @@ -4875,7 +4925,8 @@ "botLocaleStatus":{"shape":"BotLocaleStatus"}, "failureReasons":{"shape":"FailureReasons"}, "creationDateTime":{"shape":"Timestamp"}, - "lastUpdatedDateTime":{"shape":"Timestamp"} + "lastUpdatedDateTime":{"shape":"Timestamp"}, + "recommendedActions":{"shape":"RecommendedActions"} } }, "UpdateBotRecommendationRequest":{ @@ -5147,7 +5198,6 @@ "required":[ "slotTypeId", "slotTypeName", - "valueSelectionSetting", "botId", "botVersion", "localeId" @@ -5177,7 +5227,8 @@ "shape":"LocaleId", "location":"uri", "locationName":"localeId" - } + }, + "externalSourceSetting":{"shape":"ExternalSourceSetting"} } }, "UpdateSlotTypeResponse":{ @@ -5193,7 +5244,8 @@ "botVersion":{"shape":"DraftBotVersion"}, "localeId":{"shape":"LocaleId"}, "creationDateTime":{"shape":"Timestamp"}, - "lastUpdatedDateTime":{"shape":"Timestamp"} + "lastUpdatedDateTime":{"shape":"Timestamp"}, + "externalSourceSetting":{"shape":"ExternalSourceSetting"} } }, "Utterance":{"type":"string"}, diff --git a/models/apis/models.lex.v2/2020-08-07/docs-2.json b/models/apis/models.lex.v2/2020-08-07/docs-2.json index 3839692359c..7c3db0ade85 100644 --- a/models/apis/models.lex.v2/2020-08-07/docs-2.json +++ b/models/apis/models.lex.v2/2020-08-07/docs-2.json @@ -1313,6 +1313,16 @@ "ListExportsResponse$exportSummaries": "<p>Summary information for the exports that meet the filter criteria specified in the request. The length of the list is specified in the <code>maxResults</code> parameter. If there are more exports available, the <code>nextToken</code> field contains a token to get the next page of results.</p>" } }, + "ExternalSourceSetting": { + "base": "<p>Provides information about the external source of the slot type's definition.</p>", + "refs": { + "CreateSlotTypeRequest$externalSourceSetting": "<p>Sets the type of external information used to create the slot type.</p>", + "CreateSlotTypeResponse$externalSourceSetting": "<p>The type of external information used to create the slot type.</p>", + "DescribeSlotTypeResponse$externalSourceSetting": null, + "UpdateSlotTypeRequest$externalSourceSetting": null, + "UpdateSlotTypeResponse$externalSourceSetting": null + } + }, "FailureReason": { "base": null, "refs": { @@ -1403,6 +1413,18 @@ "FulfillmentCodeHookSettings$fulfillmentUpdatesSpecification": "<p>Provides settings for update messages sent to the user for long-running Lambda fulfillment functions. Fulfillment updates can be used only with streaming conversations.</p>" } }, + "GrammarSlotTypeSetting": { + "base": "<p>Settings requried for a slot type based on a grammar that you provide.</p>", + "refs": { + "ExternalSourceSetting$grammarSlotTypeSetting": "<p>Settings required for a slot type based on a grammar that you provide.</p>" + } + }, + "GrammarSlotTypeSource": { + "base": "<p>Describes the Amazon S3 bucket name and location for the grammar that is the source for the slot type.</p>", + "refs": { + "GrammarSlotTypeSetting$source": "<p>The source of the grammar used to create the slot type.</p>" + } + }, "HitCount": { "base": null, "refs": { @@ -1783,6 +1805,7 @@ "base": null, "refs": { "EncryptionSetting$kmsKeyArn": "<p>The KMS key ARN used to encrypt the metadata associated with the bot recommendation.</p>", + "GrammarSlotTypeSource$kmsKeyArn": "<p>The Amazon KMS key required to decrypt the contents of the grammar, if any.</p>", "S3BucketLogDestination$kmsKeyArn": "<p>The Amazon Resource Name (ARN) of an AWS Key Management Service (KMS) key for encrypting audio log files stored in an S3 bucket.</p>", "S3BucketTranscriptSource$kmsKeyArn": "<p>The ARN of the KMS key that customer use to encrypt their Amazon S3 bucket. Only use this field if your bucket is encrypted using a customer managed KMS key.</p>" } @@ -2355,6 +2378,19 @@ "KendraConfiguration$queryFilterString": "<p>A query filter that Amazon Lex sends to Amazon Kendra to filter the response from a query. The filter is in the format defined by Amazon Kendra. For more information, see <a href=\"https://docs.aws.amazon.com/kendra/latest/dg/filtering.html\">Filtering queries</a>.</p>" } }, + "RecommendedAction": { + "base": null, + "refs": { + "RecommendedActions$member": null + } + }, + "RecommendedActions": { + "base": null, + "refs": { + "DescribeBotLocaleResponse$recommendedActions": "<p>Recommended actions to take to resolve an error in the <code>failureReasons</code> field.</p>", + "UpdateBotLocaleResponse$recommendedActions": "<p>Recommended actions to take to resolve an error in the <code>failureReasons</code> field.</p>" + } + }, "RecommendedIntentSummary": { "base": "<p>An object that contains a summary of a recommended intent.</p>", "refs": { @@ -2451,6 +2487,7 @@ "S3BucketName": { "base": null, "refs": { + "GrammarSlotTypeSource$s3BucketName": "<p>The name of the S3 bucket that contains the grammar source.</p>", "S3BucketTranscriptSource$s3BucketName": "<p>The name of the bucket containing the transcript and the associated metadata.</p>" } }, @@ -2460,6 +2497,12 @@ "TranscriptSourceSetting$s3BucketTranscriptSource": "<p>Indicates the setting of the Amazon S3 bucket where the transcript is stored.</p>" } }, + "S3ObjectPath": { + "base": null, + "refs": { + "GrammarSlotTypeSource$s3ObjectKey": "<p>The path to the grammar in the S3 bucket.</p>" + } + }, "SSMLMessage": { "base": "<p>Defines a Speech Synthesis Markup Language (SSML) prompt.</p>", "refs": { @@ -2659,6 +2702,12 @@ "ListSlotsResponse$slotSummaries": "<p>Summary information for the slots that meet the filter criteria specified in the request. The length of the list is specified in the <code>maxResults</code> parameter of the request. If there are more slots available, the <code>nextToken</code> field contains a token to get the next page of results.</p>" } }, + "SlotTypeCategory": { + "base": null, + "refs": { + "SlotTypeSummary$slotTypeCategory": "<p>Indicates the type of the slot type.</p> <ul> <li> <p> <code>Custom</code> - A slot type that you created using custom values. For more information, see <a href=\"https://docs.aws.amazon.com/lexv2/latest/dg/custom-slot-types.html\">Creating custom slot types</a>.</p> </li> <li> <p> <code>Extended</code> - A slot type created by extending the AMAZON.AlphaNumeric built-in slot type. For more information, see <a href=\"https://docs.aws.amazon.com/lexv2/latest/dg/built-in-slot-alphanumerice.html\">AMAZON.AlphaNumeric</a>.</p> </li> <li> <p> <code>ExternalGrammar</code> - A slot type using a custom GRXML grammar to define values. For more information, see <a href=\"https://docs.aws.amazon.com/lexv2/latest/dg/building-grxml.html\">Using a custom grammar slot type</a>.</p> </li> </ul>" + } + }, "SlotTypeFilter": { "base": "<p>Filters the response from the <code>ListSlotTypes</code> operation.</p>", "refs": { @@ -3144,7 +3193,7 @@ "VoiceEngine": { "base": null, "refs": { - "VoiceSettings$engine": "<p>Indicates the type of Amazon Polly voice that Amazon Lex should use for voice interaction with the user. For more information, see <a href=\"https://docs.aws.amazon.com/polly/latest/dg/voicelist.html\">Voices in Amazon Polly</a>.</p>" + "VoiceSettings$engine": "<p>Indicates the type of Amazon Polly voice that Amazon Lex should use for voice interaction with the user. For more information, see the <a href=\"https://docs.aws.amazon.com/polly/latest/dg/API_SynthesizeSpeech.html#polly-SynthesizeSpeech-request-Engine\"> <code>engine</code> parameter of the <code>SynthesizeSpeech</code> operation</a> in the <i>Amazon Polly developer guide</i>.</p> <p>If you do not specify a value, the default is <code>standard</code>.</p>" } }, "VoiceId": { diff --git a/models/apis/network-firewall/2020-11-12/api-2.json b/models/apis/network-firewall/2020-11-12/api-2.json index 02861445bb7..db90daa5292 100644 --- a/models/apis/network-firewall/2020-11-12/api-2.json +++ b/models/apis/network-firewall/2020-11-12/api-2.json @@ -240,6 +240,21 @@ {"shape":"InternalServerError"} ] }, + "DescribeRuleGroupMetadata":{ + "name":"DescribeRuleGroupMetadata", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeRuleGroupMetadataRequest"}, + "output":{"shape":"DescribeRuleGroupMetadataResponse"}, + "errors":[ + {"shape":"InvalidRequestException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerError"} + ] + }, "DisassociateSubnets":{ "name":"DisassociateSubnets", "http":{ @@ -308,6 +323,8 @@ "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResponse"}, "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"InternalServerError"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"} ] @@ -337,6 +354,8 @@ "input":{"shape":"TagResourceRequest"}, "output":{"shape":"TagResourceResponse"}, "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"InternalServerError"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"} ] @@ -350,6 +369,8 @@ "input":{"shape":"UntagResourceRequest"}, "output":{"shape":"UntagResourceResponse"}, "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"InternalServerError"}, {"shape":"ResourceNotFoundException"}, {"shape":"InvalidRequestException"} ] @@ -788,6 +809,29 @@ "Policy":{"shape":"PolicyString"} } }, + "DescribeRuleGroupMetadataRequest":{ + "type":"structure", + "members":{ + "RuleGroupName":{"shape":"ResourceName"}, + "RuleGroupArn":{"shape":"ResourceArn"}, + "Type":{"shape":"RuleGroupType"} + } + }, + "DescribeRuleGroupMetadataResponse":{ + "type":"structure", + "required":[ + "RuleGroupArn", + "RuleGroupName" + ], + "members":{ + "RuleGroupArn":{"shape":"ResourceArn"}, + "RuleGroupName":{"shape":"ResourceName"}, + "Description":{"shape":"Description"}, + "Type":{"shape":"RuleGroupType"}, + "Capacity":{"shape":"RuleCapacity"}, + "StatefulRuleOptions":{"shape":"StatefulRuleOptions"} + } + }, "DescribeRuleGroupRequest":{ "type":"structure", "members":{ @@ -1102,7 +1146,8 @@ "type":"structure", "members":{ "NextToken":{"shape":"PaginationToken"}, - "MaxResults":{"shape":"PaginationMaxResults"} + "MaxResults":{"shape":"PaginationMaxResults"}, + "Scope":{"shape":"ResourceManagedStatus"} } }, "ListRuleGroupsResponse":{ @@ -1194,6 +1239,10 @@ } }, "NumberOfAssociations":{"type":"integer"}, + "OverrideAction":{ + "type":"string", + "enum":["DROP_TO_ALERT"] + }, "PaginationMaxResults":{ "type":"integer", "max":100, @@ -1311,6 +1360,13 @@ "min":36, "pattern":"^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$" }, + "ResourceManagedStatus":{ + "type":"string", + "enum":[ + "MANAGED", + "ACCOUNT" + ] + }, "ResourceName":{ "type":"string", "max":128, @@ -1514,6 +1570,12 @@ "ANY" ] }, + "StatefulRuleGroupOverride":{ + "type":"structure", + "members":{ + "Action":{"shape":"OverrideAction"} + } + }, "StatefulRuleGroupReference":{ "type":"structure", "required":["ResourceArn"], @@ -1522,7 +1584,8 @@ "Priority":{ "shape":"Priority", "box":true - } + }, + "Override":{"shape":"StatefulRuleGroupOverride"} } }, "StatefulRuleGroupReferences":{ diff --git a/models/apis/network-firewall/2020-11-12/docs-2.json b/models/apis/network-firewall/2020-11-12/docs-2.json index 971739e1c5a..47d0556abcf 100644 --- a/models/apis/network-firewall/2020-11-12/docs-2.json +++ b/models/apis/network-firewall/2020-11-12/docs-2.json @@ -16,6 +16,7 @@ "DescribeLoggingConfiguration": "<p>Returns the logging configuration for the specified firewall. </p>", "DescribeResourcePolicy": "<p>Retrieves a resource policy that you created in a <a>PutResourcePolicy</a> request. </p>", "DescribeRuleGroup": "<p>Returns the data objects for the specified rule group. </p>", + "DescribeRuleGroupMetadata": "<p>High-level information about a rule group, returned by operations like create and describe. You can use the information provided in the metadata to retrieve and manage a rule group. You can retrieve all objects for a rule group by calling <a>DescribeRuleGroup</a>. </p>", "DisassociateSubnets": "<p>Removes the specified subnet associations from the firewall. This removes the firewall endpoints from the subnets and removes any network filtering protections that the endpoints were providing. </p>", "ListFirewallPolicies": "<p>Retrieves the metadata for the firewall policies that you have defined. Depending on your setting for max results and the number of firewall policies, a single call might not return the full list. </p>", "ListFirewalls": "<p>Retrieves the metadata for the firewalls that you have defined. If you provide VPC identifiers in your request, this returns only the firewalls for those VPCs.</p> <p>Depending on your setting for max results and the number of firewalls, a single call might not return the full list. </p>", @@ -27,7 +28,7 @@ "UpdateFirewallDeleteProtection": "<p>Modifies the flag, <code>DeleteProtection</code>, which indicates whether it is possible to delete the firewall. If the flag is set to <code>TRUE</code>, the firewall is protected against deletion. This setting helps protect against accidentally deleting a firewall that's in use. </p>", "UpdateFirewallDescription": "<p>Modifies the description for the specified firewall. Use the description to help you identify the firewall when you're working with it. </p>", "UpdateFirewallPolicy": "<p>Updates the properties of the specified firewall policy.</p>", - "UpdateFirewallPolicyChangeProtection": "<p/>", + "UpdateFirewallPolicyChangeProtection": "<p>Modifies the flag, <code>ChangeProtection</code>, which indicates whether it is possible to change the firewall. If the flag is set to <code>TRUE</code>, the firewall is protected from changes. This setting helps protect against accidentally changing a firewall that's in use.</p>", "UpdateLoggingConfiguration": "<p>Sets the logging configuration for the specified firewall. </p> <p>To change the logging configuration, retrieve the <a>LoggingConfiguration</a> by calling <a>DescribeLoggingConfiguration</a>, then change it and provide the modified object to this update call. You must change the logging configuration one <a>LogDestinationConfig</a> at a time inside the retrieved <a>LoggingConfiguration</a> object. </p> <p>You can perform only one of the following actions in any call to <code>UpdateLoggingConfiguration</code>: </p> <ul> <li> <p>Create a new log destination object by adding a single <code>LogDestinationConfig</code> array element to <code>LogDestinationConfigs</code>.</p> </li> <li> <p>Delete a log destination object by removing a single <code>LogDestinationConfig</code> array element from <code>LogDestinationConfigs</code>.</p> </li> <li> <p>Change the <code>LogDestination</code> setting in a single <code>LogDestinationConfig</code> array element.</p> </li> </ul> <p>You can't change the <code>LogDestinationType</code> or <code>LogType</code> in a <code>LogDestinationConfig</code>. To change these settings, delete the existing <code>LogDestinationConfig</code> object and create a new one, using two separate calls to this update operation.</p>", "UpdateRuleGroup": "<p>Updates the rule settings for the specified rule group. You use a rule group by reference in one or more firewall policies. When you modify a rule group, you modify all firewall policies that use the rule group. </p> <p>To update a rule group, first call <a>DescribeRuleGroup</a> to retrieve the current <a>RuleGroup</a> object, update the object as needed, and then provide the updated object to this call. </p>", "UpdateSubnetChangeProtection": "<p/>" @@ -127,7 +128,7 @@ "Firewall$SubnetChangeProtection": "<p>A setting indicating whether the firewall is protected against changes to the subnet associations. Use this setting to protect against accidentally modifying the subnet associations for a firewall that is in use. When you create a firewall, the operation initializes this setting to <code>TRUE</code>.</p>", "Firewall$FirewallPolicyChangeProtection": "<p>A setting indicating whether the firewall is protected against a change to the firewall policy association. Use this setting to protect against accidentally modifying the firewall policy for a firewall that is in use. When you create a firewall, the operation initializes this setting to <code>TRUE</code>.</p>", "UpdateFirewallDeleteProtectionRequest$DeleteProtection": "<p>A flag indicating whether it is possible to delete the firewall. A setting of <code>TRUE</code> indicates that the firewall is protected against deletion. Use this setting to protect against accidentally deleting a firewall that is in use. When you create a firewall, the operation initializes this flag to <code>TRUE</code>.</p>", - "UpdateFirewallDeleteProtectionResponse$DeleteProtection": "<p/>", + "UpdateFirewallDeleteProtectionResponse$DeleteProtection": "<p>A flag indicating whether it is possible to delete the firewall. A setting of <code>TRUE</code> indicates that the firewall is protected against deletion. Use this setting to protect against accidentally deleting a firewall that is in use. When you create a firewall, the operation initializes this flag to <code>TRUE</code>.</p>", "UpdateFirewallPolicyChangeProtectionRequest$FirewallPolicyChangeProtection": "<p>A setting indicating whether the firewall is protected against a change to the firewall policy association. Use this setting to protect against accidentally modifying the firewall policy for a firewall that is in use. When you create a firewall, the operation initializes this setting to <code>TRUE</code>.</p>", "UpdateFirewallPolicyChangeProtectionResponse$FirewallPolicyChangeProtection": "<p>A setting indicating whether the firewall is protected against a change to the firewall policy association. Use this setting to protect against accidentally modifying the firewall policy for a firewall that is in use. When you create a firewall, the operation initializes this setting to <code>TRUE</code>.</p>", "UpdateFirewallPolicyRequest$DryRun": "<p>Indicates whether you want Network Firewall to just check the validity of the request, rather than run the request. </p> <p>If set to <code>TRUE</code>, Network Firewall checks whether the request can run successfully, but doesn't actually make the requested changes. The call returns the value that the request would return if you ran it with dry run set to <code>FALSE</code>, but doesn't make additions or changes to your resources. This option allows you to make sure that you have the required permissions to run the request and that your request parameters are valid. </p> <p>If set to <code>FALSE</code>, Network Firewall makes the requested changes to your resources. </p>", @@ -274,6 +275,16 @@ "refs": { } }, + "DescribeRuleGroupMetadataRequest": { + "base": null, + "refs": { + } + }, + "DescribeRuleGroupMetadataResponse": { + "base": null, + "refs": { + } + }, "DescribeRuleGroupRequest": { "base": null, "refs": { @@ -290,6 +301,7 @@ "CreateFirewallPolicyRequest$Description": "<p>A description of the firewall policy.</p>", "CreateFirewallRequest$Description": "<p>A description of the firewall.</p>", "CreateRuleGroupRequest$Description": "<p>A description of the rule group. </p>", + "DescribeRuleGroupMetadataResponse$Description": "<p>Returns the metadata objects for the specified rule group. </p>", "Firewall$Description": "<p>A description of the firewall.</p>", "FirewallPolicyResponse$Description": "<p>A description of the firewall policy.</p>", "RuleGroupResponse$Description": "<p>A description of the rule group. </p>", @@ -599,6 +611,12 @@ "RuleGroupResponse$NumberOfAssociations": "<p>The number of firewall policies that use this rule group.</p>" } }, + "OverrideAction": { + "base": null, + "refs": { + "StatefulRuleGroupOverride$Action": "<p>The action that changes the rule group from <code>DROP</code> to <code>ALERT</code>. This only applies to managed rule groups.</p>" + } + }, "PaginationMaxResults": { "base": null, "refs": { @@ -733,6 +751,8 @@ "DescribeLoggingConfigurationRequest$FirewallArn": "<p>The Amazon Resource Name (ARN) of the firewall.</p> <p>You must specify the ARN or the name, and you can specify both. </p>", "DescribeLoggingConfigurationResponse$FirewallArn": "<p>The Amazon Resource Name (ARN) of the firewall.</p>", "DescribeResourcePolicyRequest$ResourceArn": "<p>The Amazon Resource Name (ARN) of the rule group or firewall policy whose resource policy you want to retrieve. </p>", + "DescribeRuleGroupMetadataRequest$RuleGroupArn": "<p>The descriptive name of the rule group. You can't change the name of a rule group after you create it.</p> <p>You must specify the ARN or the name, and you can specify both. </p>", + "DescribeRuleGroupMetadataResponse$RuleGroupArn": "<p>The descriptive name of the rule group. You can't change the name of a rule group after you create it.</p> <p>You must specify the ARN or the name, and you can specify both. </p>", "DescribeRuleGroupRequest$RuleGroupArn": "<p>The Amazon Resource Name (ARN) of the rule group.</p> <p>You must specify the ARN or the name, and you can specify both. </p>", "DisassociateSubnetsRequest$FirewallArn": "<p>The Amazon Resource Name (ARN) of the firewall.</p> <p>You must specify the ARN or the name, and you can specify both. </p>", "DisassociateSubnetsResponse$FirewallArn": "<p>The Amazon Resource Name (ARN) of the firewall.</p>", @@ -771,6 +791,12 @@ "RuleGroupResponse$RuleGroupId": "<p>The unique identifier for the rule group. </p>" } }, + "ResourceManagedStatus": { + "base": null, + "refs": { + "ListRuleGroupsRequest$Scope": "<p>The scope of the request. The default setting of <code>ACCOUNT</code> or a setting of <code>NULL</code> returns all of the rule groups in your account. A setting of <code>MANAGED</code> returns all available managed rule groups.</p>" + } + }, "ResourceName": { "base": null, "refs": { @@ -787,6 +813,8 @@ "DescribeFirewallPolicyRequest$FirewallPolicyName": "<p>The descriptive name of the firewall policy. You can't change the name of a firewall policy after you create it.</p> <p>You must specify the ARN or the name, and you can specify both. </p>", "DescribeFirewallRequest$FirewallName": "<p>The descriptive name of the firewall. You can't change the name of a firewall after you create it.</p> <p>You must specify the ARN or the name, and you can specify both. </p>", "DescribeLoggingConfigurationRequest$FirewallName": "<p>The descriptive name of the firewall. You can't change the name of a firewall after you create it.</p> <p>You must specify the ARN or the name, and you can specify both. </p>", + "DescribeRuleGroupMetadataRequest$RuleGroupName": "<p>The descriptive name of the rule group. You can't change the name of a rule group after you create it.</p> <p>You must specify the ARN or the name, and you can specify both. </p>", + "DescribeRuleGroupMetadataResponse$RuleGroupName": "<p>The descriptive name of the rule group. You can't change the name of a rule group after you create it.</p> <p>You must specify the ARN or the name, and you can specify both. </p>", "DescribeRuleGroupRequest$RuleGroupName": "<p>The descriptive name of the rule group. You can't change the name of a rule group after you create it.</p> <p>You must specify the ARN or the name, and you can specify both. </p>", "DisassociateSubnetsRequest$FirewallName": "<p>The descriptive name of the firewall. You can't change the name of a firewall after you create it.</p> <p>You must specify the ARN or the name, and you can specify both. </p>", "DisassociateSubnetsResponse$FirewallName": "<p>The descriptive name of the firewall. You can't change the name of a firewall after you create it.</p>", @@ -832,6 +860,7 @@ "base": null, "refs": { "CreateRuleGroupRequest$Capacity": "<p>The maximum operating resources that this rule group can use. Rule group capacity is fixed at creation. When you update a rule group, you are limited to this capacity. When you reference a rule group from a firewall policy, Network Firewall reserves this capacity for the rule group. </p> <p>You can retrieve the capacity that would be required for a rule group before you create the rule group by calling <a>CreateRuleGroup</a> with <code>DryRun</code> set to <code>TRUE</code>. </p> <note> <p>You can't change or exceed this capacity when you update the rule group, so leave room for your rule group to grow. </p> </note> <p> <b>Capacity for a stateless rule group</b> </p> <p>For a stateless rule group, the capacity required is the sum of the capacity requirements of the individual rules that you expect to have in the rule group. </p> <p>To calculate the capacity requirement of a single rule, multiply the capacity requirement values of each of the rule's match settings:</p> <ul> <li> <p>A match setting with no criteria specified has a value of 1. </p> </li> <li> <p>A match setting with <code>Any</code> specified has a value of 1. </p> </li> <li> <p>All other match settings have a value equal to the number of elements provided in the setting. For example, a protocol setting [\"UDP\"] and a source setting [\"10.0.0.0/24\"] each have a value of 1. A protocol setting [\"UDP\",\"TCP\"] has a value of 2. A source setting [\"10.0.0.0/24\",\"10.0.0.1/24\",\"10.0.0.2/24\"] has a value of 3. </p> </li> </ul> <p>A rule with no criteria specified in any of its match settings has a capacity requirement of 1. A rule with protocol setting [\"UDP\",\"TCP\"], source setting [\"10.0.0.0/24\",\"10.0.0.1/24\",\"10.0.0.2/24\"], and a single specification or no specification for each of the other match settings has a capacity requirement of 6. </p> <p> <b>Capacity for a stateful rule group</b> </p> <p>For a stateful rule group, the minimum capacity required is the number of individual rules that you expect to have in the rule group. </p>", + "DescribeRuleGroupMetadataResponse$Capacity": "<p>The maximum operating resources that this rule group can use. Rule group capacity is fixed at creation. When you update a rule group, you are limited to this capacity. When you reference a rule group from a firewall policy, Network Firewall reserves this capacity for the rule group. </p> <p>You can retrieve the capacity that would be required for a rule group before you create the rule group by calling <a>CreateRuleGroup</a> with <code>DryRun</code> set to <code>TRUE</code>. </p>", "FirewallPolicyResponse$ConsumedStatelessRuleCapacity": "<p>The number of capacity units currently consumed by the policy's stateless rules.</p>", "FirewallPolicyResponse$ConsumedStatefulRuleCapacity": "<p>The number of capacity units currently consumed by the policy's stateful rules.</p>", "RuleGroupResponse$Capacity": "<p>The maximum operating resources that this rule group can use. Rule group capacity is fixed at creation. When you update a rule group, you are limited to this capacity. When you reference a rule group from a firewall policy, Network Firewall reserves this capacity for the rule group. </p> <p>You can retrieve the capacity that would be required for a rule group before you create the rule group by calling <a>CreateRuleGroup</a> with <code>DryRun</code> set to <code>TRUE</code>. </p>", @@ -872,6 +901,8 @@ "refs": { "CreateRuleGroupRequest$Type": "<p>Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules. </p>", "DeleteRuleGroupRequest$Type": "<p>Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules. </p> <note> <p>This setting is required for requests that do not include the <code>RuleGroupARN</code>.</p> </note>", + "DescribeRuleGroupMetadataRequest$Type": "<p>Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules. </p> <note> <p>This setting is required for requests that do not include the <code>RuleGroupARN</code>.</p> </note>", + "DescribeRuleGroupMetadataResponse$Type": "<p>Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules. </p> <note> <p>This setting is required for requests that do not include the <code>RuleGroupARN</code>.</p> </note>", "DescribeRuleGroupRequest$Type": "<p>Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules. </p> <note> <p>This setting is required for requests that do not include the <code>RuleGroupARN</code>.</p> </note>", "RuleGroupResponse$Type": "<p>Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules. </p>", "UpdateRuleGroupRequest$Type": "<p>Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules. </p> <note> <p>This setting is required for requests that do not include the <code>RuleGroupARN</code>.</p> </note>" @@ -898,14 +929,14 @@ "RuleOrder": { "base": null, "refs": { - "StatefulEngineOptions$RuleOrder": "<p>Indicates how to manage the order of stateful rule evaluation for the policy. By default, Network Firewall leaves the rule evaluation order up to the Suricata rule processing engine. If you set this to <code>STRICT_ORDER</code>, your rules are evaluated in the exact order that you provide them in the policy. With strict ordering, the rule groups are evaluated by order of priority, starting from the lowest number, and the rules in each rule group are processed in the order that they're defined. </p>", - "StatefulRuleOptions$RuleOrder": "<p>Indicates how to manage the order of the rule evaluation for the rule group. By default, Network Firewall leaves the rule evaluation order up to the Suricata rule processing engine. If you set this to <code>STRICT_ORDER</code>, your rules are evaluated in the exact order that they're listed in your Suricata rules string. </p>" + "StatefulEngineOptions$RuleOrder": "<p>Indicates how to manage the order of stateful rule evaluation for the policy. <code>DEFAULT_ACTION_ORDER</code> is the default behavior. Stateful rules are provided to the rule engine as Suricata compatible strings, and Suricata evaluates them based on certain settings. For more information, see <a href=\"https://docs.aws.amazon.com/network-firewall/latest/developerguide/suricata-rule-evaluation-order.html\">Evaluation order for stateful rules</a> in the <i>AWS Network Firewall Developer Guide</i>. </p>", + "StatefulRuleOptions$RuleOrder": "<p>Indicates how to manage the order of the rule evaluation for the rule group. <code>DEFAULT_ACTION_ORDER</code> is the default behavior. Stateful rules are provided to the rule engine as Suricata compatible strings, and Suricata evaluates them based on certain settings. For more information, see <a href=\"https://docs.aws.amazon.com/network-firewall/latest/developerguide/suricata-rule-evaluation-order.html\">Evaluation order for stateful rules</a> in the <i>AWS Network Firewall Developer Guide</i>. </p>" } }, "RuleTargets": { "base": null, "refs": { - "RulesSourceList$Targets": "<p>The domains that you want to inspect for in your traffic flows. To provide multiple domains, separate them with commas. Valid domain specifications are the following:</p> <ul> <li> <p>Explicit names. For example, <code>abc.example.com</code> matches only the domain <code>abc.example.com</code>.</p> </li> <li> <p>Names that use a domain wildcard, which you indicate with an initial '<code>.</code>'. For example,<code>.example.com</code> matches <code>example.com</code> and matches all subdomains of <code>example.com</code>, such as <code>abc.example.com</code> and <code>www.example.com</code>. </p> </li> </ul>" + "RulesSourceList$Targets": "<p>The domains that you want to inspect for in your traffic flows. Valid domain specifications are the following:</p> <ul> <li> <p>Explicit names. For example, <code>abc.example.com</code> matches only the domain <code>abc.example.com</code>.</p> </li> <li> <p>Names that use a domain wildcard, which you indicate with an initial '<code>.</code>'. For example,<code>.example.com</code> matches <code>example.com</code> and matches all subdomains of <code>example.com</code>, such as <code>abc.example.com</code> and <code>www.example.com</code>. </p> </li> </ul>" } }, "RuleVariableName": { @@ -968,7 +999,7 @@ "StatefulActions": { "base": null, "refs": { - "FirewallPolicy$StatefulDefaultActions": "<p>The default actions to take on a packet that doesn't match any stateful rules.</p>" + "FirewallPolicy$StatefulDefaultActions": "<p>The default actions to take on a packet that doesn't match any stateful rules. The stateful default action is optional, and is only valid when using the strict rule order.</p> <p>Valid values of the stateful default action:</p> <ul> <li> <p>aws:drop_strict</p> </li> <li> <p>aws:drop_established</p> </li> <li> <p>aws:alert_strict</p> </li> <li> <p>aws:alert_established</p> </li> </ul> <p>For more information, see <a href=\"https://docs.aws.amazon.com/network-firewall/latest/developerguide/suricata-strict-rule-evaluation-order.html\">Strict evaluation order</a> in the <i>AWS Network Firewall Developer Guide</i>. </p>" } }, "StatefulEngineOptions": { @@ -989,6 +1020,12 @@ "Header$Direction": "<p>The direction of traffic flow to inspect. If set to <code>ANY</code>, the inspection matches bidirectional traffic, both from the source to the destination and from the destination to the source. If set to <code>FORWARD</code>, the inspection only matches traffic going from the source to the destination. </p>" } }, + "StatefulRuleGroupOverride": { + "base": "<p>The setting that allows the policy owner to change the behavior of the rule group within a policy. </p>", + "refs": { + "StatefulRuleGroupReference$Override": "<p>The action that allows the policy owner to override the behavior of the rule group within a policy.</p>" + } + }, "StatefulRuleGroupReference": { "base": "<p>Identifier for a single stateful rule group, used in a firewall policy to refer to a rule group. </p>", "refs": { @@ -1004,6 +1041,7 @@ "StatefulRuleOptions": { "base": "<p>Additional options governing how Network Firewall handles the rule group. You can only use these for stateful rule groups.</p>", "refs": { + "DescribeRuleGroupMetadataResponse$StatefulRuleOptions": null, "RuleGroup$StatefulRuleOptions": "<p>Additional options governing how Network Firewall handles stateful rules. The policies where you use your stateful rule group must have stateful rule options settings that are compatible with these settings.</p>" } }, diff --git a/models/apis/route53-recovery-control-config/2020-11-02/api-2.json b/models/apis/route53-recovery-control-config/2020-11-02/api-2.json index 08ddcbec732..3e140c60bd9 100644 --- a/models/apis/route53-recovery-control-config/2020-11-02/api-2.json +++ b/models/apis/route53-recovery-control-config/2020-11-02/api-2.json @@ -544,6 +544,81 @@ } ] }, + "ListTagsForResource": { + "name": "ListTagsForResource", + "http": { + "method": "GET", + "requestUri": "/tags/{ResourceArn}", + "responseCode": 200 + }, + "input": { + "shape": "ListTagsForResourceRequest" + }, + "output": { + "shape": "ListTagsForResourceResponse" + }, + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + } + ] + }, + "TagResource": { + "name": "TagResource", + "http": { + "method": "POST", + "requestUri": "/tags/{ResourceArn}", + "responseCode": 200 + }, + "input": { + "shape": "TagResourceRequest" + }, + "output": { + "shape": "TagResourceResponse" + }, + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + } + ] + }, + "UntagResource": { + "name": "UntagResource", + "http": { + "method": "DELETE", + "requestUri": "/tags/{ResourceArn}", + "responseCode": 200 + }, + "input": { + "shape": "UntagResourceRequest" + }, + "output": { + "shape": "UntagResourceResponse" + }, + "errors": [ + { + "shape": "ResourceNotFoundException" + }, + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + } + ] + }, "UpdateControlPanel": { "name": "UpdateControlPanel", "http": { @@ -659,10 +734,10 @@ "type": "structure", "members": { "AssertedControls": { - "shape": "__listOf__string" + "shape": "__listOf__stringMin1Max256PatternAZaZ09" }, "ControlPanelArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "Name": { "shape": "__stringMin1Max64PatternS" @@ -671,7 +746,7 @@ "shape": "RuleConfig" }, "SafetyRuleArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "Status": { "shape": "Status" @@ -697,7 +772,7 @@ "shape": "__stringMin1Max64PatternS" }, "SafetyRuleArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "WaitPeriodMs": { "shape": "__integer" @@ -713,7 +788,7 @@ "type": "structure", "members": { "ClusterArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "ClusterEndpoints": { "shape": "__listOfClusterEndpoint" @@ -730,10 +805,10 @@ "type": "structure", "members": { "Endpoint": { - "shape": "__stringMin1Max128" + "shape": "__stringMin1Max128PatternAZaZ09" }, "Region": { - "shape": "__stringMin1Max32" + "shape": "__stringMin1Max32PatternS" } } }, @@ -757,10 +832,10 @@ "type": "structure", "members": { "ClusterArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "ControlPanelArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "DefaultControlPanel": { "shape": "__boolean" @@ -780,11 +855,14 @@ "type": "structure", "members": { "ClientToken": { - "shape": "__stringMax64", + "shape": "__stringMin1Max64PatternS", "idempotencyToken": true }, "ClusterName": { "shape": "__stringMin1Max64PatternS" + }, + "Tags": { + "shape": "__mapOf__stringMin0Max256PatternS" } }, "required": [ @@ -803,14 +881,17 @@ "type": "structure", "members": { "ClientToken": { - "shape": "__stringMax64", + "shape": "__stringMin1Max64PatternS", "idempotencyToken": true }, "ClusterArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "ControlPanelName": { "shape": "__stringMin1Max64PatternS" + }, + "Tags": { + "shape": "__mapOf__stringMin0Max256PatternS" } }, "required": [ @@ -830,14 +911,14 @@ "type": "structure", "members": { "ClientToken": { - "shape": "__stringMax64", + "shape": "__stringMin1Max64PatternS", "idempotencyToken": true }, "ClusterArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "ControlPanelArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "RoutingControlName": { "shape": "__stringMin1Max64PatternS" @@ -863,11 +944,14 @@ "shape": "NewAssertionRule" }, "ClientToken": { - "shape": "__stringMax64", + "shape": "__stringMin1Max64PatternS", "idempotencyToken": true }, "GatingRule": { "shape": "NewGatingRule" + }, + "Tags": { + "shape": "__mapOf__stringMin0Max256PatternS" } } }, @@ -1041,10 +1125,10 @@ "type": "structure", "members": { "ControlPanelArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "GatingControls": { - "shape": "__listOf__string" + "shape": "__listOf__stringMin1Max256PatternAZaZ09" }, "Name": { "shape": "__stringMin1Max64PatternS" @@ -1053,13 +1137,13 @@ "shape": "RuleConfig" }, "SafetyRuleArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "Status": { "shape": "Status" }, "TargetControls": { - "shape": "__listOf__string" + "shape": "__listOf__stringMin1Max256PatternAZaZ09" }, "WaitPeriodMs": { "shape": "__integer" @@ -1083,7 +1167,7 @@ "shape": "__stringMin1Max64PatternS" }, "SafetyRuleArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "WaitPeriodMs": { "shape": "__integer" @@ -1138,10 +1222,10 @@ "type": "structure", "members": { "HealthCheckIds": { - "shape": "__listOf__string" + "shape": "__listOf__stringMax36PatternS" }, "NextToken": { - "shape": "__stringMax8096" + "shape": "__stringMin1Max8096PatternS" } } }, @@ -1167,7 +1251,7 @@ "shape": "__listOfCluster" }, "NextToken": { - "shape": "__stringMax8096" + "shape": "__stringMin1Max8096PatternS" } } }, @@ -1198,7 +1282,7 @@ "shape": "__listOfControlPanel" }, "NextToken": { - "shape": "__stringMax8096" + "shape": "__stringMin1Max8096PatternS" } } }, @@ -1229,7 +1313,7 @@ "type": "structure", "members": { "NextToken": { - "shape": "__stringMax8096" + "shape": "__stringMin1Max8096PatternS" }, "RoutingControls": { "shape": "__listOfRoutingControl" @@ -1263,13 +1347,34 @@ "type": "structure", "members": { "NextToken": { - "shape": "__stringMax8096" + "shape": "__stringMin1Max8096PatternS" }, "SafetyRules": { "shape": "__listOfRule" } } }, + "ListTagsForResourceRequest": { + "type": "structure", + "members": { + "ResourceArn": { + "shape": "__string", + "location": "uri", + "locationName": "ResourceArn" + } + }, + "required": [ + "ResourceArn" + ] + }, + "ListTagsForResourceResponse": { + "type": "structure", + "members": { + "Tags": { + "shape": "__mapOf__stringMin0Max256PatternS" + } + } + }, "MaxResults": { "type": "integer", "min": 1, @@ -1279,10 +1384,10 @@ "type": "structure", "members": { "AssertedControls": { - "shape": "__listOf__string" + "shape": "__listOf__stringMin1Max256PatternAZaZ09" }, "ControlPanelArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "Name": { "shape": "__stringMin1Max64PatternS" @@ -1306,10 +1411,10 @@ "type": "structure", "members": { "ControlPanelArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "GatingControls": { - "shape": "__listOf__string" + "shape": "__listOf__stringMin1Max256PatternAZaZ09" }, "Name": { "shape": "__stringMin1Max64PatternS" @@ -1318,7 +1423,7 @@ "shape": "RuleConfig" }, "TargetControls": { - "shape": "__listOf__string" + "shape": "__listOf__stringMin1Max256PatternAZaZ09" }, "WaitPeriodMs": { "shape": "__integer" @@ -1353,13 +1458,13 @@ "type": "structure", "members": { "ControlPanelArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "Name": { "shape": "__stringMin1Max64PatternS" }, "RoutingControlArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "Status": { "shape": "Status" @@ -1428,6 +1533,27 @@ "PENDING_DELETION" ] }, + "TagResourceRequest": { + "type": "structure", + "members": { + "ResourceArn": { + "shape": "__string", + "location": "uri", + "locationName": "ResourceArn" + }, + "Tags": { + "shape": "__mapOf__stringMin0Max256PatternS" + } + }, + "required": [ + "ResourceArn", + "Tags" + ] + }, + "TagResourceResponse": { + "type": "structure", + "members": {} + }, "ThrottlingException": { "type": "structure", "members": { @@ -1444,11 +1570,34 @@ "httpStatusCode": 429 } }, + "UntagResourceRequest": { + "type": "structure", + "members": { + "ResourceArn": { + "shape": "__string", + "location": "uri", + "locationName": "ResourceArn" + }, + "TagKeys": { + "shape": "__listOf__string", + "location": "querystring", + "locationName": "TagKeys" + } + }, + "required": [ + "ResourceArn", + "TagKeys" + ] + }, + "UntagResourceResponse": { + "type": "structure", + "members": {} + }, "UpdateControlPanelRequest": { "type": "structure", "members": { "ControlPanelArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "ControlPanelName": { "shape": "__stringMin1Max64PatternS" @@ -1471,7 +1620,7 @@ "type": "structure", "members": { "RoutingControlArn": { - "shape": "__string" + "shape": "__stringMin1Max256PatternAZaZ09" }, "RoutingControlName": { "shape": "__stringMin1Max64PatternS" @@ -1573,29 +1722,61 @@ "shape": "__string" } }, + "__listOf__stringMax36PatternS": { + "type": "list", + "member": { + "shape": "__stringMax36PatternS" + } + }, + "__listOf__stringMin1Max256PatternAZaZ09": { + "type": "list", + "member": { + "shape": "__stringMin1Max256PatternAZaZ09" + } + }, "__long": { "type": "long" }, + "__mapOf__stringMin0Max256PatternS": { + "type": "map", + "key": { + "shape": "__string" + }, + "value": { + "shape": "__stringMin0Max256PatternS" + } + }, "__string": { "type": "string" }, - "__stringMax64": { + "__stringMax36PatternS": { "type": "string", - "max": 64 + "max": 36, + "pattern": "^\\S+$" }, - "__stringMax8096": { + "__stringMin0Max256PatternS": { "type": "string", - "max": 8096 + "min": 0, + "max": 256, + "pattern": "^\\S+$" }, - "__stringMin1Max128": { + "__stringMin1Max128PatternAZaZ09": { "type": "string", "min": 1, - "max": 128 + "max": 128, + "pattern": "^[A-Za-z0-9:.\\/_-]*$" }, - "__stringMin1Max32": { + "__stringMin1Max256PatternAZaZ09": { "type": "string", "min": 1, - "max": 32 + "max": 256, + "pattern": "^[A-Za-z0-9:\\/_-]*$" + }, + "__stringMin1Max32PatternS": { + "type": "string", + "min": 1, + "max": 32, + "pattern": "^\\S+$" }, "__stringMin1Max64PatternS": { "type": "string", @@ -1603,6 +1784,12 @@ "max": 64, "pattern": "^\\S+$" }, + "__stringMin1Max8096PatternS": { + "type": "string", + "min": 1, + "max": 8096, + "pattern": "[\\S]*" + }, "__timestampIso8601": { "type": "timestamp", "timestampFormat": "iso8601" diff --git a/models/apis/route53-recovery-control-config/2020-11-02/docs-2.json b/models/apis/route53-recovery-control-config/2020-11-02/docs-2.json index 79bb96de8d5..b1b6cebeff8 100644 --- a/models/apis/route53-recovery-control-config/2020-11-02/docs-2.json +++ b/models/apis/route53-recovery-control-config/2020-11-02/docs-2.json @@ -2,10 +2,10 @@ "version": "2.0", "service": "<p>Recovery Control Configuration API Reference for Amazon Route 53 Application Recovery Controller</p>", "operations": { - "CreateCluster": "<p>Create a new cluster. A cluster is a set of redundant Regional endpoints against which you can run API calls to update or get the state of one or more routing controls. Each cluster has a name, status, Amazon Resource Name (ARN), and an array of the five cluster endpoints (one for each supported Amazon Web Services Region) that you can use with API calls to the Amazon Route 53 Application Recovery Controller cluster data plane.</p>", - "CreateControlPanel": "<p>Creates a new control panel. A control panel represents a group of routing controls that can be changed together in a single transaction. You can use a control panel to centrally view the operational status of applications across your organization, and trigger multi-app failovers in a single transaction, for example, to fail over an Availability Zone or AWS Region.</p>", + "CreateCluster": "<p>Create a new cluster. A cluster is a set of redundant Regional endpoints against which you can run API calls to update or get the state of one or more routing controls. Each cluster has a name, status, Amazon Resource Name (ARN), and an array of the five cluster endpoints (one for each supported Amazon Web Services Region) that you can use with API calls to the cluster data plane.</p>", + "CreateControlPanel": "<p>Creates a new control panel. A control panel represents a group of routing controls that can be changed together in a single transaction. You can use a control panel to centrally view the operational status of applications across your organization, and trigger multi-app failovers in a single transaction, for example, to fail over an Availability Zone or Amazon Web Services Region.</p>", "CreateRoutingControl": "<p>Creates a new routing control.</p> <p>A routing control has one of two states: ON and OFF. You can map the routing control state to the state of an Amazon Route 53 health check, which can be used to control traffic routing.</p> <p>To get or update the routing control state, see the Recovery Cluster (data plane) API actions for Amazon Route 53 Application Recovery Controller.</p>", - "CreateSafetyRule": "<p>Creates a safety rule in a control panel. Safety rules let you add safeguards around enabling and disabling routing controls, to help prevent unexpected outcomes.</p> <p>There are two types of safety rules: assertion rules and gating rules.</p> <p>Assertion rule: An assertion rule enforces that, when a routing control state is changed, the criteria set by the rule configuration is met. Otherwise, the change to the routing control is not accepted.</p> <p>Gating rule: A gating rule verifies that a set of gating controls evaluates as true, based on a rule configuration that you specify. If the gating rule evaluates to true, Amazon Route 53 Application Recovery Controller allows a set of routing control state changes to run and complete against the set of target controls.</p>", + "CreateSafetyRule": "<p>Creates a safety rule in a control panel. Safety rules let you add safeguards around changing routing control states, and for enabling and disabling routing controls, to help prevent unexpected outcomes.</p> <p>There are two types of safety rules: assertion rules and gating rules.</p> <p>Assertion rule: An assertion rule enforces that, when you change a routing control state, that a certain criteria is met. For example, the criteria might be that at least one routing control state is On after the transation so that traffic continues to flow to at least one cell for the application. This ensures that you avoid a fail-open scenario.</p> <p>Gating rule: A gating rule lets you configure a gating routing control as an overall \"on/off\" switch for a group of routing controls. Or, you can configure more complex gating scenarios, for example by configuring multiple gating routing controls.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.safety-rules.html\">Safety rules</a> in the Amazon Route 53 Application Recovery Controller Developer Guide.</p>", "DeleteCluster": "<p>Delete a cluster.</p>", "DeleteControlPanel": "<p>Deletes a control panel.</p>", "DeleteRoutingControl": "<p>Deletes a routing control.</p>", @@ -13,39 +13,42 @@ "DescribeCluster": "<p>Display the details about a cluster. The response includes the cluster name, endpoints, status, and Amazon Resource Name (ARN).</p>", "DescribeControlPanel": "<p>Displays details about a control panel.</p>", "DescribeRoutingControl": "<p>Displays details about a routing control. A routing control has one of two states: ON and OFF. You can map the routing control state to the state of an Amazon Route 53 health check, which can be used to control routing.</p> <p>To get or update the routing control state, see the Recovery Cluster (data plane) API actions for Amazon Route 53 Application Recovery Controller.</p>", - "DescribeSafetyRule": "<p>Describes the safety rules (that is, the assertion rules and gating rules) for the routing controls in a control panel.</p>", + "DescribeSafetyRule": "<p>Returns information about a safety rule.</p>", "ListAssociatedRoute53HealthChecks": "<p>Returns an array of all Amazon Route 53 health checks associated with a specific routing control.</p>", "ListClusters": "<p>Returns an array of all the clusters in an account.</p>", - "ListControlPanels": "<p>Returns an array of control panels for a cluster.</p>", + "ListControlPanels": "<p>Returns an array of control panels in an account or in a cluster.</p>", "ListRoutingControls": "<p>Returns an array of routing controls for a control panel. A routing control is an Amazon Route 53 Application Recovery Controller construct that has one of two states: ON and OFF. You can map the routing control state to the state of an Amazon Route 53 health check, which can be used to control routing.</p>", "ListSafetyRules": "<p>List the safety rules (the assertion rules and gating rules) that you've defined for the routing controls in a control panel.</p>", + "ListTagsForResource": "<p>Lists the tags for a resource.</p>", + "TagResource": "<p>Adds a tag to a resource.</p>", + "UntagResource": "<p>Removes a tag from a resource.</p>", "UpdateControlPanel": "<p>Updates a control panel. The only update you can make to a control panel is to change the name of the control panel.</p>", "UpdateRoutingControl": "<p>Updates a routing control. You can only update the name of the routing control. To get or update the routing control state, see the Recovery Cluster (data plane) API actions for Amazon Route 53 Application Recovery Controller.</p>", - "UpdateSafetyRule": "<p>Update a safety rule (an assertion rule or gating rule) for the routing controls in a control panel. You can only update the name and the waiting period for a safety rule. To make other updates, delete the safety rule and create a new safety rule.</p>" + "UpdateSafetyRule": "<p>Update a safety rule (an assertion rule or gating rule). You can only update the name and the waiting period for a safety rule. To make other updates, delete the safety rule and create a new one.</p>" }, "shapes": { "AccessDeniedException": { - "base": "<p>403 response - AccessDeniedException. You do not have sufficient access to perform this action.</p>", + "base": "<p>403 response - You do not have sufficient access to perform this action.</p>", "refs": { } }, "AssertionRule": { - "base": "<p>An assertion rule enforces that, when a routing control state is changed, the criteria set by the rule configuration is met. Otherwise, the change to the routing control is not accepted.</p>", + "base": "<p>An assertion rule enforces that, when you change a routing control state, that the criteria that you set in the rule configuration is met. Otherwise, the change to the routing control is not accepted. For example, the criteria might be that at least one routing control state is On after the transation so that traffic continues to flow to at least one cell for the application. This ensures that you avoid a fail-open scenario.</p>", "refs": { - "CreateSafetyRuleResponse$AssertionRule": null, - "DescribeSafetyRuleResponse$AssertionRule": null, - "Rule$ASSERTION": "<p>An assertion rule enforces that, when a routing control state is changed, the criteria set by the rule configuration is met. Otherwise, the change to the routing control is not accepted.</p>", - "UpdateSafetyRuleResponse$AssertionRule": null + "CreateSafetyRuleResponse$AssertionRule": "<p>The assertion rule created.</p>", + "DescribeSafetyRuleResponse$AssertionRule": "<p>The assertion rule in the response.</p>", + "Rule$ASSERTION": "<p>An assertion rule enforces that, when a routing control state is changed, the criteria set by the rule configuration is met. Otherwise, the change to the routing control state is not accepted. For example, the criteria might be that at least one routing control state is On after the transation so that traffic continues to flow to at least one cell for the application. This ensures that you avoid a fail-open scenario.</p>", + "UpdateSafetyRuleResponse$AssertionRule": "<p>The assertion rule updated.</p>" } }, "AssertionRuleUpdate": { "base": "<p>An update to an assertion rule. You can update the name or the evaluation period (wait period). If you don't specify one of the items to update, the item is unchanged.</p>", "refs": { - "UpdateSafetyRuleRequest$AssertionRuleUpdate": null + "UpdateSafetyRuleRequest$AssertionRuleUpdate": "<p>The assertion rule to update.</p>" } }, "Cluster": { - "base": "<p>A cluster is a set of five consensus-forming Regional endpoints that represent the infrastructure that hosts your routing controls. Typically, you host together on one cluster all of the routing controls for your applications.</p>", + "base": "<p>A set of five redundant Regional endpoints against which you can execute API calls to update or get the state of routing controls. You can host multiple control panels and routing controls on one cluster.</p>", "refs": { "CreateClusterResponse$Cluster": "<p>The cluster that was created.</p>", "DescribeClusterResponse$Cluster": "<p>The cluster for the DescribeCluster request.</p>", @@ -59,7 +62,7 @@ } }, "ConflictException": { - "base": "<p>409 response - ConflictException.</p>", + "base": "<p>409 response - ConflictException. You might be using a predefined variable.</p>", "refs": { } }, @@ -153,18 +156,18 @@ } }, "GatingRule": { - "base": "<p>A gating rule verifies that a set of gating controls evaluates as true, based on a rule configuration that you specify. If the gating rule evaluates to true, Amazon Route 53 Application Recovery Controller allows a set of routing control state changes to run and complete against the set of target controls.</p>", + "base": "<p>A gating rule verifies that a gating routing control or set of gating rounting controls, evaluates as true, based on a rule configuration that you specify, which allows a set of routing control state changes to complete.</p> <p>For example, if you specify one gating routing control and you set the Type in the rule configuration to OR, that indicates that you must set the gating routing control to On for the rule to evaluate as true; that is, for the gating control \"switch\" to be \"On\". When you do that, then you can update the routing control states for the target routing controls that you specify in the gating rule.</p>", "refs": { - "CreateSafetyRuleResponse$GatingRule": null, - "DescribeSafetyRuleResponse$GatingRule": null, - "Rule$GATING": "<p>A gating rule verifies that a set of gating controls evaluates as true, based on a rule configuration that you specify. If the gating rule evaluates to true, Amazon Route 53 Application Recovery Controller allows a set of routing control state changes to run and complete against the set of target controls.</p>", - "UpdateSafetyRuleResponse$GatingRule": null + "CreateSafetyRuleResponse$GatingRule": "<p>The gating rule created.</p>", + "DescribeSafetyRuleResponse$GatingRule": "<p>The gating rule in the response.</p>", + "Rule$GATING": "<p>A gating rule verifies that a gating routing control or set of gating rounting controls, evaluates as true, based on a rule configuration that you specify, which allows a set of routing control state changes to complete.</p> <p>For example, if you specify one gating routing control and you set the Type in the rule configuration to OR, that indicates that you must set the gating routing control to On for the rule to evaluate as true; that is, for the gating control \"switch\" to be \"On\". When you do that, then you can update the routing control states for the target routing controls that you specify in the gating rule.</p>", + "UpdateSafetyRuleResponse$GatingRule": "<p>The gating rule updated.</p>" } }, "GatingRuleUpdate": { "base": "<p>Update to a gating rule. You can update the name or the evaluation period (wait period). If you don't specify one of the items to update, the item is unchanged.</p>", "refs": { - "UpdateSafetyRuleRequest$GatingRuleUpdate": null + "UpdateSafetyRuleRequest$GatingRuleUpdate": "<p>The gating rule to update.</p>" } }, "InternalServerException": { @@ -197,20 +200,25 @@ "refs": { } }, + "ListTagsForResourceResponse": { + "base": "<p>The result of a successful ListTagsForResource request.</p>", + "refs": { + } + }, "NewAssertionRule": { "base": "<p>A new assertion rule for a control panel.</p>", "refs": { - "CreateSafetyRuleRequest$AssertionRule": null + "CreateSafetyRuleRequest$AssertionRule": "<p>The assertion rule requested.</p>" } }, "NewGatingRule": { "base": "<p>A new gating rule for a control panel.</p>", "refs": { - "CreateSafetyRuleRequest$GatingRule": null + "CreateSafetyRuleRequest$GatingRule": "<p>The gating rule requested.</p>" } }, "ResourceNotFoundException": { - "base": "<p>404 response - The query string contains a syntax error or resource not found.</p>", + "base": "<p>404 response - MalformedQueryString. The query string contains a syntax error or resource not found..</p>", "refs": { } }, @@ -230,12 +238,12 @@ } }, "RuleConfig": { - "base": "<p>The rule configuration for an assertion rule. That is, the criteria that you set for specific assertion controls (routing controls) that specify how many controls must be enabled after a transaction completes.</p>", + "base": "<p>The rule configuration for an assertion rule. That is, the criteria that you set for specific assertion controls (routing controls) that specify how many control states must be ON after a transaction completes.</p>", "refs": { - "AssertionRule$RuleConfig": "<p>The criteria that you set for specific assertion controls (routing controls) that designate how many controls must be enabled as the result of a transaction. For example, if you have three assertion controls, you might specify atleast 2 for your rule configuration. This means that at least two assertion controls must be enabled, so that at least two Amazon Web Services Regions are enabled.</p>", - "GatingRule$RuleConfig": "<p>The criteria that you set for specific gating controls (routing controls) that designates how many controls must be enabled to allow you to change (set or unset) the target controls.</p>", - "NewAssertionRule$RuleConfig": "<p>The criteria that you set for specific assertion controls (routing controls) that designate how many controls must be enabled as the result of a transaction. For example, if you have three assertion controls, you might specify atleast 2 for your rule configuration. This means that at least two assertion controls must be enabled, so that at least two Amazon Web Services Regions are enabled.</p>", - "NewGatingRule$RuleConfig": "<p>The criteria that you set for specific gating controls (routing controls) that designates how many controls must be enabled to allow you to change (set or unset) the target controls.</p>" + "AssertionRule$RuleConfig": "<p>The criteria that you set for specific assertion routing controls (AssertedControls) that designate how many routing control states must be ON as the result of a transaction. For example, if you have three assertion routing controls, you might specify atleast 2 for your rule configuration. This means that at least two assertion routing control states must be ON, so that at least two Amazon Web Services Regions have traffic flowing to them.</p>", + "GatingRule$RuleConfig": "<p>The criteria that you set for gating routing controls that designates how many of the routing control states must be ON to allow you to update target routing control states.</p>", + "NewAssertionRule$RuleConfig": "<p>The criteria that you set for specific assertion controls (routing controls) that designate how many control states must be ON as the result of a transaction. For example, if you have three assertion controls, you might specify ATLEAST 2for your rule configuration. This means that at least two assertion controls must be ON, so that at least two Amazon Web Services Regions have traffic flowing to them.</p>", + "NewGatingRule$RuleConfig": "<p>The criteria that you set for specific gating controls (routing controls) that designates how many control states must be ON to allow you to change (set or unset) the target control states.</p>" } }, "RuleType": { @@ -245,7 +253,7 @@ } }, "ServiceQuotaExceededException": { - "base": "<p>402 response</p>", + "base": "<p>402 response - You attempted to create more resources than the service allows based on service quotas.</p>", "refs": { } }, @@ -259,8 +267,23 @@ "RoutingControl$Status": "<p>The deployment status of a routing control. Status can be one of the following: PENDING, DEPLOYED, PENDING_DELETION.</p>" } }, + "TagResourceRequest": { + "base": "<p>Request to tag a resource.</p>", + "refs": { + } + }, + "TagResourceResponse": { + "base": "<p>The result of a successful TagResource request.</p>", + "refs": { + } + }, "ThrottlingException": { - "base": "<p>429 response - ThrottlingException.</p>", + "base": "<p>429 response - LimitExceededException or TooManyRequestsException.</p>", + "refs": { + } + }, + "UntagResourceResponse": { + "base": "<p>The result of a successful UntagResource request.</p>", "refs": { } }, @@ -295,7 +318,7 @@ } }, "ValidationException": { - "base": "<p>400 response - Multiple causes. For example, you might have a malformed query string and input parameter might be out of range, or you used parameters together incorrectly.</p>", + "base": "<p>400 response - Multiple causes. For example, you might have a malformed query string and input parameter might be out of range, or you might have used parameters together incorrectly.</p>", "refs": { } }, @@ -328,7 +351,7 @@ "__listOfClusterEndpoint": { "base": null, "refs": { - "Cluster$ClusterEndpoints": "<p>Endpoints for a cluster. Specify one of these endpoints when you want to set or retrieve a routing control state in the cluster.</p> <p>To get or update the routing control state, see the Amazon Route 53 Application Recovery Controller Cluster (Data Plane) Actions.</p>" + "Cluster$ClusterEndpoints": "<p>Endpoints for a cluster. Specify one of these endpoints when you want to set or retrieve a routing control state in the cluster.</p> <p>To get or update the routing control state, see the Amazon Route 53 Application Recovery Controller Routing Control Actions.</p>" } }, "__listOfControlPanel": { @@ -349,27 +372,70 @@ "ListSafetyRulesResponse$SafetyRules": "<p>The list of safety rules in a control panel.</p>" } }, - "__listOf__string": { + "__listOf__stringMax36PatternS": { + "base": null, + "refs": { + "ListAssociatedRoute53HealthChecksResponse$HealthCheckIds": "<p>Identifiers for the health checks.</p>" + } + }, + "__listOf__stringMin1Max256PatternAZaZ09": { "base": null, "refs": { "AssertionRule$AssertedControls": "<p>The routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed. For example, you might include three routing controls, one for each of three Amazon Web Services Regions.</p>", - "GatingRule$GatingControls": "<p>The gating controls for the gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.</p>", - "GatingRule$TargetControls": "<p>Routing controls that can only be set or unset if the specified RuleConfig evaluates to true for the specified GatingControls. For example, say you have three gating controls, one for each of three Amazon Web Services Regions. Now you specify ATLEAST 2 as your RuleConfig. With these settings, you can only change (set or unset) the routing controls that you have specified as TargetControls if that rule evaluates to true.</p> <p>In other words, your ability to change the routing controls that you have specified as TargetControls is gated by the rule that you set for the routing controls in GatingControls.</p>", - "ListAssociatedRoute53HealthChecksResponse$HealthCheckIds": "<p>Identifiers for the health checks.</p>", + "GatingRule$GatingControls": "<p>An array of gating routing control Amazon Resource Names (ARNs). For a simple \"on/off\" switch, specify the ARN for one routing control. The gating routing controls are evaluated by the rule configuration that you specify to determine if the target routing control states can be changed.</p>", + "GatingRule$TargetControls": "<p>An array of target routing control Amazon Resource Names (ARNs) for which the states can only be updated if the rule configuration that you specify evaluates to true for the gating routing control. As a simple example, if you have a single gating control, it acts as an overall \"on/off\" switch for a set of target routing controls. You can use this to manually override automated fail over, for example.</p>", "NewAssertionRule$AssertedControls": "<p>The routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed. For example, you might include three routing controls, one for each of three Amazon Web Services Regions.</p>", "NewGatingRule$GatingControls": "<p>The gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.</p>", "NewGatingRule$TargetControls": "<p>Routing controls that can only be set or unset if the specified RuleConfig evaluates to true for the specified GatingControls. For example, say you have three gating controls, one for each of three Amazon Web Services Regions. Now you specify AtLeast 2 as your RuleConfig. With these settings, you can only change (set or unset) the routing controls that you have specified as TargetControls if that rule evaluates to true.</p> <p>In other words, your ability to change the routing controls that you have specified as TargetControls is gated by the rule that you set for the routing controls in GatingControls.</p>" } }, + "__mapOf__stringMin0Max256PatternS": { + "base": null, + "refs": { + "CreateClusterRequest$Tags": "<p>The tags associated with the cluster.</p>", + "CreateControlPanelRequest$Tags": "<p>The tags associated with the control panel.</p>", + "CreateSafetyRuleRequest$Tags": "<p>The tags associated with the safety rule.</p>", + "ListTagsForResourceResponse$Tags": "<p>The tags associated with the resource.</p>", + "TagResourceRequest$Tags": "<p>The tags associated with the resource.</p>" + } + }, "__string": { "base": null, "refs": { "AccessDeniedException$Message": null, + "ConflictException$Message": null, + "InternalServerException$Message": null, + "ResourceNotFoundException$Message": null, + "ServiceQuotaExceededException$Message": null, + "ThrottlingException$Message": null, + "ValidationException$Message": null + } + }, + "__stringMax36PatternS": { + "base": null, + "refs": { + "__listOf__stringMax36PatternS$member": null + } + }, + "__stringMin0Max256PatternS": { + "base": null, + "refs": { + "__mapOf__stringMin0Max256PatternS$member": null + } + }, + "__stringMin1Max128PatternAZaZ09": { + "base": null, + "refs": { + "ClusterEndpoint$Endpoint": "<p>A cluster endpoint. Specify an endpoint and Amazon Web Services Region when you want to set or retrieve a routing control state in the cluster.</p> <p>To get or update the routing control state, see the Amazon Route 53 Application Recovery Controller Routing Control Actions.</p>" + } + }, + "__stringMin1Max256PatternAZaZ09": { + "base": null, + "refs": { "AssertionRule$ControlPanelArn": "<p>The Amazon Resource Name (ARN) of the control panel.</p>", "AssertionRule$SafetyRuleArn": "<p>The Amazon Resource Name (ARN) of the assertion rule.</p>", "AssertionRuleUpdate$SafetyRuleArn": "<p>The Amazon Resource Name (ARN) of the assertion rule.</p>", "Cluster$ClusterArn": "<p>The Amazon Resource Name (ARN) of the cluster.</p>", - "ConflictException$Message": null, "ControlPanel$ClusterArn": "<p>The Amazon Resource Name (ARN) of the cluster that includes the control panel.</p>", "ControlPanel$ControlPanelArn": "<p>The Amazon Resource Name (ARN) of the control panel.</p>", "CreateControlPanelRequest$ClusterArn": "<p>The Amazon Resource Name (ARN) of the cluster for the control panel.</p>", @@ -378,46 +444,16 @@ "GatingRule$ControlPanelArn": "<p>The Amazon Resource Name (ARN) of the control panel.</p>", "GatingRule$SafetyRuleArn": "<p>The Amazon Resource Name (ARN) of the gating rule.</p>", "GatingRuleUpdate$SafetyRuleArn": "<p>The Amazon Resource Name (ARN) of the gating rule.</p>", - "InternalServerException$Message": null, "NewAssertionRule$ControlPanelArn": "<p>The Amazon Resource Name (ARN) for the control panel.</p>", "NewGatingRule$ControlPanelArn": "<p>The Amazon Resource Name (ARN) of the control panel.</p>", - "ResourceNotFoundException$Message": null, "RoutingControl$ControlPanelArn": "<p>The Amazon Resource Name (ARN) of the control panel that includes the routing control.</p>", "RoutingControl$RoutingControlArn": "<p>The Amazon Resource Name (ARN) of the routing control.</p>", - "ServiceQuotaExceededException$Message": null, - "ThrottlingException$Message": null, "UpdateControlPanelRequest$ControlPanelArn": "<p>The Amazon Resource Name (ARN) of the control panel.</p>", "UpdateRoutingControlRequest$RoutingControlArn": "<p>The Amazon Resource Name (ARN) of the routing control.</p>", - "ValidationException$Message": null, - "__listOf__string$member": null + "__listOf__stringMin1Max256PatternAZaZ09$member": null } }, - "__stringMax64": { - "base": null, - "refs": { - "CreateClusterRequest$ClientToken": "<p>Unique client idempotency token.</p>", - "CreateControlPanelRequest$ClientToken": "<p>Unique client idempotency token.</p>", - "CreateRoutingControlRequest$ClientToken": "<p>Unique client idempotency token.</p>", - "CreateSafetyRuleRequest$ClientToken": "<p>Unique client idempotency token.</p>" - } - }, - "__stringMax8096": { - "base": null, - "refs": { - "ListAssociatedRoute53HealthChecksResponse$NextToken": "<p>The token that identifies which batch of results you want to see.</p>", - "ListClustersResponse$NextToken": "<p>The token that identifies which batch of results you want to see.</p>", - "ListControlPanelsResponse$NextToken": "<p>The token that identifies which batch of results you want to see.</p>", - "ListRoutingControlsResponse$NextToken": "<p>The token that identifies which batch of results you want to see.</p>", - "ListSafetyRulesResponse$NextToken": "<p>The token that identifies which batch of results you want to see.</p>" - } - }, - "__stringMin1Max128": { - "base": null, - "refs": { - "ClusterEndpoint$Endpoint": "<p>A cluster endpoint. Specify an endpoint and Amazon Web Services Region when you want to set or retrieve a routing control state in the cluster.</p> <p>To get or update the routing control state, see the Amazon Route 53 Application Recovery Controller Cluster (Data Plane) Actions.</p>" - } - }, - "__stringMin1Max32": { + "__stringMin1Max32PatternS": { "base": null, "refs": { "ClusterEndpoint$Region": "<p>The Amazon Web Services Region for a cluster endpoint.</p>" @@ -430,17 +466,31 @@ "AssertionRuleUpdate$Name": "<p>The name of the assertion rule. You can use any non-white space character in the name.</p>", "Cluster$Name": "<p>The name of the cluster.</p>", "ControlPanel$Name": "<p>The name of the control panel. You can use any non-white space character in the name.</p>", + "CreateClusterRequest$ClientToken": "<p>A unique, case-sensitive string of up to 64 ASCII characters. To make an idempotent API request with an action, specify a client token in the request.</p>", "CreateClusterRequest$ClusterName": "<p>The name of the cluster.</p>", + "CreateControlPanelRequest$ClientToken": "<p>A unique, case-sensitive string of up to 64 ASCII characters. To make an idempotent API request with an action, specify a client token in the request.</p>", "CreateControlPanelRequest$ControlPanelName": "<p>The name of the control panel.</p>", + "CreateRoutingControlRequest$ClientToken": "<p>A unique, case-sensitive string of up to 64 ASCII characters. To make an idempotent API request with an action, specify a client token in the request.</p>", "CreateRoutingControlRequest$RoutingControlName": "<p>The name of the routing control.</p>", - "GatingRule$Name": "<p>The name for the gating rule.</p>", - "GatingRuleUpdate$Name": "<p>The name for the gating rule.</p>", + "CreateSafetyRuleRequest$ClientToken": "<p>A unique, case-sensitive string of up to 64 ASCII characters. To make an idempotent API request with an action, specify a client token in the request.</p>", + "GatingRule$Name": "<p>The name for the gating rule. You can use any non-white space character in the name.</p>", + "GatingRuleUpdate$Name": "<p>The name for the gating rule. You can use any non-white space character in the name.</p>", "NewAssertionRule$Name": "<p>The name of the assertion rule. You can use any non-white space character in the name.</p>", "NewGatingRule$Name": "<p>The name for the new gating rule.</p>", "RoutingControl$Name": "<p>The name of the routing control.</p>", "UpdateControlPanelRequest$ControlPanelName": "<p>The name of the control panel.</p>", "UpdateRoutingControlRequest$RoutingControlName": "<p>The name of the routing control.</p>" } + }, + "__stringMin1Max8096PatternS": { + "base": null, + "refs": { + "ListAssociatedRoute53HealthChecksResponse$NextToken": "<p>Next token for listing health checks.</p>", + "ListClustersResponse$NextToken": "<p>The token that identifies which batch of results you want to see.</p>", + "ListControlPanelsResponse$NextToken": "<p>The token that identifies which batch of results you want to see.</p>", + "ListRoutingControlsResponse$NextToken": "<p>The token that identifies which batch of results you want to see.</p>", + "ListSafetyRulesResponse$NextToken": "<p>The token that identifies which batch of results you want to see.</p>" + } } } } diff --git a/models/apis/route53domains/2014-05-15/api-2.json b/models/apis/route53domains/2014-05-15/api-2.json index 5decf954917..ca5b884a7f5 100644 --- a/models/apis/route53domains/2014-05-15/api-2.json +++ b/models/apis/route53domains/2014-05-15/api-2.json @@ -23,7 +23,8 @@ "errors":[ {"shape":"InvalidInput"}, {"shape":"OperationLimitExceeded"}, - {"shape":"DomainLimitExceeded"} + {"shape":"DomainLimitExceeded"}, + {"shape":"UnsupportedTLD"} ] }, "CancelDomainTransferToAnotherAwsAccount":{ @@ -36,7 +37,8 @@ "output":{"shape":"CancelDomainTransferToAnotherAwsAccountResponse"}, "errors":[ {"shape":"InvalidInput"}, - {"shape":"OperationLimitExceeded"} + {"shape":"OperationLimitExceeded"}, + {"shape":"UnsupportedTLD"} ] }, "CheckDomainAvailability":{ @@ -65,6 +67,21 @@ {"shape":"UnsupportedTLD"} ] }, + "DeleteDomain":{ + "name":"DeleteDomain", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteDomainRequest"}, + "output":{"shape":"DeleteDomainResponse"}, + "errors":[ + {"shape":"InvalidInput"}, + {"shape":"DuplicateRequest"}, + {"shape":"TLDRulesViolation"}, + {"shape":"UnsupportedTLD"} + ] + }, "DeleteTagsForDomain":{ "name":"DeleteTagsForDomain", "http":{ @@ -214,6 +231,19 @@ {"shape":"InvalidInput"} ] }, + "ListPrices":{ + "name":"ListPrices", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListPricesRequest"}, + "output":{"shape":"ListPricesResponse"}, + "errors":[ + {"shape":"InvalidInput"}, + {"shape":"UnsupportedTLD"} + ] + }, "ListTagsForDomain":{ "name":"ListTagsForDomain", "http":{ @@ -255,7 +285,8 @@ "output":{"shape":"RejectDomainTransferFromAnotherAwsAccountResponse"}, "errors":[ {"shape":"InvalidInput"}, - {"shape":"OperationLimitExceeded"} + {"shape":"OperationLimitExceeded"}, + {"shape":"UnsupportedTLD"} ] }, "RenewDomain":{ @@ -329,7 +360,8 @@ "errors":[ {"shape":"InvalidInput"}, {"shape":"OperationLimitExceeded"}, - {"shape":"DuplicateRequest"} + {"shape":"DuplicateRequest"}, + {"shape":"UnsupportedTLD"} ] }, "UpdateDomainContact":{ @@ -427,6 +459,8 @@ }, "AccountId":{ "type":"string", + "max":12, + "min":12, "pattern":"^(\\d{12})$" }, "AddressLine":{ @@ -536,6 +570,7 @@ "CountryCode":{ "type":"string", "enum":[ + "AC", "AD", "AE", "AF", @@ -551,6 +586,7 @@ "AT", "AU", "AW", + "AX", "AZ", "BA", "BB", @@ -565,9 +601,11 @@ "BM", "BN", "BO", + "BQ", "BR", "BS", "BT", + "BV", "BW", "BY", "BZ", @@ -586,6 +624,7 @@ "CR", "CU", "CV", + "CW", "CX", "CY", "CZ", @@ -598,6 +637,7 @@ "EC", "EE", "EG", + "EH", "ER", "ES", "ET", @@ -611,18 +651,23 @@ "GB", "GD", "GE", + "GF", + "GG", "GH", "GI", "GL", "GM", "GN", + "GP", "GQ", "GR", + "GS", "GT", "GU", "GW", "GY", "HK", + "HM", "HN", "HR", "HT", @@ -632,10 +677,12 @@ "IL", "IM", "IN", + "IO", "IQ", "IR", "IS", "IT", + "JE", "JM", "JO", "JP", @@ -674,6 +721,7 @@ "MN", "MO", "MP", + "MQ", "MR", "MS", "MT", @@ -686,6 +734,7 @@ "NA", "NC", "NE", + "NF", "NG", "NI", "NL", @@ -705,10 +754,12 @@ "PM", "PN", "PR", + "PS", "PT", "PW", "PY", "QA", + "RE", "RO", "RS", "RU", @@ -721,18 +772,22 @@ "SG", "SH", "SI", + "SJ", "SK", "SL", "SM", "SN", "SO", "SR", + "SS", "ST", "SV", + "SX", "SY", "SZ", "TC", "TD", + "TF", "TG", "TH", "TJ", @@ -741,6 +796,7 @@ "TM", "TN", "TO", + "TP", "TR", "TT", "TV", @@ -767,8 +823,26 @@ "ZW" ] }, + "Currency":{ + "type":"string", + "max":3, + "min":3 + }, "CurrentExpiryYear":{"type":"integer"}, "DNSSec":{"type":"string"}, + "DeleteDomainRequest":{ + "type":"structure", + "required":["DomainName"], + "members":{ + "DomainName":{"shape":"DomainName"} + } + }, + "DeleteDomainResponse":{ + "type":"structure", + "members":{ + "OperationId":{"shape":"OperationId"} + } + }, "DeleteTagsForDomainRequest":{ "type":"structure", "required":[ @@ -840,6 +914,26 @@ "type":"string", "max":255 }, + "DomainPrice":{ + "type":"structure", + "members":{ + "Name":{"shape":"DomainPriceName"}, + "RegistrationPrice":{"shape":"PriceWithCurrency"}, + "TransferPrice":{"shape":"PriceWithCurrency"}, + "RenewalPrice":{"shape":"PriceWithCurrency"}, + "ChangeOwnershipPrice":{"shape":"PriceWithCurrency"}, + "RestorationPrice":{"shape":"PriceWithCurrency"} + } + }, + "DomainPriceList":{ + "type":"list", + "member":{"shape":"DomainPrice"} + }, + "DomainPriceName":{ + "type":"string", + "max":255, + "min":1 + }, "DomainStatus":{"type":"string"}, "DomainStatusList":{ "type":"list", @@ -965,14 +1059,38 @@ "SG_ID_NUMBER", "VAT_NUMBER", "UK_CONTACT_TYPE", - "UK_COMPANY_NUMBER" + "UK_COMPANY_NUMBER", + "EU_COUNTRY_OF_CITIZENSHIP" ] }, "ExtraParamValue":{ "type":"string", - "max":2048 + "max":2048, + "sensitive":true + }, + "FIAuthKey":{ + "type":"string", + "max":255, + "min":0, + "sensitive":true + }, + "FilterCondition":{ + "type":"structure", + "required":[ + "Name", + "Operator", + "Values" + ], + "members":{ + "Name":{"shape":"ListDomainsAttributeName"}, + "Operator":{"shape":"Operator"}, + "Values":{"shape":"Values"} + } + }, + "FilterConditions":{ + "type":"list", + "member":{"shape":"FilterCondition"} }, - "FIAuthKey":{"type":"string"}, "GetContactReachabilityStatusRequest":{ "type":"structure", "members":{ @@ -1089,9 +1207,18 @@ "type":"string", "max":3 }, + "ListDomainsAttributeName":{ + "type":"string", + "enum":[ + "DomainName", + "Expiry" + ] + }, "ListDomainsRequest":{ "type":"structure", "members":{ + "FilterConditions":{"shape":"FilterConditions"}, + "SortCondition":{"shape":"SortCondition"}, "Marker":{"shape":"PageMarker"}, "MaxItems":{"shape":"PageMaxItems"} } @@ -1120,6 +1247,22 @@ "NextPageMarker":{"shape":"PageMarker"} } }, + "ListPricesRequest":{ + "type":"structure", + "members":{ + "Tld":{"shape":"TldName"}, + "Marker":{"shape":"PageMarker"}, + "MaxItems":{"shape":"PageMaxItems"} + } + }, + "ListPricesResponse":{ + "type":"structure", + "required":["Prices"], + "members":{ + "Prices":{"shape":"DomainPriceList"}, + "NextPageMarker":{"shape":"PageMarker"} + } + }, "ListTagsForDomainRequest":{ "type":"structure", "required":["DomainName"], @@ -1209,6 +1352,14 @@ "INTERNAL_TRANSFER_IN_DOMAIN" ] }, + "Operator":{ + "type":"string", + "enum":[ + "LE", + "GE", + "BEGINS_WITH" + ] + }, "PageMarker":{ "type":"string", "max":4096 @@ -1218,6 +1369,17 @@ "max":100 }, "Price":{"type":"double"}, + "PriceWithCurrency":{ + "type":"structure", + "required":[ + "Price", + "Currency" + ], + "members":{ + "Price":{"shape":"Price"}, + "Currency":{"shape":"Currency"} + } + }, "ReachabilityStatus":{ "type":"string", "enum":[ @@ -1320,6 +1482,24 @@ "AuthCode":{"shape":"DomainAuthCode"} } }, + "SortCondition":{ + "type":"structure", + "required":[ + "Name", + "SortOrder" + ], + "members":{ + "Name":{"shape":"ListDomainsAttributeName"}, + "SortOrder":{"shape":"SortOrder"} + } + }, + "SortOrder":{ + "type":"string", + "enum":[ + "ASC", + "DESC" + ] + }, "State":{ "type":"string", "max":255 @@ -1339,7 +1519,11 @@ "Value":{"shape":"TagValue"} } }, - "TagKey":{"type":"string"}, + "TagKey":{ + "type":"string", + "max":128, + "min":1 + }, "TagKeyList":{ "type":"list", "member":{"shape":"TagKey"} @@ -1348,8 +1532,17 @@ "type":"list", "member":{"shape":"Tag"} }, - "TagValue":{"type":"string"}, + "TagValue":{ + "type":"string", + "max":256, + "min":0 + }, "Timestamp":{"type":"timestamp"}, + "TldName":{ + "type":"string", + "max":255, + "min":1 + }, "TransferDomainRequest":{ "type":"structure", "required":[ @@ -1483,6 +1676,17 @@ "members":{ } }, + "Value":{ + "type":"string", + "max":1024, + "min":1 + }, + "Values":{ + "type":"list", + "member":{"shape":"Value"}, + "max":1, + "min":1 + }, "ViewBillingRequest":{ "type":"structure", "members":{ diff --git a/models/apis/route53domains/2014-05-15/docs-2.json b/models/apis/route53domains/2014-05-15/docs-2.json index f7f4e601db8..24ead73578d 100644 --- a/models/apis/route53domains/2014-05-15/docs-2.json +++ b/models/apis/route53domains/2014-05-15/docs-2.json @@ -2,34 +2,36 @@ "version": "2.0", "service": "<p>Amazon Route 53 API actions let you register domain names and perform related operations.</p>", "operations": { - "AcceptDomainTransferFromAnotherAwsAccount": "<p>Accepts the transfer of a domain from another AWS account to the current AWS account. You initiate a transfer between AWS accounts using <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html\">TransferDomainToAnotherAwsAccount</a>. </p> <p>Use either <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_ListOperations.html\">ListOperations</a> or <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> to determine whether the operation succeeded. <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> provides additional information, for example, <code>Domain Transfer from Aws Account 111122223333 has been cancelled</code>. </p>", - "CancelDomainTransferToAnotherAwsAccount": "<p>Cancels the transfer of a domain from the current AWS account to another AWS account. You initiate a transfer between AWS accounts using <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html\">TransferDomainToAnotherAwsAccount</a>. </p> <important> <p>You must cancel the transfer before the other AWS account accepts the transfer using <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_AcceptDomainTransferFromAnotherAwsAccount.html\">AcceptDomainTransferFromAnotherAwsAccount</a>.</p> </important> <p>Use either <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_ListOperations.html\">ListOperations</a> or <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> to determine whether the operation succeeded. <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> provides additional information, for example, <code>Domain Transfer from Aws Account 111122223333 has been cancelled</code>. </p>", + "AcceptDomainTransferFromAnotherAwsAccount": "<p>Accepts the transfer of a domain from another Amazon Web Services account to the currentAmazon Web Services account. You initiate a transfer between Amazon Web Services accounts using <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html\">TransferDomainToAnotherAwsAccount</a>.</p> <p>If you use the CLI command at <a href=\"https://docs.aws.amazon.com/cli/latest/reference/route53domains/accept-domain-transfer-from-another-aws-account.html\">accept-domain-transfer-from-another-aws-account</a>, use JSON format as input instead of text because otherwise CLI will throw an error from domain transfer input that includes single quotes.</p> <p>Use either <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_ListOperations.html\">ListOperations</a> or <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> to determine whether the operation succeeded. <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> provides additional information, for example, <code>Domain Transfer from Aws Account 111122223333 has been cancelled</code>. </p>", + "CancelDomainTransferToAnotherAwsAccount": "<p>Cancels the transfer of a domain from the current Amazon Web Services account to another Amazon Web Services account. You initiate a transfer betweenAmazon Web Services accounts using <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html\">TransferDomainToAnotherAwsAccount</a>. </p> <important> <p>You must cancel the transfer before the other Amazon Web Services account accepts the transfer using <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_AcceptDomainTransferFromAnotherAwsAccount.html\">AcceptDomainTransferFromAnotherAwsAccount</a>.</p> </important> <p>Use either <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_ListOperations.html\">ListOperations</a> or <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> to determine whether the operation succeeded. <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> provides additional information, for example, <code>Domain Transfer from Aws Account 111122223333 has been cancelled</code>. </p>", "CheckDomainAvailability": "<p>This operation checks the availability of one domain name. Note that if the availability status of a domain is pending, you must submit another request to determine the availability of the domain name.</p>", "CheckDomainTransferability": "<p>Checks whether a domain name can be transferred to Amazon Route 53. </p>", + "DeleteDomain": "<p>This operation deletes the specified domain. This action is permanent. For more information, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/domain-delete.html\">Deleting a domain name registration</a>.</p> <p>To transfer the domain registration to another registrar, use the transfer process that’s provided by the registrar to which you want to transfer the registration. Otherwise, the following apply:</p> <ol> <li> <p>You can’t get a refund for the cost of a deleted domain registration.</p> </li> <li> <p>The registry for the top-level domain might hold the domain name for a brief time before releasing it for other users to register (varies by registry). </p> </li> <li> <p>When the registration has been deleted, we'll send you a confirmation to the registrant contact. The email will come from <code>noreply@domainnameverification.net</code> or <code>noreply@registrar.amazon.com</code>.</p> </li> </ol>", "DeleteTagsForDomain": "<p>This operation deletes the specified tags for a domain.</p> <p>All tag operations are eventually consistent; subsequent operations might not immediately represent all issued operations.</p>", "DisableDomainAutoRenew": "<p>This operation disables automatic renewal of domain registration for the specified domain.</p>", "DisableDomainTransferLock": "<p>This operation removes the transfer lock on the domain (specifically the <code>clientTransferProhibited</code> status) to allow domain transfers. We recommend you refrain from performing this action unless you intend to transfer the domain to a different registrar. Successful submission returns an operation ID that you can use to track the progress and completion of the action. If the request is not completed successfully, the domain registrant will be notified by email.</p>", - "EnableDomainAutoRenew": "<p>This operation configures Amazon Route 53 to automatically renew the specified domain before the domain registration expires. The cost of renewing your domain registration is billed to your AWS account.</p> <p>The period during which you can renew a domain name varies by TLD. For a list of TLDs and their renewal policies, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar-tld-list.html\">Domains That You Can Register with Amazon Route 53</a> in the <i>Amazon Route 53 Developer Guide</i>. Route 53 requires that you renew before the end of the renewal period so we can complete processing before the deadline.</p>", + "EnableDomainAutoRenew": "<p>This operation configures Amazon Route 53 to automatically renew the specified domain before the domain registration expires. The cost of renewing your domain registration is billed to your Amazon Web Services account.</p> <p>The period during which you can renew a domain name varies by TLD. For a list of TLDs and their renewal policies, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar-tld-list.html\">Domains That You Can Register with Amazon Route 53</a> in the <i>Amazon Route 53 Developer Guide</i>. Route 53 requires that you renew before the end of the renewal period so we can complete processing before the deadline.</p>", "EnableDomainTransferLock": "<p>This operation sets the transfer lock on the domain (specifically the <code>clientTransferProhibited</code> status) to prevent domain transfers. Successful submission returns an operation ID that you can use to track the progress and completion of the action. If the request is not completed successfully, the domain registrant will be notified by email.</p>", "GetContactReachabilityStatus": "<p>For operations that require confirmation that the email address for the registrant contact is valid, such as registering a new domain, this operation returns information about whether the registrant contact has responded.</p> <p>If you want us to resend the email, use the <code>ResendContactReachabilityEmail</code> operation.</p>", - "GetDomainDetail": "<p>This operation returns detailed information about a specified domain that is associated with the current AWS account. Contact information for the domain is also returned as part of the output.</p>", + "GetDomainDetail": "<p>This operation returns detailed information about a specified domain that is associated with the current Amazon Web Services account. Contact information for the domain is also returned as part of the output.</p>", "GetDomainSuggestions": "<p>The GetDomainSuggestions operation returns a list of suggested domain names.</p>", "GetOperationDetail": "<p>This operation returns the current status of an operation that is not completed.</p>", - "ListDomains": "<p>This operation returns all the domain names registered with Amazon Route 53 for the current AWS account.</p>", - "ListOperations": "<p>Returns information about all of the operations that return an operation ID and that have ever been performed on domains that were registered by the current account. </p>", + "ListDomains": "<p>This operation returns all the domain names registered with Amazon Route 53 for the current Amazon Web Services account if no filtering conditions are used.</p>", + "ListOperations": "<p>Returns information about all of the operations that return an operation ID and that have ever been performed on domains that were registered by the current account. </p> <p>This command runs only in the us-east-1 Region.</p>", + "ListPrices": "<p>Lists the following prices for either all the TLDs supported by Route 53, or the specified TLD:</p> <ul> <li> <p>Registration</p> </li> <li> <p>Transfer</p> </li> <li> <p>Owner change</p> </li> <li> <p>Domain renewal</p> </li> <li> <p>Domain restoration</p> </li> </ul>", "ListTagsForDomain": "<p>This operation returns all of the tags that are associated with the specified domain.</p> <p>All tag operations are eventually consistent; subsequent operations might not immediately represent all issued operations.</p>", - "RegisterDomain": "<p>This operation registers a domain. Domains are registered either by Amazon Registrar (for .com, .net, and .org domains) or by our registrar associate, Gandi (for all other domains). For some top-level domains (TLDs), this operation requires extra parameters.</p> <p>When you register a domain, Amazon Route 53 does the following:</p> <ul> <li> <p>Creates a Route 53 hosted zone that has the same name as the domain. Route 53 assigns four name servers to your hosted zone and automatically updates your domain registration with the names of these name servers.</p> </li> <li> <p>Enables autorenew, so your domain registration will renew automatically each year. We'll notify you in advance of the renewal date so you can choose whether to renew the registration.</p> </li> <li> <p>Optionally enables privacy protection, so WHOIS queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you don't enable privacy protection, WHOIS queries return the information that you entered for the registrant, admin, and tech contacts.</p> </li> <li> <p>If registration is successful, returns an operation ID that you can use to track the progress and completion of the action. If the request is not completed successfully, the domain registrant is notified by email.</p> </li> <li> <p>Charges your AWS account an amount based on the top-level domain. For more information, see <a href=\"http://aws.amazon.com/route53/pricing/\">Amazon Route 53 Pricing</a>.</p> </li> </ul>", - "RejectDomainTransferFromAnotherAwsAccount": "<p>Rejects the transfer of a domain from another AWS account to the current AWS account. You initiate a transfer between AWS accounts using <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html\">TransferDomainToAnotherAwsAccount</a>. </p> <p>Use either <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_ListOperations.html\">ListOperations</a> or <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> to determine whether the operation succeeded. <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> provides additional information, for example, <code>Domain Transfer from Aws Account 111122223333 has been cancelled</code>. </p>", - "RenewDomain": "<p>This operation renews a domain for the specified number of years. The cost of renewing your domain is billed to your AWS account.</p> <p>We recommend that you renew your domain several weeks before the expiration date. Some TLD registries delete domains before the expiration date if you haven't renewed far enough in advance. For more information about renewing domain registration, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/domain-renew.html\">Renewing Registration for a Domain</a> in the <i>Amazon Route 53 Developer Guide</i>.</p>", + "RegisterDomain": "<p>This operation registers a domain. Domains are registered either by Amazon Registrar (for .com, .net, and .org domains) or by our registrar associate, Gandi (for all other domains). For some top-level domains (TLDs), this operation requires extra parameters.</p> <p>When you register a domain, Amazon Route 53 does the following:</p> <ul> <li> <p>Creates a Route 53 hosted zone that has the same name as the domain. Route 53 assigns four name servers to your hosted zone and automatically updates your domain registration with the names of these name servers.</p> </li> <li> <p>Enables autorenew, so your domain registration will renew automatically each year. We'll notify you in advance of the renewal date so you can choose whether to renew the registration.</p> </li> <li> <p>Optionally enables privacy protection, so WHOIS queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you don't enable privacy protection, WHOIS queries return the information that you entered for the administrative, registrant, and technical contacts.</p> <note> <p>You must specify the same privacy setting for the administrative, registrant, and technical contacts.</p> </note> </li> <li> <p>If registration is successful, returns an operation ID that you can use to track the progress and completion of the action. If the request is not completed successfully, the domain registrant is notified by email.</p> </li> <li> <p>Charges your Amazon Web Services account an amount based on the top-level domain. For more information, see <a href=\"http://aws.amazon.com/route53/pricing/\">Amazon Route 53 Pricing</a>.</p> </li> </ul>", + "RejectDomainTransferFromAnotherAwsAccount": "<p>Rejects the transfer of a domain from another Amazon Web Services account to the current Amazon Web Services account. You initiate a transfer betweenAmazon Web Services accounts using <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html\">TransferDomainToAnotherAwsAccount</a>. </p> <p>Use either <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_ListOperations.html\">ListOperations</a> or <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> to determine whether the operation succeeded. <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> provides additional information, for example, <code>Domain Transfer from Aws Account 111122223333 has been cancelled</code>. </p>", + "RenewDomain": "<p>This operation renews a domain for the specified number of years. The cost of renewing your domain is billed to your Amazon Web Services account.</p> <p>We recommend that you renew your domain several weeks before the expiration date. Some TLD registries delete domains before the expiration date if you haven't renewed far enough in advance. For more information about renewing domain registration, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/domain-renew.html\">Renewing Registration for a Domain</a> in the <i>Amazon Route 53 Developer Guide</i>.</p>", "ResendContactReachabilityEmail": "<p>For operations that require confirmation that the email address for the registrant contact is valid, such as registering a new domain, this operation resends the confirmation email to the current email address for the registrant contact.</p>", "RetrieveDomainAuthCode": "<p>This operation returns the AuthCode for the domain. To transfer a domain to another registrar, you provide this value to the new registrar.</p>", - "TransferDomain": "<p>Transfers a domain from another registrar to Amazon Route 53. When the transfer is complete, the domain is registered either with Amazon Registrar (for .com, .net, and .org domains) or with our registrar associate, Gandi (for all other TLDs).</p> <p>For more information about transferring domains, see the following topics:</p> <ul> <li> <p>For transfer requirements, a detailed procedure, and information about viewing the status of a domain that you're transferring to Route 53, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/domain-transfer-to-route-53.html\">Transferring Registration for a Domain to Amazon Route 53</a> in the <i>Amazon Route 53 Developer Guide</i>.</p> </li> <li> <p>For information about how to transfer a domain from one AWS account to another, see <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html\">TransferDomainToAnotherAwsAccount</a>. </p> </li> <li> <p>For information about how to transfer a domain to another domain registrar, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/domain-transfer-from-route-53.html\">Transferring a Domain from Amazon Route 53 to Another Registrar</a> in the <i>Amazon Route 53 Developer Guide</i>.</p> </li> </ul> <p>If the registrar for your domain is also the DNS service provider for the domain, we highly recommend that you transfer your DNS service to Route 53 or to another DNS service provider before you transfer your registration. Some registrars provide free DNS service when you purchase a domain registration. When you transfer the registration, the previous registrar will not renew your domain registration and could end your DNS service at any time.</p> <important> <p>If the registrar for your domain is also the DNS service provider for the domain and you don't transfer DNS service to another provider, your website, email, and the web applications associated with the domain might become unavailable.</p> </important> <p>If the transfer is successful, this method returns an operation ID that you can use to track the progress and completion of the action. If the transfer doesn't complete successfully, the domain registrant will be notified by email.</p>", - "TransferDomainToAnotherAwsAccount": "<p>Transfers a domain from the current AWS account to another AWS account. Note the following:</p> <ul> <li> <p>The AWS account that you're transferring the domain to must accept the transfer. If the other account doesn't accept the transfer within 3 days, we cancel the transfer. See <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_AcceptDomainTransferFromAnotherAwsAccount.html\">AcceptDomainTransferFromAnotherAwsAccount</a>. </p> </li> <li> <p>You can cancel the transfer before the other account accepts it. See <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_CancelDomainTransferToAnotherAwsAccount.html\">CancelDomainTransferToAnotherAwsAccount</a>. </p> </li> <li> <p>The other account can reject the transfer. See <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_RejectDomainTransferFromAnotherAwsAccount.html\">RejectDomainTransferFromAnotherAwsAccount</a>. </p> </li> </ul> <important> <p>When you transfer a domain from one AWS account to another, Route 53 doesn't transfer the hosted zone that is associated with the domain. DNS resolution isn't affected if the domain and the hosted zone are owned by separate accounts, so transferring the hosted zone is optional. For information about transferring the hosted zone to another AWS account, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zones-migrating.html\">Migrating a Hosted Zone to a Different AWS Account</a> in the <i>Amazon Route 53 Developer Guide</i>.</p> </important> <p>Use either <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_ListOperations.html\">ListOperations</a> or <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> to determine whether the operation succeeded. <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> provides additional information, for example, <code>Domain Transfer from Aws Account 111122223333 has been cancelled</code>. </p>", + "TransferDomain": "<p>Transfers a domain from another registrar to Amazon Route 53. When the transfer is complete, the domain is registered either with Amazon Registrar (for .com, .net, and .org domains) or with our registrar associate, Gandi (for all other TLDs).</p> <p>For more information about transferring domains, see the following topics:</p> <ul> <li> <p>For transfer requirements, a detailed procedure, and information about viewing the status of a domain that you're transferring to Route 53, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/domain-transfer-to-route-53.html\">Transferring Registration for a Domain to Amazon Route 53</a> in the <i>Amazon Route 53 Developer Guide</i>.</p> </li> <li> <p>For information about how to transfer a domain from one Amazon Web Services account to another, see <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html\">TransferDomainToAnotherAwsAccount</a>. </p> </li> <li> <p>For information about how to transfer a domain to another domain registrar, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/domain-transfer-from-route-53.html\">Transferring a Domain from Amazon Route 53 to Another Registrar</a> in the <i>Amazon Route 53 Developer Guide</i>.</p> </li> </ul> <p>If the registrar for your domain is also the DNS service provider for the domain, we highly recommend that you transfer your DNS service to Route 53 or to another DNS service provider before you transfer your registration. Some registrars provide free DNS service when you purchase a domain registration. When you transfer the registration, the previous registrar will not renew your domain registration and could end your DNS service at any time.</p> <important> <p>If the registrar for your domain is also the DNS service provider for the domain and you don't transfer DNS service to another provider, your website, email, and the web applications associated with the domain might become unavailable.</p> </important> <p>If the transfer is successful, this method returns an operation ID that you can use to track the progress and completion of the action. If the transfer doesn't complete successfully, the domain registrant will be notified by email.</p>", + "TransferDomainToAnotherAwsAccount": "<p>Transfers a domain from the current Amazon Web Services account to another Amazon Web Services account. Note the following:</p> <ul> <li> <p>The Amazon Web Services account that you're transferring the domain to must accept the transfer. If the other account doesn't accept the transfer within 3 days, we cancel the transfer. See <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_AcceptDomainTransferFromAnotherAwsAccount.html\">AcceptDomainTransferFromAnotherAwsAccount</a>. </p> </li> <li> <p>You can cancel the transfer before the other account accepts it. See <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_CancelDomainTransferToAnotherAwsAccount.html\">CancelDomainTransferToAnotherAwsAccount</a>. </p> </li> <li> <p>The other account can reject the transfer. See <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_RejectDomainTransferFromAnotherAwsAccount.html\">RejectDomainTransferFromAnotherAwsAccount</a>. </p> </li> </ul> <important> <p>When you transfer a domain from one Amazon Web Services account to another, Route 53 doesn't transfer the hosted zone that is associated with the domain. DNS resolution isn't affected if the domain and the hosted zone are owned by separate accounts, so transferring the hosted zone is optional. For information about transferring the hosted zone to another Amazon Web Services account, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zones-migrating.html\">Migrating a Hosted Zone to a Different Amazon Web Services Account</a> in the <i>Amazon Route 53 Developer Guide</i>.</p> </important> <p>Use either <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_ListOperations.html\">ListOperations</a> or <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> to determine whether the operation succeeded. <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> provides additional information, for example, <code>Domain Transfer from Aws Account 111122223333 has been cancelled</code>. </p>", "UpdateDomainContact": "<p>This operation updates the contact information for a particular domain. You must specify information for at least one contact: registrant, administrator, or technical.</p> <p>If the update is successful, this method returns an operation ID that you can use to track the progress and completion of the action. If the request is not completed successfully, the domain registrant will be notified by email.</p>", - "UpdateDomainContactPrivacy": "<p>This operation updates the specified domain contact's privacy setting. When privacy protection is enabled, contact information such as email address is replaced either with contact information for Amazon Registrar (for .com, .net, and .org domains) or with contact information for our registrar associate, Gandi.</p> <p>This operation affects only the contact information for the specified contact type (registrant, administrator, or tech). If the request succeeds, Amazon Route 53 returns an operation ID that you can use with <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> to track the progress and completion of the action. If the request doesn't complete successfully, the domain registrant will be notified by email.</p> <important> <p>By disabling the privacy service via API, you consent to the publication of the contact information provided for this domain via the public WHOIS database. You certify that you are the registrant of this domain name and have the authority to make this decision. You may withdraw your consent at any time by enabling privacy protection using either <code>UpdateDomainContactPrivacy</code> or the Route 53 console. Enabling privacy protection removes the contact information provided for this domain from the WHOIS database. For more information on our privacy practices, see <a href=\"https://aws.amazon.com/privacy/\">https://aws.amazon.com/privacy/</a>.</p> </important>", + "UpdateDomainContactPrivacy": "<p>This operation updates the specified domain contact's privacy setting. When privacy protection is enabled, contact information such as email address is replaced either with contact information for Amazon Registrar (for .com, .net, and .org domains) or with contact information for our registrar associate, Gandi.</p> <note> <p>You must specify the same privacy setting for the administrative, registrant, and technical contacts.</p> </note> <p>This operation affects only the contact information for the specified contact type (administrative, registrant, or technical). If the request succeeds, Amazon Route 53 returns an operation ID that you can use with <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a> to track the progress and completion of the action. If the request doesn't complete successfully, the domain registrant will be notified by email.</p> <important> <p>By disabling the privacy service via API, you consent to the publication of the contact information provided for this domain via the public WHOIS database. You certify that you are the registrant of this domain name and have the authority to make this decision. You may withdraw your consent at any time by enabling privacy protection using either <code>UpdateDomainContactPrivacy</code> or the Route 53 console. Enabling privacy protection removes the contact information provided for this domain from the WHOIS database. For more information on our privacy practices, see <a href=\"https://aws.amazon.com/privacy/\">https://aws.amazon.com/privacy/</a>.</p> </important>", "UpdateDomainNameservers": "<p>This operation replaces the current set of name servers for the domain with the specified set of name servers. If you use Amazon Route 53 as your DNS service, specify the four name servers in the delegation set for the hosted zone for the domain.</p> <p>If successful, this operation returns an operation ID that you can use to track the progress and completion of the action. If the request is not completed successfully, the domain registrant will be notified by email.</p>", "UpdateTagsForDomain": "<p>This operation adds or updates tags for a specified domain.</p> <p>All tag operations are eventually consistent; subsequent operations might not immediately represent all issued operations.</p>", - "ViewBilling": "<p>Returns all the domain-related billing records for the current AWS account for a specified period</p>" + "ViewBilling": "<p>Returns all the domain-related billing records for the current Amazon Web Services account for a specified period</p>" }, "shapes": { "AcceptDomainTransferFromAnotherAwsAccountRequest": { @@ -45,7 +47,7 @@ "AccountId": { "base": null, "refs": { - "TransferDomainToAnotherAwsAccountRequest$AccountId": "<p>The account ID of the AWS account that you want to transfer the domain to, for example, <code>111122223333</code>.</p>" + "TransferDomainToAnotherAwsAccountRequest$AccountId": "<p>The account ID of the Amazon Web Services account that you want to transfer the domain to, for example, <code>111122223333</code>.</p>" } }, "AddressLine": { @@ -78,17 +80,17 @@ "GetDomainDetailResponse$TechPrivacy": "<p>Specifies whether contact information is concealed from WHOIS queries. If the value is <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If the value is <code>false</code>, WHOIS queries return the information that you entered for the technical contact.</p>", "GetDomainSuggestionsRequest$OnlyAvailable": "<p>If <code>OnlyAvailable</code> is <code>true</code>, Route 53 returns only domain names that are available. If <code>OnlyAvailable</code> is <code>false</code>, Route 53 returns domain names without checking whether they're available to be registered. To determine whether the domain is available, you can call <code>checkDomainAvailability</code> for each suggestion.</p>", "RegisterDomainRequest$AutoRenew": "<p>Indicates whether the domain will be automatically renewed (<code>true</code>) or not (<code>false</code>). Autorenewal only takes effect after the account is charged.</p> <p>Default: <code>true</code> </p>", - "RegisterDomainRequest$PrivacyProtectAdminContact": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the admin contact.</p> <p>Default: <code>true</code> </p>", - "RegisterDomainRequest$PrivacyProtectRegistrantContact": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the registrant contact (the domain owner).</p> <p>Default: <code>true</code> </p>", - "RegisterDomainRequest$PrivacyProtectTechContact": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the technical contact.</p> <p>Default: <code>true</code> </p>", + "RegisterDomainRequest$PrivacyProtectAdminContact": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the admin contact.</p> <note> <p>You must specify the same privacy setting for the administrative, registrant, and technical contacts.</p> </note> <p>Default: <code>true</code> </p>", + "RegisterDomainRequest$PrivacyProtectRegistrantContact": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the registrant contact (the domain owner).</p> <note> <p>You must specify the same privacy setting for the administrative, registrant, and technical contacts.</p> </note> <p>Default: <code>true</code> </p>", + "RegisterDomainRequest$PrivacyProtectTechContact": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the technical contact.</p> <note> <p>You must specify the same privacy setting for the administrative, registrant, and technical contacts.</p> </note> <p>Default: <code>true</code> </p>", "ResendContactReachabilityEmailResponse$isAlreadyVerified": "<p> <code>True</code> if the email address for the registrant contact has already been verified, and <code>false</code> otherwise. If the email address has already been verified, we don't send another confirmation email.</p>", "TransferDomainRequest$AutoRenew": "<p>Indicates whether the domain will be automatically renewed (true) or not (false). Autorenewal only takes effect after the account is charged.</p> <p>Default: true</p>", - "TransferDomainRequest$PrivacyProtectAdminContact": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the admin contact.</p> <p>Default: <code>true</code> </p>", - "TransferDomainRequest$PrivacyProtectRegistrantContact": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the registrant contact (domain owner).</p> <p>Default: <code>true</code> </p>", - "TransferDomainRequest$PrivacyProtectTechContact": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the technical contact.</p> <p>Default: <code>true</code> </p>", - "UpdateDomainContactPrivacyRequest$AdminPrivacy": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the admin contact.</p>", - "UpdateDomainContactPrivacyRequest$RegistrantPrivacy": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the registrant contact (domain owner).</p>", - "UpdateDomainContactPrivacyRequest$TechPrivacy": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the technical contact.</p>" + "TransferDomainRequest$PrivacyProtectAdminContact": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the admin contact.</p> <note> <p>You must specify the same privacy setting for the administrative, registrant, and technical contacts.</p> </note> <p>Default: <code>true</code> </p>", + "TransferDomainRequest$PrivacyProtectRegistrantContact": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the registrant contact (domain owner).</p> <note> <p>You must specify the same privacy setting for the administrative, registrant, and technical contacts.</p> </note> <p>Default: <code>true</code> </p>", + "TransferDomainRequest$PrivacyProtectTechContact": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the technical contact.</p> <note> <p>You must specify the same privacy setting for the administrative, registrant, and technical contacts.</p> </note> <p>Default: <code>true</code> </p>", + "UpdateDomainContactPrivacyRequest$AdminPrivacy": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the admin contact.</p> <note> <p>You must specify the same privacy setting for the administrative, registrant, and technical contacts.</p> </note>", + "UpdateDomainContactPrivacyRequest$RegistrantPrivacy": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the registrant contact (domain owner).</p> <note> <p>You must specify the same privacy setting for the administrative, registrant, and technical contacts.</p> </note>", + "UpdateDomainContactPrivacyRequest$TechPrivacy": "<p>Whether you want to conceal contact information from WHOIS queries. If you specify <code>true</code>, WHOIS (\"who is\") queries return contact information either for Amazon Registrar (for .com, .net, and .org domains) or for our registrar associate, Gandi (for all other TLDs). If you specify <code>false</code>, WHOIS queries return the information that you entered for the technical contact.</p> <note> <p>You must specify the same privacy setting for the administrative, registrant, and technical contacts.</p> </note>" } }, "CancelDomainTransferToAnotherAwsAccountRequest": { @@ -163,7 +165,7 @@ "ContactType": { "base": null, "refs": { - "ContactDetail$ContactType": "<p>Indicates whether the contact is a person, company, association, or public organization. Note the following:</p> <ul> <li> <p>If you specify a value other than <code>PERSON</code>, you must also specify a value for <code>OrganizationName</code>.</p> </li> <li> <p>For some TLDs, the privacy protection available depends on the value that you specify for <code>Contact Type</code>. For the privacy protection settings for your TLD, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar-tld-list.html\">Domains that You Can Register with Amazon Route 53</a> in the <i>Amazon Route 53 Developer Guide</i> </p> </li> <li> <p>For .es domains, if you specify <code>PERSON</code>, you must specify <code>INDIVIDUAL</code> for the value of <code>ES_LEGAL_FORM</code>.</p> </li> </ul>" + "ContactDetail$ContactType": "<p>Indicates whether the contact is a person, company, association, or public organization. Note the following:</p> <ul> <li> <p>If you specify a value other than <code>PERSON</code>, you must also specify a value for <code>OrganizationName</code>.</p> </li> <li> <p>For some TLDs, the privacy protection available depends on the value that you specify for <code>Contact Type</code>. For the privacy protection settings for your TLD, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar-tld-list.html\">Domains that You Can Register with Amazon Route 53</a> in the <i>Amazon Route 53 Developer Guide</i> </p> </li> <li> <p>For .es domains, the value of <code>ContactType</code> must be <code>PERSON</code> for all three contacts.</p> </li> </ul>" } }, "CountryCode": { @@ -172,6 +174,12 @@ "ContactDetail$CountryCode": "<p>Code for the country of the contact's address.</p>" } }, + "Currency": { + "base": null, + "refs": { + "PriceWithCurrency$Currency": "<p>The currency specifier.</p>" + } + }, "CurrentExpiryYear": { "base": null, "refs": { @@ -181,7 +189,17 @@ "DNSSec": { "base": null, "refs": { - "GetDomainDetailResponse$DnsSec": "<p>Reserved for future use.</p>" + "GetDomainDetailResponse$DnsSec": "<p>Deprecated.</p>" + } + }, + "DeleteDomainRequest": { + "base": null, + "refs": { + } + }, + "DeleteDomainResponse": { + "base": null, + "refs": { } }, "DeleteTagsForDomainRequest": { @@ -236,11 +254,12 @@ "DomainName": { "base": null, "refs": { - "AcceptDomainTransferFromAnotherAwsAccountRequest$DomainName": "<p>The name of the domain that was specified when another AWS account submitted a <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html\">TransferDomainToAnotherAwsAccount</a> request. </p>", + "AcceptDomainTransferFromAnotherAwsAccountRequest$DomainName": "<p>The name of the domain that was specified when another Amazon Web Services account submitted a <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html\">TransferDomainToAnotherAwsAccount</a> request. </p>", "BillingRecord$DomainName": "<p>The name of the domain that the billing record applies to. If the domain name contains characters other than a-z, 0-9, and - (hyphen), such as an internationalized domain name, then this value is in Punycode. For more information, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DomainNameFormat.html\">DNS Domain Name Format</a> in the <i>Amazon Route 53 Developer Guide</i>.</p>", - "CancelDomainTransferToAnotherAwsAccountRequest$DomainName": "<p>The name of the domain for which you want to cancel the transfer to another AWS account.</p>", + "CancelDomainTransferToAnotherAwsAccountRequest$DomainName": "<p>The name of the domain for which you want to cancel the transfer to another Amazon Web Services account.</p>", "CheckDomainAvailabilityRequest$DomainName": "<p>The name of the domain that you want to get availability for. The top-level domain (TLD), such as .com, must be a TLD that Route 53 supports. For a list of supported TLDs, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar-tld-list.html\">Domains that You Can Register with Amazon Route 53</a> in the <i>Amazon Route 53 Developer Guide</i>.</p> <p>The domain name can contain only the following characters:</p> <ul> <li> <p>Letters a through z. Domain names are not case sensitive.</p> </li> <li> <p>Numbers 0 through 9.</p> </li> <li> <p>Hyphen (-). You can't specify a hyphen at the beginning or end of a label. </p> </li> <li> <p>Period (.) to separate the labels in the name, such as the <code>.</code> in <code>example.com</code>.</p> </li> </ul> <p>Internationalized domain names are not supported for some top-level domains. To determine whether the TLD that you want to use supports internationalized domain names, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar-tld-list.html\">Domains that You Can Register with Amazon Route 53</a>. For more information, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DomainNameFormat.html#domain-name-format-idns\">Formatting Internationalized Domain Names</a>. </p>", "CheckDomainTransferabilityRequest$DomainName": "<p>The name of the domain that you want to transfer to Route 53. The top-level domain (TLD), such as .com, must be a TLD that Route 53 supports. For a list of supported TLDs, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar-tld-list.html\">Domains that You Can Register with Amazon Route 53</a> in the <i>Amazon Route 53 Developer Guide</i>.</p> <p>The domain name can contain only the following characters:</p> <ul> <li> <p>Letters a through z. Domain names are not case sensitive.</p> </li> <li> <p>Numbers 0 through 9.</p> </li> <li> <p>Hyphen (-). You can't specify a hyphen at the beginning or end of a label. </p> </li> <li> <p>Period (.) to separate the labels in the name, such as the <code>.</code> in <code>example.com</code>.</p> </li> </ul>", + "DeleteDomainRequest$DomainName": "<p>Name of the domain to be deleted.</p>", "DeleteTagsForDomainRequest$DomainName": "<p>The domain for which you want to delete one or more tags.</p>", "DisableDomainAutoRenewRequest$DomainName": "<p>The name of the domain that you want to disable automatic renewal for.</p>", "DisableDomainTransferLockRequest$DomainName": "<p>The name of the domain that you want to remove the transfer lock for.</p>", @@ -256,19 +275,37 @@ "GetOperationDetailResponse$DomainName": "<p>The name of a domain.</p>", "ListTagsForDomainRequest$DomainName": "<p>The domain for which you want to get a list of tags.</p>", "RegisterDomainRequest$DomainName": "<p>The domain name that you want to register. The top-level domain (TLD), such as .com, must be a TLD that Route 53 supports. For a list of supported TLDs, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar-tld-list.html\">Domains that You Can Register with Amazon Route 53</a> in the <i>Amazon Route 53 Developer Guide</i>.</p> <p>The domain name can contain only the following characters:</p> <ul> <li> <p>Letters a through z. Domain names are not case sensitive.</p> </li> <li> <p>Numbers 0 through 9.</p> </li> <li> <p>Hyphen (-). You can't specify a hyphen at the beginning or end of a label. </p> </li> <li> <p>Period (.) to separate the labels in the name, such as the <code>.</code> in <code>example.com</code>.</p> </li> </ul> <p>Internationalized domain names are not supported for some top-level domains. To determine whether the TLD that you want to use supports internationalized domain names, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar-tld-list.html\">Domains that You Can Register with Amazon Route 53</a>. For more information, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DomainNameFormat.html#domain-name-format-idns\">Formatting Internationalized Domain Names</a>. </p>", - "RejectDomainTransferFromAnotherAwsAccountRequest$DomainName": "<p>The name of the domain that was specified when another AWS account submitted a <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html\">TransferDomainToAnotherAwsAccount</a> request. </p>", + "RejectDomainTransferFromAnotherAwsAccountRequest$DomainName": "<p>The name of the domain that was specified when another Amazon Web Services account submitted a <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html\">TransferDomainToAnotherAwsAccount</a> request. </p>", "RenewDomainRequest$DomainName": "<p>The name of the domain that you want to renew.</p>", "ResendContactReachabilityEmailRequest$domainName": "<p>The name of the domain for which you want Route 53 to resend a confirmation email to the registrant contact.</p>", "ResendContactReachabilityEmailResponse$domainName": "<p>The domain name for which you requested a confirmation email.</p>", "RetrieveDomainAuthCodeRequest$DomainName": "<p>The name of the domain that you want to get an authorization code for.</p>", "TransferDomainRequest$DomainName": "<p>The name of the domain that you want to transfer to Route 53. The top-level domain (TLD), such as .com, must be a TLD that Route 53 supports. For a list of supported TLDs, see <a href=\"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar-tld-list.html\">Domains that You Can Register with Amazon Route 53</a> in the <i>Amazon Route 53 Developer Guide</i>.</p> <p>The domain name can contain only the following characters:</p> <ul> <li> <p>Letters a through z. Domain names are not case sensitive.</p> </li> <li> <p>Numbers 0 through 9.</p> </li> <li> <p>Hyphen (-). You can't specify a hyphen at the beginning or end of a label. </p> </li> <li> <p>Period (.) to separate the labels in the name, such as the <code>.</code> in <code>example.com</code>.</p> </li> </ul>", - "TransferDomainToAnotherAwsAccountRequest$DomainName": "<p>The name of the domain that you want to transfer from the current AWS account to another account.</p>", + "TransferDomainToAnotherAwsAccountRequest$DomainName": "<p>The name of the domain that you want to transfer from the current Amazon Web Services account to another account.</p>", "UpdateDomainContactPrivacyRequest$DomainName": "<p>The name of the domain that you want to update the privacy setting for.</p>", "UpdateDomainContactRequest$DomainName": "<p>The name of the domain that you want to update contact information for.</p>", "UpdateDomainNameserversRequest$DomainName": "<p>The name of the domain that you want to change name servers for.</p>", "UpdateTagsForDomainRequest$DomainName": "<p>The domain for which you want to add or update tags.</p>" } }, + "DomainPrice": { + "base": "<p>Information about the domain price associated with a TLD.</p>", + "refs": { + "DomainPriceList$member": null + } + }, + "DomainPriceList": { + "base": null, + "refs": { + "ListPricesResponse$Prices": "<p>A complex type that includes all the pricing information. If you specify a TLD, this array contains only the pricing for that TLD.</p>" + } + }, + "DomainPriceName": { + "base": null, + "refs": { + "DomainPrice$Name": "<p>The name of the TLD for which the prices apply.</p>" + } + }, "DomainStatus": { "base": null, "refs": { @@ -302,7 +339,7 @@ "DomainSummaryList": { "base": null, "refs": { - "ListDomainsResponse$Domains": "<p>A summary of domains.</p>" + "ListDomainsResponse$Domains": "<p>A list of domains.</p>" } }, "DomainTransferability": { @@ -379,7 +416,7 @@ "ExtraParamName": { "base": null, "refs": { - "ExtraParam$Name": "<p>The name of an additional parameter that is required by a top-level domain. Here are the top-level domains that require additional parameters and the names of the parameters that they require:</p> <dl> <dt>.com.au and .net.au</dt> <dd> <ul> <li> <p> <code>AU_ID_NUMBER</code> </p> </li> <li> <p> <code>AU_ID_TYPE</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>ABN</code> (Australian business number)</p> </li> <li> <p> <code>ACN</code> (Australian company number)</p> </li> <li> <p> <code>TM</code> (Trademark number)</p> </li> </ul> </li> </ul> </dd> <dt>.ca</dt> <dd> <ul> <li> <p> <code>BRAND_NUMBER</code> </p> </li> <li> <p> <code>CA_BUSINESS_ENTITY_TYPE</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>BANK</code> (Bank)</p> </li> <li> <p> <code>COMMERCIAL_COMPANY</code> (Commercial company)</p> </li> <li> <p> <code>COMPANY</code> (Company)</p> </li> <li> <p> <code>COOPERATION</code> (Cooperation)</p> </li> <li> <p> <code>COOPERATIVE</code> (Cooperative)</p> </li> <li> <p> <code>COOPRIX</code> (Cooprix)</p> </li> <li> <p> <code>CORP</code> (Corporation)</p> </li> <li> <p> <code>CREDIT_UNION</code> (Credit union)</p> </li> <li> <p> <code>FOMIA</code> (Federation of mutual insurance associations)</p> </li> <li> <p> <code>INC</code> (Incorporated)</p> </li> <li> <p> <code>LTD</code> (Limited)</p> </li> <li> <p> <code>LTEE</code> (Limitée)</p> </li> <li> <p> <code>LLC</code> (Limited liability corporation)</p> </li> <li> <p> <code>LLP</code> (Limited liability partnership)</p> </li> <li> <p> <code>LTE</code> (Lte.)</p> </li> <li> <p> <code>MBA</code> (Mutual benefit association)</p> </li> <li> <p> <code>MIC</code> (Mutual insurance company)</p> </li> <li> <p> <code>NFP</code> (Not-for-profit corporation)</p> </li> <li> <p> <code>SA</code> (S.A.)</p> </li> <li> <p> <code>SAVINGS_COMPANY</code> (Savings company)</p> </li> <li> <p> <code>SAVINGS_UNION</code> (Savings union)</p> </li> <li> <p> <code>SARL</code> (Société à responsabilité limitée)</p> </li> <li> <p> <code>TRUST</code> (Trust)</p> </li> <li> <p> <code>ULC</code> (Unlimited liability corporation)</p> </li> </ul> </li> <li> <p> <code>CA_LEGAL_TYPE</code> </p> <p>When <code>ContactType</code> is <code>PERSON</code>, valid values include the following:</p> <ul> <li> <p> <code>ABO</code> (Aboriginal Peoples indigenous to Canada)</p> </li> <li> <p> <code>CCT</code> (Canadian citizen)</p> </li> <li> <p> <code>LGR</code> (Legal Representative of a Canadian Citizen or Permanent Resident)</p> </li> <li> <p> <code>RES</code> (Permanent resident of Canada)</p> </li> </ul> <p>When <code>ContactType</code> is a value other than <code>PERSON</code>, valid values include the following:</p> <ul> <li> <p> <code>ASS</code> (Canadian unincorporated association)</p> </li> <li> <p> <code>CCO</code> (Canadian corporation)</p> </li> <li> <p> <code>EDU</code> (Canadian educational institution)</p> </li> <li> <p> <code>GOV</code> (Government or government entity in Canada)</p> </li> <li> <p> <code>HOP</code> (Canadian Hospital)</p> </li> <li> <p> <code>INB</code> (Indian Band recognized by the Indian Act of Canada)</p> </li> <li> <p> <code>LAM</code> (Canadian Library, Archive, or Museum)</p> </li> <li> <p> <code>MAJ</code> (Her/His Majesty the Queen/King)</p> </li> <li> <p> <code>OMK</code> (Official mark registered in Canada)</p> </li> <li> <p> <code>PLT</code> (Canadian Political Party)</p> </li> <li> <p> <code>PRT</code> (Partnership Registered in Canada)</p> </li> <li> <p> <code>TDM</code> (Trademark registered in Canada)</p> </li> <li> <p> <code>TRD</code> (Canadian Trade Union)</p> </li> <li> <p> <code>TRS</code> (Trust established in Canada)</p> </li> </ul> </li> </ul> </dd> <dt>.es</dt> <dd> <ul> <li> <p> <code>ES_IDENTIFICATION</code> </p> <p>Specify the applicable value:</p> <ul> <li> <p> <b>For contacts inside Spain:</b> Enter your passport ID.</p> </li> <li> <p> <b>For contacts outside of Spain:</b> Enter the VAT identification number for the company.</p> <note> <p>For .es domains, the value of <code>ContactType</code> must be <code>PERSON</code>.</p> </note> </li> </ul> </li> <li> <p> <code>ES_IDENTIFICATION_TYPE</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>DNI_AND_NIF</code> (For Spanish contacts)</p> </li> <li> <p> <code>NIE</code> (For foreigners with legal residence)</p> </li> <li> <p> <code>OTHER</code> (For contacts outside of Spain)</p> </li> </ul> </li> <li> <p> <code>ES_LEGAL_FORM</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>ASSOCIATION</code> </p> </li> <li> <p> <code>CENTRAL_GOVERNMENT_BODY</code> </p> </li> <li> <p> <code>CIVIL_SOCIETY</code> </p> </li> <li> <p> <code>COMMUNITY_OF_OWNERS</code> </p> </li> <li> <p> <code>COMMUNITY_PROPERTY</code> </p> </li> <li> <p> <code>CONSULATE</code> </p> </li> <li> <p> <code>COOPERATIVE</code> </p> </li> <li> <p> <code>DESIGNATION_OF_ORIGIN_SUPERVISORY_COUNCIL</code> </p> </li> <li> <p> <code>ECONOMIC_INTEREST_GROUP</code> </p> </li> <li> <p> <code>EMBASSY</code> </p> </li> <li> <p> <code>ENTITY_MANAGING_NATURAL_AREAS</code> </p> </li> <li> <p> <code>FARM_PARTNERSHIP</code> </p> </li> <li> <p> <code>FOUNDATION</code> </p> </li> <li> <p> <code>GENERAL_AND_LIMITED_PARTNERSHIP</code> </p> </li> <li> <p> <code>GENERAL_PARTNERSHIP</code> </p> </li> <li> <p> <code>INDIVIDUAL</code> </p> </li> <li> <p> <code>LIMITED_COMPANY</code> </p> </li> <li> <p> <code>LOCAL_AUTHORITY</code> </p> </li> <li> <p> <code>LOCAL_PUBLIC_ENTITY</code> </p> </li> <li> <p> <code>MUTUAL_INSURANCE_COMPANY</code> </p> </li> <li> <p> <code>NATIONAL_PUBLIC_ENTITY</code> </p> </li> <li> <p> <code>ORDER_OR_RELIGIOUS_INSTITUTION</code> </p> </li> <li> <p> <code>OTHERS (Only for contacts outside of Spain)</code> </p> </li> <li> <p> <code>POLITICAL_PARTY</code> </p> </li> <li> <p> <code>PROFESSIONAL_ASSOCIATION</code> </p> </li> <li> <p> <code>PUBLIC_LAW_ASSOCIATION</code> </p> </li> <li> <p> <code>PUBLIC_LIMITED_COMPANY</code> </p> </li> <li> <p> <code>REGIONAL_GOVERNMENT_BODY</code> </p> </li> <li> <p> <code>REGIONAL_PUBLIC_ENTITY</code> </p> </li> <li> <p> <code>SAVINGS_BANK</code> </p> </li> <li> <p> <code>SPANISH_OFFICE</code> </p> </li> <li> <p> <code>SPORTS_ASSOCIATION</code> </p> </li> <li> <p> <code>SPORTS_FEDERATION</code> </p> </li> <li> <p> <code>SPORTS_LIMITED_COMPANY</code> </p> </li> <li> <p> <code>TEMPORARY_ALLIANCE_OF_ENTERPRISES</code> </p> </li> <li> <p> <code>TRADE_UNION</code> </p> </li> <li> <p> <code>WORKER_OWNED_COMPANY</code> </p> </li> <li> <p> <code>WORKER_OWNED_LIMITED_COMPANY</code> </p> </li> </ul> </li> </ul> </dd> <dt>.fi</dt> <dd> <ul> <li> <p> <code>BIRTH_DATE_IN_YYYY_MM_DD</code> </p> </li> <li> <p> <code>FI_BUSINESS_NUMBER</code> </p> </li> <li> <p> <code>FI_ID_NUMBER</code> </p> </li> <li> <p> <code>FI_NATIONALITY</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>FINNISH</code> </p> </li> <li> <p> <code>NOT_FINNISH</code> </p> </li> </ul> </li> <li> <p> <code>FI_ORGANIZATION_TYPE</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>COMPANY</code> </p> </li> <li> <p> <code>CORPORATION</code> </p> </li> <li> <p> <code>GOVERNMENT</code> </p> </li> <li> <p> <code>INSTITUTION</code> </p> </li> <li> <p> <code>POLITICAL_PARTY</code> </p> </li> <li> <p> <code>PUBLIC_COMMUNITY</code> </p> </li> <li> <p> <code>TOWNSHIP</code> </p> </li> </ul> </li> </ul> </dd> <dt>.fr</dt> <dd> <ul> <li> <p> <code>BIRTH_CITY</code> </p> </li> <li> <p> <code>BIRTH_COUNTRY</code> </p> </li> <li> <p> <code>BIRTH_DATE_IN_YYYY_MM_DD</code> </p> </li> <li> <p> <code>BIRTH_DEPARTMENT</code>: Specify the INSEE code that corresponds with the department where the contact was born. If the contact was born somewhere other than France or its overseas departments, specify <code>99</code>. For more information, including a list of departments and the corresponding INSEE numbers, see the Wikipedia entry <a href=\"https://en.wikipedia.org/wiki/Departments_of_France\">Departments of France</a>.</p> </li> <li> <p> <code>BRAND_NUMBER</code> </p> </li> </ul> </dd> <dt>.it</dt> <dd> <ul> <li> <p> <code>IT_NATIONALITY</code> </p> </li> <li> <p> <code>IT_PIN</code> </p> </li> <li> <p> <code>IT_REGISTRANT_ENTITY_TYPE</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>FOREIGNERS</code> </p> </li> <li> <p> <code>FREELANCE_WORKERS</code> (Freelance workers and professionals)</p> </li> <li> <p> <code>ITALIAN_COMPANIES</code> (Italian companies and one-person companies)</p> </li> <li> <p> <code>NON_PROFIT_ORGANIZATIONS</code> </p> </li> <li> <p> <code>OTHER_SUBJECTS</code> </p> </li> <li> <p> <code>PUBLIC_ORGANIZATIONS</code> </p> </li> </ul> </li> </ul> </dd> <dt>.ru</dt> <dd> <ul> <li> <p> <code>BIRTH_DATE_IN_YYYY_MM_DD</code> </p> </li> <li> <p> <code>RU_PASSPORT_DATA</code> </p> </li> </ul> </dd> <dt>.se</dt> <dd> <ul> <li> <p> <code>BIRTH_COUNTRY</code> </p> </li> <li> <p> <code>SE_ID_NUMBER</code> </p> </li> </ul> </dd> <dt>.sg</dt> <dd> <ul> <li> <p> <code>SG_ID_NUMBER</code> </p> </li> </ul> </dd> <dt>.co.uk, .me.uk, and .org.uk</dt> <dd> <ul> <li> <p> <code>UK_CONTACT_TYPE</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>CRC</code> (UK Corporation by Royal Charter)</p> </li> <li> <p> <code>FCORP</code> (Non-UK Corporation)</p> </li> <li> <p> <code>FIND</code> (Non-UK Individual, representing self)</p> </li> <li> <p> <code>FOTHER</code> (Non-UK Entity that does not fit into any other category)</p> </li> <li> <p> <code>GOV</code> (UK Government Body)</p> </li> <li> <p> <code>IND</code> (UK Individual (representing self))</p> </li> <li> <p> <code>IP</code> (UK Industrial/Provident Registered Company)</p> </li> <li> <p> <code>LLP</code> (UK Limited Liability Partnership)</p> </li> <li> <p> <code>LTD</code> (UK Limited Company)</p> </li> <li> <p> <code>OTHER</code> (UK Entity that does not fit into any other category)</p> </li> <li> <p> <code>PLC</code> (UK Public Limited Company)</p> </li> <li> <p> <code>PTNR</code> (UK Partnership)</p> </li> <li> <p> <code>RCHAR</code> (UK Registered Charity)</p> </li> <li> <p> <code>SCH</code> (UK School)</p> </li> <li> <p> <code>STAT</code> (UK Statutory Body)</p> </li> <li> <p> <code>STRA</code> (UK Sole Trader)</p> </li> </ul> </li> <li> <p> <code>UK_COMPANY_NUMBER</code> </p> </li> </ul> </dd> </dl> <p>In addition, many TLDs require a <code>VAT_NUMBER</code>.</p>" + "ExtraParam$Name": "<p>The name of an additional parameter that is required by a top-level domain. Here are the top-level domains that require additional parameters and the names of the parameters that they require:</p> <dl> <dt>.com.au and .net.au</dt> <dd> <ul> <li> <p> <code>AU_ID_NUMBER</code> </p> </li> <li> <p> <code>AU_ID_TYPE</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>ABN</code> (Australian business number)</p> </li> <li> <p> <code>ACN</code> (Australian company number)</p> </li> <li> <p> <code>TM</code> (Trademark number)</p> </li> </ul> </li> </ul> </dd> <dt>.ca</dt> <dd> <ul> <li> <p> <code>BRAND_NUMBER</code> </p> </li> <li> <p> <code>CA_BUSINESS_ENTITY_TYPE</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>BANK</code> (Bank)</p> </li> <li> <p> <code>COMMERCIAL_COMPANY</code> (Commercial company)</p> </li> <li> <p> <code>COMPANY</code> (Company)</p> </li> <li> <p> <code>COOPERATION</code> (Cooperation)</p> </li> <li> <p> <code>COOPERATIVE</code> (Cooperative)</p> </li> <li> <p> <code>COOPRIX</code> (Cooprix)</p> </li> <li> <p> <code>CORP</code> (Corporation)</p> </li> <li> <p> <code>CREDIT_UNION</code> (Credit union)</p> </li> <li> <p> <code>FOMIA</code> (Federation of mutual insurance associations)</p> </li> <li> <p> <code>INC</code> (Incorporated)</p> </li> <li> <p> <code>LTD</code> (Limited)</p> </li> <li> <p> <code>LTEE</code> (Limitée)</p> </li> <li> <p> <code>LLC</code> (Limited liability corporation)</p> </li> <li> <p> <code>LLP</code> (Limited liability partnership)</p> </li> <li> <p> <code>LTE</code> (Lte.)</p> </li> <li> <p> <code>MBA</code> (Mutual benefit association)</p> </li> <li> <p> <code>MIC</code> (Mutual insurance company)</p> </li> <li> <p> <code>NFP</code> (Not-for-profit corporation)</p> </li> <li> <p> <code>SA</code> (S.A.)</p> </li> <li> <p> <code>SAVINGS_COMPANY</code> (Savings company)</p> </li> <li> <p> <code>SAVINGS_UNION</code> (Savings union)</p> </li> <li> <p> <code>SARL</code> (Société à responsabilité limitée)</p> </li> <li> <p> <code>TRUST</code> (Trust)</p> </li> <li> <p> <code>ULC</code> (Unlimited liability corporation)</p> </li> </ul> </li> <li> <p> <code>CA_LEGAL_TYPE</code> </p> <p>When <code>ContactType</code> is <code>PERSON</code>, valid values include the following:</p> <ul> <li> <p> <code>ABO</code> (Aboriginal Peoples indigenous to Canada)</p> </li> <li> <p> <code>CCT</code> (Canadian citizen)</p> </li> <li> <p> <code>LGR</code> (Legal Representative of a Canadian Citizen or Permanent Resident)</p> </li> <li> <p> <code>RES</code> (Permanent resident of Canada)</p> </li> </ul> <p>When <code>ContactType</code> is a value other than <code>PERSON</code>, valid values include the following:</p> <ul> <li> <p> <code>ASS</code> (Canadian unincorporated association)</p> </li> <li> <p> <code>CCO</code> (Canadian corporation)</p> </li> <li> <p> <code>EDU</code> (Canadian educational institution)</p> </li> <li> <p> <code>GOV</code> (Government or government entity in Canada)</p> </li> <li> <p> <code>HOP</code> (Canadian Hospital)</p> </li> <li> <p> <code>INB</code> (Indian Band recognized by the Indian Act of Canada)</p> </li> <li> <p> <code>LAM</code> (Canadian Library, Archive, or Museum)</p> </li> <li> <p> <code>MAJ</code> (Her/His Majesty the Queen/King)</p> </li> <li> <p> <code>OMK</code> (Official mark registered in Canada)</p> </li> <li> <p> <code>PLT</code> (Canadian Political Party)</p> </li> <li> <p> <code>PRT</code> (Partnership Registered in Canada)</p> </li> <li> <p> <code>TDM</code> (Trademark registered in Canada)</p> </li> <li> <p> <code>TRD</code> (Canadian Trade Union)</p> </li> <li> <p> <code>TRS</code> (Trust established in Canada)</p> </li> </ul> </li> </ul> </dd> <dt>.es</dt> <dd> <ul> <li> <p> <code>ES_IDENTIFICATION</code> </p> <p>The value of <code>ES_IDENTIFICATION</code> depends on the following values:</p> <ul> <li> <p>The value of <code>ES_LEGAL_FORM</code> </p> </li> <li> <p>The value of <code>ES_IDENTIFICATION_TYPE</code> </p> </li> </ul> <p> <b>If <code>ES_LEGAL_FORM</code> is any value other than <code>INDIVIDUAL</code>:</b> </p> <ul> <li> <p>Specify 1 letter + 8 numbers (CIF [Certificado de Identificación Fiscal])</p> </li> <li> <p>Example: B12345678</p> </li> </ul> <p> <b>If <code>ES_LEGAL_FORM</code> is <code>INDIVIDUAL</code>, the value that you specify for <code>ES_IDENTIFICATION</code> depends on the value of <code>ES_IDENTIFICATION_TYPE</code>:</b> </p> <ul> <li> <p>If <code>ES_IDENTIFICATION_TYPE</code> is <code>DNI_AND_NIF</code> (for Spanish contacts):</p> <ul> <li> <p>Specify 8 numbers + 1 letter (DNI [Documento Nacional de Identidad], NIF [Número de Identificación Fiscal])</p> </li> <li> <p>Example: 12345678M</p> </li> </ul> </li> <li> <p>If <code>ES_IDENTIFICATION_TYPE</code> is <code>NIE</code> (for foreigners with legal residence):</p> <ul> <li> <p>Specify 1 letter + 7 numbers + 1 letter ( NIE [Número de Identidad de Extranjero])</p> </li> <li> <p>Example: Y1234567X</p> </li> </ul> </li> <li> <p>If <code>ES_IDENTIFICATION_TYPE</code> is <code>OTHER</code> (for contacts outside of Spain):</p> <ul> <li> <p>Specify a passport number, drivers license number, or national identity card number</p> </li> </ul> </li> </ul> </li> <li> <p> <code>ES_IDENTIFICATION_TYPE</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>DNI_AND_NIF</code> (For Spanish contacts)</p> </li> <li> <p> <code>NIE</code> (For foreigners with legal residence)</p> </li> <li> <p> <code>OTHER</code> (For contacts outside of Spain)</p> </li> </ul> </li> <li> <p> <code>ES_LEGAL_FORM</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>ASSOCIATION</code> </p> </li> <li> <p> <code>CENTRAL_GOVERNMENT_BODY</code> </p> </li> <li> <p> <code>CIVIL_SOCIETY</code> </p> </li> <li> <p> <code>COMMUNITY_OF_OWNERS</code> </p> </li> <li> <p> <code>COMMUNITY_PROPERTY</code> </p> </li> <li> <p> <code>CONSULATE</code> </p> </li> <li> <p> <code>COOPERATIVE</code> </p> </li> <li> <p> <code>DESIGNATION_OF_ORIGIN_SUPERVISORY_COUNCIL</code> </p> </li> <li> <p> <code>ECONOMIC_INTEREST_GROUP</code> </p> </li> <li> <p> <code>EMBASSY</code> </p> </li> <li> <p> <code>ENTITY_MANAGING_NATURAL_AREAS</code> </p> </li> <li> <p> <code>FARM_PARTNERSHIP</code> </p> </li> <li> <p> <code>FOUNDATION</code> </p> </li> <li> <p> <code>GENERAL_AND_LIMITED_PARTNERSHIP</code> </p> </li> <li> <p> <code>GENERAL_PARTNERSHIP</code> </p> </li> <li> <p> <code>INDIVIDUAL</code> </p> </li> <li> <p> <code>LIMITED_COMPANY</code> </p> </li> <li> <p> <code>LOCAL_AUTHORITY</code> </p> </li> <li> <p> <code>LOCAL_PUBLIC_ENTITY</code> </p> </li> <li> <p> <code>MUTUAL_INSURANCE_COMPANY</code> </p> </li> <li> <p> <code>NATIONAL_PUBLIC_ENTITY</code> </p> </li> <li> <p> <code>ORDER_OR_RELIGIOUS_INSTITUTION</code> </p> </li> <li> <p> <code>OTHERS (Only for contacts outside of Spain)</code> </p> </li> <li> <p> <code>POLITICAL_PARTY</code> </p> </li> <li> <p> <code>PROFESSIONAL_ASSOCIATION</code> </p> </li> <li> <p> <code>PUBLIC_LAW_ASSOCIATION</code> </p> </li> <li> <p> <code>PUBLIC_LIMITED_COMPANY</code> </p> </li> <li> <p> <code>REGIONAL_GOVERNMENT_BODY</code> </p> </li> <li> <p> <code>REGIONAL_PUBLIC_ENTITY</code> </p> </li> <li> <p> <code>SAVINGS_BANK</code> </p> </li> <li> <p> <code>SPANISH_OFFICE</code> </p> </li> <li> <p> <code>SPORTS_ASSOCIATION</code> </p> </li> <li> <p> <code>SPORTS_FEDERATION</code> </p> </li> <li> <p> <code>SPORTS_LIMITED_COMPANY</code> </p> </li> <li> <p> <code>TEMPORARY_ALLIANCE_OF_ENTERPRISES</code> </p> </li> <li> <p> <code>TRADE_UNION</code> </p> </li> <li> <p> <code>WORKER_OWNED_COMPANY</code> </p> </li> <li> <p> <code>WORKER_OWNED_LIMITED_COMPANY</code> </p> </li> </ul> </li> </ul> </dd> <dt>.eu</dt> <dd> <ul> <li> <p> <code> EU_COUNTRY_OF_CITIZENSHIP</code> </p> </li> </ul> </dd> <dt>.fi</dt> <dd> <ul> <li> <p> <code>BIRTH_DATE_IN_YYYY_MM_DD</code> </p> </li> <li> <p> <code>FI_BUSINESS_NUMBER</code> </p> </li> <li> <p> <code>FI_ID_NUMBER</code> </p> </li> <li> <p> <code>FI_NATIONALITY</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>FINNISH</code> </p> </li> <li> <p> <code>NOT_FINNISH</code> </p> </li> </ul> </li> <li> <p> <code>FI_ORGANIZATION_TYPE</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>COMPANY</code> </p> </li> <li> <p> <code>CORPORATION</code> </p> </li> <li> <p> <code>GOVERNMENT</code> </p> </li> <li> <p> <code>INSTITUTION</code> </p> </li> <li> <p> <code>POLITICAL_PARTY</code> </p> </li> <li> <p> <code>PUBLIC_COMMUNITY</code> </p> </li> <li> <p> <code>TOWNSHIP</code> </p> </li> </ul> </li> </ul> </dd> <dt>.fr</dt> <dd> <ul> <li> <p> <code>BIRTH_CITY</code> </p> </li> <li> <p> <code>BIRTH_COUNTRY</code> </p> </li> <li> <p> <code>BIRTH_DATE_IN_YYYY_MM_DD</code> </p> </li> <li> <p> <code>BIRTH_DEPARTMENT</code>: Specify the INSEE code that corresponds with the department where the contact was born. If the contact was born somewhere other than France or its overseas departments, specify <code>99</code>. For more information, including a list of departments and the corresponding INSEE numbers, see the Wikipedia entry <a href=\"https://en.wikipedia.org/wiki/Departments_of_France\">Departments of France</a>.</p> </li> <li> <p> <code>BRAND_NUMBER</code> </p> </li> </ul> </dd> <dt>.it</dt> <dd> <ul> <li> <p> <code>IT_NATIONALITY</code> </p> </li> <li> <p> <code>IT_PIN</code> </p> </li> <li> <p> <code>IT_REGISTRANT_ENTITY_TYPE</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>FOREIGNERS</code> </p> </li> <li> <p> <code>FREELANCE_WORKERS</code> (Freelance workers and professionals)</p> </li> <li> <p> <code>ITALIAN_COMPANIES</code> (Italian companies and one-person companies)</p> </li> <li> <p> <code>NON_PROFIT_ORGANIZATIONS</code> </p> </li> <li> <p> <code>OTHER_SUBJECTS</code> </p> </li> <li> <p> <code>PUBLIC_ORGANIZATIONS</code> </p> </li> </ul> </li> </ul> </dd> <dt>.ru</dt> <dd> <ul> <li> <p> <code>BIRTH_DATE_IN_YYYY_MM_DD</code> </p> </li> <li> <p> <code>RU_PASSPORT_DATA</code> </p> </li> </ul> </dd> <dt>.se</dt> <dd> <ul> <li> <p> <code>BIRTH_COUNTRY</code> </p> </li> <li> <p> <code>SE_ID_NUMBER</code> </p> </li> </ul> </dd> <dt>.sg</dt> <dd> <ul> <li> <p> <code>SG_ID_NUMBER</code> </p> </li> </ul> </dd> <dt>.co.uk, .me.uk, and .org.uk</dt> <dd> <ul> <li> <p> <code>UK_CONTACT_TYPE</code> </p> <p>Valid values include the following:</p> <ul> <li> <p> <code>CRC</code> (UK Corporation by Royal Charter)</p> </li> <li> <p> <code>FCORP</code> (Non-UK Corporation)</p> </li> <li> <p> <code>FIND</code> (Non-UK Individual, representing self)</p> </li> <li> <p> <code>FOTHER</code> (Non-UK Entity that does not fit into any other category)</p> </li> <li> <p> <code>GOV</code> (UK Government Body)</p> </li> <li> <p> <code>IND</code> (UK Individual (representing self))</p> </li> <li> <p> <code>IP</code> (UK Industrial/Provident Registered Company)</p> </li> <li> <p> <code>LLP</code> (UK Limited Liability Partnership)</p> </li> <li> <p> <code>LTD</code> (UK Limited Company)</p> </li> <li> <p> <code>OTHER</code> (UK Entity that does not fit into any other category)</p> </li> <li> <p> <code>PLC</code> (UK Public Limited Company)</p> </li> <li> <p> <code>PTNR</code> (UK Partnership)</p> </li> <li> <p> <code>RCHAR</code> (UK Registered Charity)</p> </li> <li> <p> <code>SCH</code> (UK School)</p> </li> <li> <p> <code>STAT</code> (UK Statutory Body)</p> </li> <li> <p> <code>STRA</code> (UK Sole Trader)</p> </li> </ul> </li> <li> <p> <code>UK_COMPANY_NUMBER</code> </p> </li> </ul> </dd> </dl> <p>In addition, many TLDs require a <code>VAT_NUMBER</code>.</p>" } }, "ExtraParamValue": { @@ -394,6 +431,18 @@ "UpdateDomainNameserversRequest$FIAuthKey": "<p>The authorization key for .fi domains</p>" } }, + "FilterCondition": { + "base": "<p>Information for the filtering of a list of domains returned by <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains__ListDomains.html\">ListDomains</a>.</p>", + "refs": { + "FilterConditions$member": null + } + }, + "FilterConditions": { + "base": null, + "refs": { + "ListDomainsRequest$FilterConditions": "<p>A complex type that contains information about the filters applied during the <code>ListDomains</code> request. The filter conditions can include domain name and domain expiration.</p>" + } + }, "GetContactReachabilityStatusRequest": { "base": null, "refs": { @@ -477,6 +526,13 @@ "TransferDomainRequest$IdnLangCode": "<p>Reserved for future use.</p>" } }, + "ListDomainsAttributeName": { + "base": null, + "refs": { + "FilterCondition$Name": "<p>Name of the field which should be used for filtering the list of domains.</p>", + "SortCondition$Name": "<p>Field to be used for sorting the list of domains. It can be either the name or the expiration for a domain. Note that if <code>filterCondition</code> is used in the same <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains__ListDomains.html\">ListDomains</a> call, the field used for sorting has to be the same as the field used for filtering.</p>" + } + }, "ListDomainsRequest": { "base": "<p>The ListDomains request includes the following elements.</p>", "refs": { @@ -497,6 +553,16 @@ "refs": { } }, + "ListPricesRequest": { + "base": null, + "refs": { + } + }, + "ListPricesResponse": { + "base": null, + "refs": { + } + }, "ListTagsForDomainRequest": { "base": "<p>The ListTagsForDomainRequest includes the following elements.</p>", "refs": { @@ -526,6 +592,7 @@ "refs": { "AcceptDomainTransferFromAnotherAwsAccountResponse$OperationId": "<p>Identifier for tracking the progress of the request. To query the operation status, use <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a>.</p>", "CancelDomainTransferToAnotherAwsAccountResponse$OperationId": "<p>The identifier that <code>TransferDomainToAnotherAwsAccount</code> returned to track the progress of the request. Because the transfer request was canceled, the value is no longer valid, and you can't use <code>GetOperationDetail</code> to query the operation status.</p>", + "DeleteDomainResponse$OperationId": "<p>Identifier for tracking the progress of the request. To query the operation status, use <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a>.</p>", "DisableDomainTransferLockResponse$OperationId": "<p>Identifier for tracking the progress of the request. To query the operation status, use <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html\">GetOperationDetail</a>.</p>", "EnableDomainTransferLockResponse$OperationId": "<p>Identifier for tracking the progress of the request. To use this ID to query the operation status, use GetOperationDetail.</p>", "GetOperationDetailRequest$OperationId": "<p>The identifier for the operation for which you want to get the status. Route 53 returned the identifier in the response to the original request.</p>", @@ -573,14 +640,22 @@ "OperationSummary$Type": "<p>Type of the action requested.</p>" } }, + "Operator": { + "base": null, + "refs": { + "FilterCondition$Operator": "<p>The operator values for filtering domain names. The values can be:</p> <ul> <li> <p> <code>LE</code>: Less than, or equal to</p> </li> <li> <p> <code>GE</code>: Greater than, or equal to</p> </li> <li> <p> <code>BEGINS_WITH</code>: Begins with</p> </li> </ul>" + } + }, "PageMarker": { "base": null, "refs": { - "ListDomainsRequest$Marker": "<p>For an initial request for a list of domains, omit this element. If the number of domains that are associated with the current AWS account is greater than the value that you specified for <code>MaxItems</code>, you can use <code>Marker</code> to return additional domains. Get the value of <code>NextPageMarker</code> from the previous response, and submit another request that includes the value of <code>NextPageMarker</code> in the <code>Marker</code> element.</p> <p>Constraints: The marker must match the value specified in the previous request.</p>", + "ListDomainsRequest$Marker": "<p>For an initial request for a list of domains, omit this element. If the number of domains that are associated with the current Amazon Web Services account is greater than the value that you specified for <code>MaxItems</code>, you can use <code>Marker</code> to return additional domains. Get the value of <code>NextPageMarker</code> from the previous response, and submit another request that includes the value of <code>NextPageMarker</code> in the <code>Marker</code> element.</p> <p>Constraints: The marker must match the value specified in the previous request.</p>", "ListDomainsResponse$NextPageMarker": "<p>If there are more domains than you specified for <code>MaxItems</code> in the request, submit another request and include the value of <code>NextPageMarker</code> in the value of <code>Marker</code>.</p>", "ListOperationsRequest$Marker": "<p>For an initial request for a list of operations, omit this element. If the number of operations that are not yet complete is greater than the value that you specified for <code>MaxItems</code>, you can use <code>Marker</code> to return additional operations. Get the value of <code>NextPageMarker</code> from the previous response, and submit another request that includes the value of <code>NextPageMarker</code> in the <code>Marker</code> element.</p>", "ListOperationsResponse$NextPageMarker": "<p>If there are more operations than you specified for <code>MaxItems</code> in the request, submit another request and include the value of <code>NextPageMarker</code> in the value of <code>Marker</code>.</p>", - "ViewBillingRequest$Marker": "<p>For an initial request for a list of billing records, omit this element. If the number of billing records that are associated with the current AWS account during the specified period is greater than the value that you specified for <code>MaxItems</code>, you can use <code>Marker</code> to return additional billing records. Get the value of <code>NextPageMarker</code> from the previous response, and submit another request that includes the value of <code>NextPageMarker</code> in the <code>Marker</code> element. </p> <p>Constraints: The marker must match the value of <code>NextPageMarker</code> that was returned in the previous response.</p>", + "ListPricesRequest$Marker": "<p>For an initial request for a list of prices, omit this element. If the number of prices that are not yet complete is greater than the value that you specified for <code>MaxItems</code>, you can use <code>Marker</code> to return additional prices. Get the value of <code>NextPageMarker</code> from the previous response, and submit another request that includes the value of <code>NextPageMarker</code> in the <code>Marker</code> element. </p> <p>Used only for all TLDs. If you specify a TLD, don't specify a <code>Marker</code>.</p>", + "ListPricesResponse$NextPageMarker": "<p>If there are more prices than you specified for <code>MaxItems</code> in the request, submit another request and include the value of <code>NextPageMarker</code> in the value of <code>Marker</code>. </p> <p>Used only for all TLDs. If you specify a TLD, don't specify a <code>NextPageMarker</code>.</p>", + "ViewBillingRequest$Marker": "<p>For an initial request for a list of billing records, omit this element. If the number of billing records that are associated with the current Amazon Web Services account during the specified period is greater than the value that you specified for <code>MaxItems</code>, you can use <code>Marker</code> to return additional billing records. Get the value of <code>NextPageMarker</code> from the previous response, and submit another request that includes the value of <code>NextPageMarker</code> in the <code>Marker</code> element. </p> <p>Constraints: The marker must match the value of <code>NextPageMarker</code> that was returned in the previous response.</p>", "ViewBillingResponse$NextPageMarker": "<p>If there are more billing records than you specified for <code>MaxItems</code> in the request, submit another request and include the value of <code>NextPageMarker</code> in the value of <code>Marker</code>.</p>" } }, @@ -589,13 +664,25 @@ "refs": { "ListDomainsRequest$MaxItems": "<p>Number of domains to be returned.</p> <p>Default: 20</p>", "ListOperationsRequest$MaxItems": "<p>Number of domains to be returned.</p> <p>Default: 20</p>", + "ListPricesRequest$MaxItems": "<p>Number of <code>Prices</code> to be returned.</p> <p>Used only for all TLDs. If you specify a TLD, don't specify a <code>MaxItems</code>.</p>", "ViewBillingRequest$MaxItems": "<p>The number of billing records to be returned.</p> <p>Default: 20</p>" } }, "Price": { "base": null, "refs": { - "BillingRecord$Price": "<p>The price that you were charged for the operation, in US dollars.</p> <p>Example value: 12.0</p>" + "BillingRecord$Price": "<p>The price that you were charged for the operation, in US dollars.</p> <p>Example value: 12.0</p>", + "PriceWithCurrency$Price": "<p>The price of a domain, in a specific currency.</p>" + } + }, + "PriceWithCurrency": { + "base": "<p>Currency-specific price information.</p>", + "refs": { + "DomainPrice$RegistrationPrice": "<p>The price for domain registration with Route 53.</p>", + "DomainPrice$TransferPrice": "<p>The price for transferring the domain registration to Route 53.</p>", + "DomainPrice$RenewalPrice": "<p>The price for renewing domain registration with Route 53.</p>", + "DomainPrice$ChangeOwnershipPrice": "<p>The price for changing domain ownership.</p>", + "DomainPrice$RestorationPrice": "<p>The price for restoring the domain with Route 53.</p>" } }, "ReachabilityStatus": { @@ -684,6 +771,18 @@ "refs": { } }, + "SortCondition": { + "base": "<p>Information for sorting a list of domains.</p>", + "refs": { + "ListDomainsRequest$SortCondition": "<p>A complex type that contains information about the requested ordering of domains in the returned list.</p>" + } + }, + "SortOrder": { + "base": null, + "refs": { + "SortCondition$SortOrder": "<p>The sort order for a list of domains. Either ascending (ASC) or descending (DES).</p>" + } + }, "State": { "base": null, "refs": { @@ -695,7 +794,7 @@ "refs": { "AcceptDomainTransferFromAnotherAwsAccountRequest$Password": "<p>The password that was returned by the <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html\">TransferDomainToAnotherAwsAccount</a> request. </p>", "DomainSuggestion$Availability": "<p>Whether the domain name is available for registering.</p> <note> <p>You can register only the domains that are designated as <code>AVAILABLE</code>.</p> </note> <p>Valid values:</p> <dl> <dt>AVAILABLE</dt> <dd> <p>The domain name is available.</p> </dd> <dt>AVAILABLE_RESERVED</dt> <dd> <p>The domain name is reserved under specific conditions.</p> </dd> <dt>AVAILABLE_PREORDER</dt> <dd> <p>The domain name is available and can be preordered.</p> </dd> <dt>DONT_KNOW</dt> <dd> <p>The TLD registry didn't reply with a definitive answer about whether the domain name is available. Route 53 can return this response for a variety of reasons, for example, the registry is performing maintenance. Try again later.</p> </dd> <dt>PENDING</dt> <dd> <p>The TLD registry didn't return a response in the expected amount of time. When the response is delayed, it usually takes just a few extra seconds. You can resubmit the request immediately.</p> </dd> <dt>RESERVED</dt> <dd> <p>The domain name has been reserved for another person or organization.</p> </dd> <dt>UNAVAILABLE</dt> <dd> <p>The domain name is not available.</p> </dd> <dt>UNAVAILABLE_PREMIUM</dt> <dd> <p>The domain name is not available.</p> </dd> <dt>UNAVAILABLE_RESTRICTED</dt> <dd> <p>The domain name is forbidden.</p> </dd> </dl>", - "TransferDomainToAnotherAwsAccountResponse$Password": "<p>To finish transferring a domain to another AWS account, the account that the domain is being transferred to must submit an <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_AcceptDomainTransferFromAnotherAwsAccount.html\">AcceptDomainTransferFromAnotherAwsAccount</a> request. The request must include the value of the <code>Password</code> element that was returned in the <code>TransferDomainToAnotherAwsAccount</code> response.</p>" + "TransferDomainToAnotherAwsAccountResponse$Password": "<p>To finish transferring a domain to another Amazon Web Services account, the account that the domain is being transferred to must submit an <a href=\"https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_AcceptDomainTransferFromAnotherAwsAccount.html\">AcceptDomainTransferFromAnotherAwsAccount</a> request. The request must include the value of the <code>Password</code> element that was returned in the <code>TransferDomainToAnotherAwsAccount</code> response.</p>" } }, "TLDRulesViolation": { @@ -750,6 +849,12 @@ "ViewBillingRequest$End": "<p>The end date and time for the time period for which you want a list of billing records. Specify the date and time in Unix time format and Coordinated Universal time (UTC).</p>" } }, + "TldName": { + "base": null, + "refs": { + "ListPricesRequest$Tld": "<p>The TLD for which you want to receive the pricing information. For example. <code>.net</code>.</p> <p>If a <code>Tld</code> value is not provided, a list of prices for all TLDs supported by Route 53 is returned.</p>" + } + }, "TransferDomainRequest": { "base": "<p>The TransferDomain request includes the following elements.</p>", "refs": { @@ -821,6 +926,18 @@ "refs": { } }, + "Value": { + "base": null, + "refs": { + "Values$member": null + } + }, + "Values": { + "base": null, + "refs": { + "FilterCondition$Values": "<p> An array of strings presenting values to compare. Only 1 item in the list is currently supported.</p>" + } + }, "ViewBillingRequest": { "base": "<p>The ViewBilling request includes the following elements.</p>", "refs": { diff --git a/models/apis/route53domains/2014-05-15/paginators-1.json b/models/apis/route53domains/2014-05-15/paginators-1.json index eaeaed76895..739710b8046 100644 --- a/models/apis/route53domains/2014-05-15/paginators-1.json +++ b/models/apis/route53domains/2014-05-15/paginators-1.json @@ -11,6 +11,18 @@ "limit_key": "MaxItems", "output_token": "NextPageMarker", "result_key": "Operations" + }, + "ListPrices": { + "input_token": "Marker", + "limit_key": "MaxItems", + "output_token": "NextPageMarker", + "result_key": "Prices" + }, + "ViewBilling": { + "input_token": "Marker", + "limit_key": "MaxItems", + "output_token": "NextPageMarker", + "result_key": "BillingRecords" } } } \ No newline at end of file diff --git a/models/apis/savingsplans/2019-06-28/docs-2.json b/models/apis/savingsplans/2019-06-28/docs-2.json index 371b3e51752..251f0d2f77a 100644 --- a/models/apis/savingsplans/2019-06-28/docs-2.json +++ b/models/apis/savingsplans/2019-06-28/docs-2.json @@ -16,7 +16,7 @@ "Amount": { "base": null, "refs": { - "CreateSavingsPlanRequest$commitment": "<p>The hourly commitment, in USD. This is a value between 0.001 and 1 million. You cannot specify more than three digits after the decimal point.</p>", + "CreateSavingsPlanRequest$commitment": "<p>The hourly commitment, in USD. This is a value between 0.001 and 1 million. You cannot specify more than five digits after the decimal point.</p>", "CreateSavingsPlanRequest$upfrontPaymentAmount": "<p>The up-front payment amount. This is a whole number between 50 and 99 percent of the total value of the Savings Plan. This parameter is supported only if the payment option is <code>Partial Upfront</code>.</p>", "SavingsPlan$commitment": "<p>The hourly commitment, in USD.</p>", "SavingsPlan$upfrontPaymentAmount": "<p>The up-front payment amount.</p>", diff --git a/models/apis/sms/2016-10-24/docs-2.json b/models/apis/sms/2016-10-24/docs-2.json index 7996bb83f79..a059f1ca9d1 100644 --- a/models/apis/sms/2016-10-24/docs-2.json +++ b/models/apis/sms/2016-10-24/docs-2.json @@ -1,32 +1,32 @@ { "version": "2.0", - "service": "<fullname>AWS Server Migration Service</fullname> <p>AWS Server Migration Service (AWS SMS) makes it easier and faster for you to migrate your on-premises workloads to AWS. To learn more about AWS SMS, see the following resources:</p> <ul> <li> <p> <a href=\"http://aws.amazon.com/server-migration-service/\">AWS Server Migration Service product page</a> </p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/server-migration-service/latest/userguide/\">AWS Server Migration Service User Guide</a> </p> </li> </ul>", + "service": "<important> <p> <b>Product update</b> </p> <p>As of March 31, 2022, Amazon Web Services will discontinue Server Migration Service (Amazon Web Services SMS). Going forward, we recommend <a href=\"http://aws.amazon.com/application-migration-service\">Amazon Web Services Application Migration Service</a> (Amazon Web Services MGN) as the primary migration service for lift-and-shift migrations.</p> <p>You can initiate new migration jobs in Server Migration Service until January 1, 2022. Complete these active migration projects by March 31, 2022. For more information, see <a href=\"http://aws.amazon.com/application-migration-service/when-to-choose-aws-mgn/\">When to Choose AWS Application Migration Service</a>.</p> </important> <p>Server Migration Service (Server Migration Service) makes it easier and faster for you to migrate your on-premises workloads to Amazon Web Services. To learn more about Server Migration Service, see the following resources:</p> <ul> <li> <p> <a href=\"http://aws.amazon.com/server-migration-service/\">Server Migration Service product page</a> </p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/server-migration-service/latest/userguide/\">Server Migration Service User Guide</a> </p> </li> </ul>", "operations": { "CreateApp": "<p>Creates an application. An application consists of one or more server groups. Each server group contain one or more servers.</p>", - "CreateReplicationJob": "<p>Creates a replication job. The replication job schedules periodic replication runs to replicate your server to AWS. Each replication run creates an Amazon Machine Image (AMI).</p>", - "DeleteApp": "<p>Deletes the specified application. Optionally deletes the launched stack associated with the application and all AWS SMS replication jobs for servers in the application.</p>", + "CreateReplicationJob": "<p>Creates a replication job. The replication job schedules periodic replication runs to replicate your server to Amazon Web Services. Each replication run creates an Amazon Machine Image (AMI).</p>", + "DeleteApp": "<p>Deletes the specified application. Optionally deletes the launched stack associated with the application and all Server Migration Service replication jobs for servers in the application.</p>", "DeleteAppLaunchConfiguration": "<p>Deletes the launch configuration for the specified application.</p>", "DeleteAppReplicationConfiguration": "<p>Deletes the replication configuration for the specified application.</p>", "DeleteAppValidationConfiguration": "<p>Deletes the validation configuration for the specified application.</p>", - "DeleteReplicationJob": "<p>Deletes the specified replication job.</p> <p>After you delete a replication job, there are no further replication runs. AWS deletes the contents of the Amazon S3 bucket used to store AWS SMS artifacts. The AMIs created by the replication runs are not deleted.</p>", + "DeleteReplicationJob": "<p>Deletes the specified replication job.</p> <p>After you delete a replication job, there are no further replication runs. Amazon Web Services deletes the contents of the Amazon S3 bucket used to store Server Migration Service artifacts. The AMIs created by the replication runs are not deleted.</p>", "DeleteServerCatalog": "<p>Deletes all servers from your server catalog.</p>", - "DisassociateConnector": "<p>Disassociates the specified connector from AWS SMS.</p> <p>After you disassociate a connector, it is no longer available to support replication jobs.</p>", + "DisassociateConnector": "<p>Disassociates the specified connector from Server Migration Service.</p> <p>After you disassociate a connector, it is no longer available to support replication jobs.</p>", "GenerateChangeSet": "<p>Generates a target change set for a currently launched stack and writes it to an Amazon S3 object in the customer’s Amazon S3 bucket.</p>", - "GenerateTemplate": "<p>Generates an AWS CloudFormation template based on the current launch configuration and writes it to an Amazon S3 object in the customer’s Amazon S3 bucket.</p>", + "GenerateTemplate": "<p>Generates an CloudFormation template based on the current launch configuration and writes it to an Amazon S3 object in the customer’s Amazon S3 bucket.</p>", "GetApp": "<p>Retrieve information about the specified application.</p>", "GetAppLaunchConfiguration": "<p>Retrieves the application launch configuration associated with the specified application.</p>", "GetAppReplicationConfiguration": "<p>Retrieves the application replication configuration associated with the specified application.</p>", "GetAppValidationConfiguration": "<p>Retrieves information about a configuration for validating an application.</p>", "GetAppValidationOutput": "<p>Retrieves output from validating an application.</p>", - "GetConnectors": "<p>Describes the connectors registered with the AWS SMS.</p>", + "GetConnectors": "<p>Describes the connectors registered with the Server Migration Service.</p>", "GetReplicationJobs": "<p>Describes the specified replication job or all of your replication jobs.</p>", "GetReplicationRuns": "<p>Describes the replication runs for the specified replication job.</p>", "GetServers": "<p>Describes the servers in your server catalog.</p> <p>Before you can describe your servers, you must import them using <a>ImportServerCatalog</a>.</p>", - "ImportAppCatalog": "<p>Allows application import from AWS Migration Hub.</p>", + "ImportAppCatalog": "<p>Allows application import from Migration Hub.</p>", "ImportServerCatalog": "<p>Gathers a complete list of on-premises servers. Connectors must be installed and monitoring all servers to import.</p> <p>This call returns immediately, but might take additional time to retrieve all the servers.</p>", - "LaunchApp": "<p>Launches the specified application as a stack in AWS CloudFormation.</p>", + "LaunchApp": "<p>Launches the specified application as a stack in CloudFormation.</p>", "ListApps": "<p>Retrieves summaries for all applications.</p>", - "NotifyAppValidationOutput": "<p>Provides information to AWS SMS about whether application validation is successful.</p>", + "NotifyAppValidationOutput": "<p>Provides information to Server Migration Service about whether application validation is successful.</p>", "PutAppLaunchConfiguration": "<p>Creates or updates the launch configuration for the specified application.</p>", "PutAppReplicationConfiguration": "<p>Creates or updates the replication configuration for the specified application.</p>", "PutAppValidationConfiguration": "<p>Creates or updates a validation configuration for the specified application.</p>", @@ -63,7 +63,7 @@ "DeleteAppReplicationConfigurationRequest$appId": "<p>The ID of the application.</p>", "DeleteAppRequest$appId": "<p>The ID of the application.</p>", "GenerateChangeSetRequest$appId": "<p>The ID of the application associated with the change set.</p>", - "GenerateTemplateRequest$appId": "<p>The ID of the application associated with the AWS CloudFormation template.</p>", + "GenerateTemplateRequest$appId": "<p>The ID of the application associated with the CloudFormation template.</p>", "GetAppLaunchConfigurationRequest$appId": "<p>The ID of the application.</p>", "GetAppLaunchConfigurationResponse$appId": "<p>The ID of the application.</p>", "GetAppReplicationConfigurationRequest$appId": "<p>The ID of the application.</p>", @@ -218,7 +218,7 @@ "Command": { "base": null, "refs": { - "SSMValidationParameters$command": "<p>The command to run the validation script</p>" + "SSMValidationParameters$command": "<p>The command to run the validation script.</p>" } }, "Connector": { @@ -647,7 +647,7 @@ "LogicalId": { "base": null, "refs": { - "ServerLaunchConfiguration$logicalId": "<p>The logical ID of the server in the AWS CloudFormation template.</p>" + "ServerLaunchConfiguration$logicalId": "<p>The logical ID of the server in the CloudFormation template.</p>" } }, "MacAddress": { @@ -733,7 +733,7 @@ "base": null, "refs": { "GenerateChangeSetRequest$changesetFormat": "<p>The format for the change set.</p>", - "GenerateTemplateRequest$templateFormat": "<p>The format for generating the AWS CloudFormation template.</p>" + "GenerateTemplateRequest$templateFormat": "<p>The format for generating the CloudFormation template.</p>" } }, "PutAppLaunchConfigurationRequest": { @@ -884,16 +884,16 @@ "RoleName": { "base": null, "refs": { - "AppSummary$roleName": "<p>The name of the service role in the customer's account used by AWS SMS.</p>", - "CreateAppRequest$roleName": "<p>The name of the service role in the customer's account to be used by AWS SMS.</p>", - "CreateReplicationJobRequest$roleName": "<p>The name of the IAM role to be used by the AWS SMS.</p>", - "GetAppLaunchConfigurationResponse$roleName": "<p>The name of the service role in the customer's account that AWS CloudFormation uses to launch the application.</p>", - "ImportAppCatalogRequest$roleName": "<p>The name of the service role. If you omit this parameter, we create a service-linked role for AWS Migration Hub in your account. Otherwise, the role that you provide must have the <a href=\"https://docs.aws.amazon.com/migrationhub/latest/ug/new-customer-setup.html#sms-managed\">policy and trust policy</a> described in the <i>AWS Migration Hub User Guide</i>.</p>", - "PutAppLaunchConfigurationRequest$roleName": "<p>The name of service role in the customer's account that AWS CloudFormation uses to launch the application.</p>", - "ReplicationJob$roleName": "<p>The name of the IAM role to be used by AWS SMS.</p>", + "AppSummary$roleName": "<p>The name of the service role in the customer's account used by Server Migration Service.</p>", + "CreateAppRequest$roleName": "<p>The name of the service role in the customer's account to be used by Server Migration Service.</p>", + "CreateReplicationJobRequest$roleName": "<p>The name of the IAM role to be used by the Server Migration Service.</p>", + "GetAppLaunchConfigurationResponse$roleName": "<p>The name of the service role in the customer's account that CloudFormation uses to launch the application.</p>", + "ImportAppCatalogRequest$roleName": "<p>The name of the service role. If you omit this parameter, we create a service-linked role for Migration Hub in your account. Otherwise, the role that you provide must have the <a href=\"https://docs.aws.amazon.com/migrationhub/latest/ug/new-customer-setup.html#sms-managed\">policy and trust policy</a> described in the <i>Migration Hub User Guide</i>.</p>", + "PutAppLaunchConfigurationRequest$roleName": "<p>The name of service role in the customer's account that CloudFormation uses to launch the application.</p>", + "ReplicationJob$roleName": "<p>The name of the IAM role to be used by Server Migration Service.</p>", "ServerLaunchConfiguration$iamInstanceProfileName": "<p>The name of the IAM instance profile.</p>", - "UpdateAppRequest$roleName": "<p>The name of the service role in the customer's account used by AWS SMS.</p>", - "UpdateReplicationJobRequest$roleName": "<p>The name of the IAM role to be used by AWS SMS.</p>" + "UpdateAppRequest$roleName": "<p>The name of the service role in the customer's account used by Server Migration Service.</p>", + "UpdateReplicationJobRequest$roleName": "<p>The name of the IAM role to be used by Server Migration Service.</p>" } }, "RunOnce": { diff --git a/service/ec2/ec2iface/interface.go b/service/ec2/ec2iface/interface.go index e0f10d8e421..6b471a7c34d 100644 --- a/service/ec2/ec2iface/interface.go +++ b/service/ec2/ec2iface/interface.go @@ -2510,6 +2510,9 @@ type EC2API interface { WaitUntilInstanceTerminated(*ec2.DescribeInstancesInput) error WaitUntilInstanceTerminatedWithContext(aws.Context, *ec2.DescribeInstancesInput, ...request.WaiterOption) error + WaitUntilInternetGatewayExists(*ec2.DescribeInternetGatewaysInput) error + WaitUntilInternetGatewayExistsWithContext(aws.Context, *ec2.DescribeInternetGatewaysInput, ...request.WaiterOption) error + WaitUntilKeyPairExists(*ec2.DescribeKeyPairsInput) error WaitUntilKeyPairExistsWithContext(aws.Context, *ec2.DescribeKeyPairsInput, ...request.WaiterOption) error diff --git a/service/ec2/waiters.go b/service/ec2/waiters.go index b459717ffd8..b58f6a0d14e 100644 --- a/service/ec2/waiters.go +++ b/service/ec2/waiters.go @@ -738,6 +738,57 @@ func (c *EC2) WaitUntilInstanceTerminatedWithContext(ctx aws.Context, input *Des return w.WaitWithContext(ctx) } +// WaitUntilInternetGatewayExists uses the Amazon EC2 API operation +// DescribeInternetGateways to wait for a condition to be met before returning. +// If the condition is not met within the max attempt window, an error will +// be returned. +func (c *EC2) WaitUntilInternetGatewayExists(input *DescribeInternetGatewaysInput) error { + return c.WaitUntilInternetGatewayExistsWithContext(aws.BackgroundContext(), input) +} + +// WaitUntilInternetGatewayExistsWithContext is an extended version of WaitUntilInternetGatewayExists. +// With the support for passing in a context and options to configure the +// Waiter and the underlying request options. +// +// 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 *EC2) WaitUntilInternetGatewayExistsWithContext(ctx aws.Context, input *DescribeInternetGatewaysInput, opts ...request.WaiterOption) error { + w := request.Waiter{ + Name: "WaitUntilInternetGatewayExists", + MaxAttempts: 6, + Delay: request.ConstantWaiterDelay(5 * time.Second), + Acceptors: []request.WaiterAcceptor{ + { + State: request.SuccessWaiterState, + Matcher: request.PathWaiterMatch, Argument: "length(InternetGateways[].InternetGatewayId) > `0`", + Expected: true, + }, + { + State: request.RetryWaiterState, + Matcher: request.ErrorWaiterMatch, + Expected: "InvalidInternetGateway.NotFound", + }, + }, + Logger: c.Config.Logger, + NewRequest: func(opts []request.Option) (*request.Request, error) { + var inCpy *DescribeInternetGatewaysInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeInternetGatewaysRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + w.ApplyOptions(opts...) + + return w.WaitWithContext(ctx) +} + // WaitUntilKeyPairExists uses the Amazon EC2 API operation // DescribeKeyPairs to wait for a condition to be met before returning. // If the condition is not met within the max attempt window, an error will diff --git a/service/lexmodelsv2/api.go b/service/lexmodelsv2/api.go index 1c7e583f3c8..9948955522d 100644 --- a/service/lexmodelsv2/api.go +++ b/service/lexmodelsv2/api.go @@ -11841,6 +11841,9 @@ type CreateSlotTypeInput struct { // slot type in lists. Description *string `locationName:"description" type:"string"` + // Sets the type of external information used to create the slot type. + ExternalSourceSetting *ExternalSourceSetting `locationName:"externalSourceSetting" type:"structure"` + // The identifier of the language and locale that the slot type will be used // in. The string must match one of the supported locales. All of the bots, // intents, and slots used by the slot type must have the same locale. For more @@ -11879,9 +11882,7 @@ type CreateSlotTypeInput struct { // // If you don't specify the valueSelectionSetting parameter, the default is // OriginalValue. - // - // ValueSelectionSetting is a required field - ValueSelectionSetting *SlotValueSelectionSetting `locationName:"valueSelectionSetting" type:"structure" required:"true"` + ValueSelectionSetting *SlotValueSelectionSetting `locationName:"valueSelectionSetting" type:"structure"` } // String returns the string representation. @@ -11932,8 +11933,10 @@ func (s *CreateSlotTypeInput) Validate() error { if s.SlotTypeValues != nil && len(s.SlotTypeValues) < 1 { invalidParams.Add(request.NewErrParamMinLen("SlotTypeValues", 1)) } - if s.ValueSelectionSetting == nil { - invalidParams.Add(request.NewErrParamRequired("ValueSelectionSetting")) + if s.ExternalSourceSetting != nil { + if err := s.ExternalSourceSetting.Validate(); err != nil { + invalidParams.AddNested("ExternalSourceSetting", err.(request.ErrInvalidParams)) + } } if s.SlotTypeValues != nil { for i, v := range s.SlotTypeValues { @@ -11975,6 +11978,12 @@ func (s *CreateSlotTypeInput) SetDescription(v string) *CreateSlotTypeInput { return s } +// SetExternalSourceSetting sets the ExternalSourceSetting field's value. +func (s *CreateSlotTypeInput) SetExternalSourceSetting(v *ExternalSourceSetting) *CreateSlotTypeInput { + s.ExternalSourceSetting = v + return s +} + // SetLocaleId sets the LocaleId field's value. func (s *CreateSlotTypeInput) SetLocaleId(v string) *CreateSlotTypeInput { s.LocaleId = &v @@ -12020,6 +12029,9 @@ type CreateSlotTypeOutput struct { // The description specified for the slot type. Description *string `locationName:"description" type:"string"` + // The type of external information used to create the slot type. + ExternalSourceSetting *ExternalSourceSetting `locationName:"externalSourceSetting" type:"structure"` + // The specified language and local specified for the slot type. LocaleId *string `locationName:"localeId" type:"string"` @@ -12083,6 +12095,12 @@ func (s *CreateSlotTypeOutput) SetDescription(v string) *CreateSlotTypeOutput { return s } +// SetExternalSourceSetting sets the ExternalSourceSetting field's value. +func (s *CreateSlotTypeOutput) SetExternalSourceSetting(v *ExternalSourceSetting) *CreateSlotTypeOutput { + s.ExternalSourceSetting = v + return s +} + // SetLocaleId sets the LocaleId field's value. func (s *CreateSlotTypeOutput) SetLocaleId(v string) *CreateSlotTypeOutput { s.LocaleId = &v @@ -14163,6 +14181,9 @@ type DescribeBotLocaleOutput struct { // an utterance. NluIntentConfidenceThreshold *float64 `locationName:"nluIntentConfidenceThreshold" type:"double"` + // Recommended actions to take to resolve an error in the failureReasons field. + RecommendedActions []*string `locationName:"recommendedActions" type:"list"` + // The number of slot types defined for the locale. SlotTypesCount *int64 `locationName:"slotTypesCount" type:"integer"` @@ -14266,6 +14287,12 @@ func (s *DescribeBotLocaleOutput) SetNluIntentConfidenceThreshold(v float64) *De return s } +// SetRecommendedActions sets the RecommendedActions field's value. +func (s *DescribeBotLocaleOutput) SetRecommendedActions(v []*string) *DescribeBotLocaleOutput { + s.RecommendedActions = v + return s +} + // SetSlotTypesCount sets the SlotTypesCount field's value. func (s *DescribeBotLocaleOutput) SetSlotTypesCount(v int64) *DescribeBotLocaleOutput { s.SlotTypesCount = &v @@ -15871,6 +15898,9 @@ type DescribeSlotTypeOutput struct { // The description specified for the slot type. Description *string `locationName:"description" type:"string"` + // Provides information about the external source of the slot type's definition. + ExternalSourceSetting *ExternalSourceSetting `locationName:"externalSourceSetting" type:"structure"` + // A timestamp of the date and time that the slot type was last updated. LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"` @@ -15937,6 +15967,12 @@ func (s *DescribeSlotTypeOutput) SetDescription(v string) *DescribeSlotTypeOutpu return s } +// SetExternalSourceSetting sets the ExternalSourceSetting field's value. +func (s *DescribeSlotTypeOutput) SetExternalSourceSetting(v *ExternalSourceSetting) *DescribeSlotTypeOutput { + s.ExternalSourceSetting = v + return s +} + // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value. func (s *DescribeSlotTypeOutput) SetLastUpdatedDateTime(v time.Time) *DescribeSlotTypeOutput { s.LastUpdatedDateTime = &v @@ -16384,6 +16420,53 @@ func (s *ExportSummary) SetResourceSpecification(v *ExportResourceSpecification) return s } +// Provides information about the external source of the slot type's definition. +type ExternalSourceSetting struct { + _ struct{} `type:"structure"` + + // Settings required for a slot type based on a grammar that you provide. + GrammarSlotTypeSetting *GrammarSlotTypeSetting `locationName:"grammarSlotTypeSetting" 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 ExternalSourceSetting) 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 ExternalSourceSetting) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ExternalSourceSetting) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExternalSourceSetting"} + if s.GrammarSlotTypeSetting != nil { + if err := s.GrammarSlotTypeSetting.Validate(); err != nil { + invalidParams.AddNested("GrammarSlotTypeSetting", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGrammarSlotTypeSetting sets the GrammarSlotTypeSetting field's value. +func (s *ExternalSourceSetting) SetGrammarSlotTypeSetting(v *GrammarSlotTypeSetting) *ExternalSourceSetting { + s.GrammarSlotTypeSetting = v + return s +} + // Determines if a Lambda function should be invoked for a specific intent. type FulfillmentCodeHookSettings struct { _ struct{} `type:"structure"` @@ -16740,6 +16823,133 @@ func (s *FulfillmentUpdatesSpecification) SetUpdateResponse(v *FulfillmentUpdate return s } +// Settings requried for a slot type based on a grammar that you provide. +type GrammarSlotTypeSetting struct { + _ struct{} `type:"structure"` + + // The source of the grammar used to create the slot type. + Source *GrammarSlotTypeSource `locationName:"source" 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 GrammarSlotTypeSetting) 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 GrammarSlotTypeSetting) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GrammarSlotTypeSetting) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GrammarSlotTypeSetting"} + if s.Source != nil { + if err := s.Source.Validate(); err != nil { + invalidParams.AddNested("Source", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSource sets the Source field's value. +func (s *GrammarSlotTypeSetting) SetSource(v *GrammarSlotTypeSource) *GrammarSlotTypeSetting { + s.Source = v + return s +} + +// Describes the Amazon S3 bucket name and location for the grammar that is +// the source for the slot type. +type GrammarSlotTypeSource struct { + _ struct{} `type:"structure"` + + // The Amazon KMS key required to decrypt the contents of the grammar, if any. + KmsKeyArn *string `locationName:"kmsKeyArn" min:"20" type:"string"` + + // The name of the S3 bucket that contains the grammar source. + // + // S3BucketName is a required field + S3BucketName *string `locationName:"s3BucketName" min:"3" type:"string" required:"true"` + + // The path to the grammar in the S3 bucket. + // + // S3ObjectKey is a required field + S3ObjectKey *string `locationName:"s3ObjectKey" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GrammarSlotTypeSource) 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 GrammarSlotTypeSource) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GrammarSlotTypeSource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GrammarSlotTypeSource"} + if s.KmsKeyArn != nil && len(*s.KmsKeyArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyArn", 20)) + } + if s.S3BucketName == nil { + invalidParams.Add(request.NewErrParamRequired("S3BucketName")) + } + if s.S3BucketName != nil && len(*s.S3BucketName) < 3 { + invalidParams.Add(request.NewErrParamMinLen("S3BucketName", 3)) + } + if s.S3ObjectKey == nil { + invalidParams.Add(request.NewErrParamRequired("S3ObjectKey")) + } + if s.S3ObjectKey != nil && len(*s.S3ObjectKey) < 1 { + invalidParams.Add(request.NewErrParamMinLen("S3ObjectKey", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKmsKeyArn sets the KmsKeyArn field's value. +func (s *GrammarSlotTypeSource) SetKmsKeyArn(v string) *GrammarSlotTypeSource { + s.KmsKeyArn = &v + return s +} + +// SetS3BucketName sets the S3BucketName field's value. +func (s *GrammarSlotTypeSource) SetS3BucketName(v string) *GrammarSlotTypeSource { + s.S3BucketName = &v + return s +} + +// SetS3ObjectKey sets the S3ObjectKey field's value. +func (s *GrammarSlotTypeSource) SetS3ObjectKey(v string) *GrammarSlotTypeSource { + s.S3ObjectKey = &v + return s +} + // A card that is shown to the user by a messaging platform. You define the // contents of the card, the card is displayed by the platform. // @@ -22917,6 +23127,18 @@ type SlotTypeSummary struct { // slot type. ParentSlotTypeSignature *string `locationName:"parentSlotTypeSignature" type:"string"` + // Indicates the type of the slot type. + // + // * Custom - A slot type that you created using custom values. For more + // information, see Creating custom slot types (https://docs.aws.amazon.com/lexv2/latest/dg/custom-slot-types.html). + // + // * Extended - A slot type created by extending the AMAZON.AlphaNumeric + // built-in slot type. For more information, see AMAZON.AlphaNumeric (https://docs.aws.amazon.com/lexv2/latest/dg/built-in-slot-alphanumerice.html). + // + // * ExternalGrammar - A slot type using a custom GRXML grammar to define + // values. For more information, see Using a custom grammar slot type (https://docs.aws.amazon.com/lexv2/latest/dg/building-grxml.html). + SlotTypeCategory *string `locationName:"slotTypeCategory" type:"string" enum:"SlotTypeCategory"` + // The unique identifier assigned to the slot type. SlotTypeId *string `locationName:"slotTypeId" min:"10" type:"string"` @@ -22960,6 +23182,12 @@ func (s *SlotTypeSummary) SetParentSlotTypeSignature(v string) *SlotTypeSummary return s } +// SetSlotTypeCategory sets the SlotTypeCategory field's value. +func (s *SlotTypeSummary) SetSlotTypeCategory(v string) *SlotTypeSummary { + s.SlotTypeCategory = &v + return s +} + // SetSlotTypeId sets the SlotTypeId field's value. func (s *SlotTypeSummary) SetSlotTypeId(v string) *SlotTypeSummary { s.SlotTypeId = &v @@ -24837,6 +25065,9 @@ type UpdateBotLocaleOutput struct { // an utterance. NluIntentConfidenceThreshold *float64 `locationName:"nluIntentConfidenceThreshold" type:"double"` + // Recommended actions to take to resolve an error in the failureReasons field. + RecommendedActions []*string `locationName:"recommendedActions" type:"list"` + // The updated Amazon Polly voice to use for voice interaction with the user. VoiceSettings *VoiceSettings `locationName:"voiceSettings" type:"structure"` } @@ -24919,6 +25150,12 @@ func (s *UpdateBotLocaleOutput) SetNluIntentConfidenceThreshold(v float64) *Upda return s } +// SetRecommendedActions sets the RecommendedActions field's value. +func (s *UpdateBotLocaleOutput) SetRecommendedActions(v []*string) *UpdateBotLocaleOutput { + s.RecommendedActions = v + return s +} + // SetVoiceSettings sets the VoiceSettings field's value. func (s *UpdateBotLocaleOutput) SetVoiceSettings(v *VoiceSettings) *UpdateBotLocaleOutput { s.VoiceSettings = v @@ -26387,6 +26624,9 @@ type UpdateSlotTypeInput struct { // The new description of the slot type. Description *string `locationName:"description" type:"string"` + // Provides information about the external source of the slot type's definition. + ExternalSourceSetting *ExternalSourceSetting `locationName:"externalSourceSetting" type:"structure"` + // The identifier of the language and locale that contains the slot type. The // string must match one of the supported locales. For more information, see // Supported languages (https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html). @@ -26414,9 +26654,7 @@ type UpdateSlotTypeInput struct { // The strategy that Amazon Lex should use when deciding on a value from the // list of slot type values. - // - // ValueSelectionSetting is a required field - ValueSelectionSetting *SlotValueSelectionSetting `locationName:"valueSelectionSetting" type:"structure" required:"true"` + ValueSelectionSetting *SlotValueSelectionSetting `locationName:"valueSelectionSetting" type:"structure"` } // String returns the string representation. @@ -26473,8 +26711,10 @@ func (s *UpdateSlotTypeInput) Validate() error { if s.SlotTypeValues != nil && len(s.SlotTypeValues) < 1 { invalidParams.Add(request.NewErrParamMinLen("SlotTypeValues", 1)) } - if s.ValueSelectionSetting == nil { - invalidParams.Add(request.NewErrParamRequired("ValueSelectionSetting")) + if s.ExternalSourceSetting != nil { + if err := s.ExternalSourceSetting.Validate(); err != nil { + invalidParams.AddNested("ExternalSourceSetting", err.(request.ErrInvalidParams)) + } } if s.SlotTypeValues != nil { for i, v := range s.SlotTypeValues { @@ -26516,6 +26756,12 @@ func (s *UpdateSlotTypeInput) SetDescription(v string) *UpdateSlotTypeInput { return s } +// SetExternalSourceSetting sets the ExternalSourceSetting field's value. +func (s *UpdateSlotTypeInput) SetExternalSourceSetting(v *ExternalSourceSetting) *UpdateSlotTypeInput { + s.ExternalSourceSetting = v + return s +} + // SetLocaleId sets the LocaleId field's value. func (s *UpdateSlotTypeInput) SetLocaleId(v string) *UpdateSlotTypeInput { s.LocaleId = &v @@ -26567,6 +26813,9 @@ type UpdateSlotTypeOutput struct { // The updated description of the slot type. Description *string `locationName:"description" type:"string"` + // Provides information about the external source of the slot type's definition. + ExternalSourceSetting *ExternalSourceSetting `locationName:"externalSourceSetting" type:"structure"` + // A timestamp of the date and time that the slot type was last updated. LastUpdatedDateTime *time.Time `locationName:"lastUpdatedDateTime" type:"timestamp"` @@ -26633,6 +26882,12 @@ func (s *UpdateSlotTypeOutput) SetDescription(v string) *UpdateSlotTypeOutput { return s } +// SetExternalSourceSetting sets the ExternalSourceSetting field's value. +func (s *UpdateSlotTypeOutput) SetExternalSourceSetting(v *ExternalSourceSetting) *UpdateSlotTypeOutput { + s.ExternalSourceSetting = v + return s +} + // SetLastUpdatedDateTime sets the LastUpdatedDateTime field's value. func (s *UpdateSlotTypeOutput) SetLastUpdatedDateTime(v time.Time) *UpdateSlotTypeOutput { s.LastUpdatedDateTime = &v @@ -26798,8 +27053,11 @@ type VoiceSettings struct { _ struct{} `type:"structure"` // Indicates the type of Amazon Polly voice that Amazon Lex should use for voice - // interaction with the user. For more information, see Voices in Amazon Polly - // (https://docs.aws.amazon.com/polly/latest/dg/voicelist.html). + // interaction with the user. For more information, see the engine parameter + // of the SynthesizeSpeech operation (https://docs.aws.amazon.com/polly/latest/dg/API_SynthesizeSpeech.html#polly-SynthesizeSpeech-request-Engine) + // in the Amazon Polly developer guide. + // + // If you do not specify a value, the default is standard. Engine *string `locationName:"engine" type:"string" enum:"VoiceEngine"` // The identifier of the Amazon Polly voice to use. @@ -27579,15 +27837,39 @@ func SlotSortAttribute_Values() []string { } } +const ( + // SlotTypeCategoryCustom is a SlotTypeCategory enum value + SlotTypeCategoryCustom = "Custom" + + // SlotTypeCategoryExtended is a SlotTypeCategory enum value + SlotTypeCategoryExtended = "Extended" + + // SlotTypeCategoryExternalGrammar is a SlotTypeCategory enum value + SlotTypeCategoryExternalGrammar = "ExternalGrammar" +) + +// SlotTypeCategory_Values returns all elements of the SlotTypeCategory enum +func SlotTypeCategory_Values() []string { + return []string{ + SlotTypeCategoryCustom, + SlotTypeCategoryExtended, + SlotTypeCategoryExternalGrammar, + } +} + const ( // SlotTypeFilterNameSlotTypeName is a SlotTypeFilterName enum value SlotTypeFilterNameSlotTypeName = "SlotTypeName" + + // SlotTypeFilterNameExternalSourceType is a SlotTypeFilterName enum value + SlotTypeFilterNameExternalSourceType = "ExternalSourceType" ) // SlotTypeFilterName_Values returns all elements of the SlotTypeFilterName enum func SlotTypeFilterName_Values() []string { return []string{ SlotTypeFilterNameSlotTypeName, + SlotTypeFilterNameExternalSourceType, } } diff --git a/service/networkfirewall/api.go b/service/networkfirewall/api.go index 96cc88a7104..4c509876c81 100644 --- a/service/networkfirewall/api.go +++ b/service/networkfirewall/api.go @@ -1477,6 +1477,106 @@ func (c *NetworkFirewall) DescribeRuleGroupWithContext(ctx aws.Context, input *D return out, req.Send() } +const opDescribeRuleGroupMetadata = "DescribeRuleGroupMetadata" + +// DescribeRuleGroupMetadataRequest generates a "aws/request.Request" representing the +// client's request for the DescribeRuleGroupMetadata 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 DescribeRuleGroupMetadata for more information on using the DescribeRuleGroupMetadata +// 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 DescribeRuleGroupMetadataRequest method. +// req, resp := client.DescribeRuleGroupMetadataRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeRuleGroupMetadata +func (c *NetworkFirewall) DescribeRuleGroupMetadataRequest(input *DescribeRuleGroupMetadataInput) (req *request.Request, output *DescribeRuleGroupMetadataOutput) { + op := &request.Operation{ + Name: opDescribeRuleGroupMetadata, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DescribeRuleGroupMetadataInput{} + } + + output = &DescribeRuleGroupMetadataOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeRuleGroupMetadata API operation for AWS Network Firewall. +// +// High-level information about a rule group, returned by operations like create +// and describe. You can use the information provided in the metadata to retrieve +// and manage a rule group. You can retrieve all objects for a rule group by +// calling DescribeRuleGroup. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Network Firewall's +// API operation DescribeRuleGroupMetadata for usage and error information. +// +// Returned Error Types: +// * InvalidRequestException +// The operation failed because of a problem with your request. Examples include: +// +// * You specified an unsupported parameter name or value. +// +// * You tried to update a property with a value that isn't among the available +// types. +// +// * Your request references an ARN that is malformed, or corresponds to +// a resource that isn't valid in the context of the request. +// +// * ResourceNotFoundException +// Unable to locate a resource using the parameters that you provided. +// +// * ThrottlingException +// Unable to process the request due to throttling limitations. +// +// * InternalServerError +// Your request is valid, but Network Firewall couldn’t perform the operation +// because of a system problem. Retry your request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/network-firewall-2020-11-12/DescribeRuleGroupMetadata +func (c *NetworkFirewall) DescribeRuleGroupMetadata(input *DescribeRuleGroupMetadataInput) (*DescribeRuleGroupMetadataOutput, error) { + req, out := c.DescribeRuleGroupMetadataRequest(input) + return out, req.Send() +} + +// DescribeRuleGroupMetadataWithContext is the same as DescribeRuleGroupMetadata with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeRuleGroupMetadata 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 *NetworkFirewall) DescribeRuleGroupMetadataWithContext(ctx aws.Context, input *DescribeRuleGroupMetadataInput, opts ...request.Option) (*DescribeRuleGroupMetadataOutput, error) { + req, out := c.DescribeRuleGroupMetadataRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDisassociateSubnets = "DisassociateSubnets" // DisassociateSubnetsRequest generates a "aws/request.Request" representing the @@ -2115,6 +2215,13 @@ func (c *NetworkFirewall) ListTagsForResourceRequest(input *ListTagsForResourceI // API operation ListTagsForResource for usage and error information. // // Returned Error Types: +// * ThrottlingException +// Unable to process the request due to throttling limitations. +// +// * InternalServerError +// Your request is valid, but Network Firewall couldn’t perform the operation +// because of a system problem. Retry your request. +// // * ResourceNotFoundException // Unable to locate a resource using the parameters that you provided. // @@ -2388,6 +2495,13 @@ func (c *NetworkFirewall) TagResourceRequest(input *TagResourceInput) (req *requ // API operation TagResource for usage and error information. // // Returned Error Types: +// * ThrottlingException +// Unable to process the request due to throttling limitations. +// +// * InternalServerError +// Your request is valid, but Network Firewall couldn’t perform the operation +// because of a system problem. Retry your request. +// // * ResourceNotFoundException // Unable to locate a resource using the parameters that you provided. // @@ -2486,6 +2600,13 @@ func (c *NetworkFirewall) UntagResourceRequest(input *UntagResourceInput) (req * // API operation UntagResource for usage and error information. // // Returned Error Types: +// * ThrottlingException +// Unable to process the request due to throttling limitations. +// +// * InternalServerError +// Your request is valid, but Network Firewall couldn’t perform the operation +// because of a system problem. Retry your request. +// // * ResourceNotFoundException // Unable to locate a resource using the parameters that you provided. // @@ -2873,6 +2994,11 @@ func (c *NetworkFirewall) UpdateFirewallPolicyChangeProtectionRequest(input *Upd // UpdateFirewallPolicyChangeProtection API operation for AWS Network Firewall. // +// Modifies the flag, ChangeProtection, which indicates whether it is possible +// to change the firewall. If the flag is set to TRUE, the firewall is protected +// from changes. This setting helps protect against accidentally changing a +// firewall that's in use. +// // 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. @@ -5435,6 +5561,178 @@ func (s *DescribeRuleGroupInput) SetType(v string) *DescribeRuleGroupInput { return s } +type DescribeRuleGroupMetadataInput struct { + _ struct{} `type:"structure"` + + // The descriptive name of the rule group. You can't change the name of a rule + // group after you create it. + // + // You must specify the ARN or the name, and you can specify both. + RuleGroupArn *string `min:"1" type:"string"` + + // The descriptive name of the rule group. You can't change the name of a rule + // group after you create it. + // + // You must specify the ARN or the name, and you can specify both. + RuleGroupName *string `min:"1" type:"string"` + + // Indicates whether the rule group is stateless or stateful. If the rule group + // is stateless, it contains stateless rules. If it is stateful, it contains + // stateful rules. + // + // This setting is required for requests that do not include the RuleGroupARN. + Type *string `type:"string" enum:"RuleGroupType"` +} + +// 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 DescribeRuleGroupMetadataInput) 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 DescribeRuleGroupMetadataInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeRuleGroupMetadataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeRuleGroupMetadataInput"} + if s.RuleGroupArn != nil && len(*s.RuleGroupArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RuleGroupArn", 1)) + } + if s.RuleGroupName != nil && len(*s.RuleGroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RuleGroupName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetRuleGroupArn sets the RuleGroupArn field's value. +func (s *DescribeRuleGroupMetadataInput) SetRuleGroupArn(v string) *DescribeRuleGroupMetadataInput { + s.RuleGroupArn = &v + return s +} + +// SetRuleGroupName sets the RuleGroupName field's value. +func (s *DescribeRuleGroupMetadataInput) SetRuleGroupName(v string) *DescribeRuleGroupMetadataInput { + s.RuleGroupName = &v + return s +} + +// SetType sets the Type field's value. +func (s *DescribeRuleGroupMetadataInput) SetType(v string) *DescribeRuleGroupMetadataInput { + s.Type = &v + return s +} + +type DescribeRuleGroupMetadataOutput struct { + _ struct{} `type:"structure"` + + // The maximum operating resources that this rule group can use. Rule group + // capacity is fixed at creation. When you update a rule group, you are limited + // to this capacity. When you reference a rule group from a firewall policy, + // Network Firewall reserves this capacity for the rule group. + // + // You can retrieve the capacity that would be required for a rule group before + // you create the rule group by calling CreateRuleGroup with DryRun set to TRUE. + Capacity *int64 `type:"integer"` + + // Returns the metadata objects for the specified rule group. + Description *string `type:"string"` + + // The descriptive name of the rule group. You can't change the name of a rule + // group after you create it. + // + // You must specify the ARN or the name, and you can specify both. + // + // RuleGroupArn is a required field + RuleGroupArn *string `min:"1" type:"string" required:"true"` + + // The descriptive name of the rule group. You can't change the name of a rule + // group after you create it. + // + // You must specify the ARN or the name, and you can specify both. + // + // RuleGroupName is a required field + RuleGroupName *string `min:"1" type:"string" required:"true"` + + // Additional options governing how Network Firewall handles the rule group. + // You can only use these for stateful rule groups. + StatefulRuleOptions *StatefulRuleOptions `type:"structure"` + + // Indicates whether the rule group is stateless or stateful. If the rule group + // is stateless, it contains stateless rules. If it is stateful, it contains + // stateful rules. + // + // This setting is required for requests that do not include the RuleGroupARN. + Type *string `type:"string" enum:"RuleGroupType"` +} + +// 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 DescribeRuleGroupMetadataOutput) 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 DescribeRuleGroupMetadataOutput) GoString() string { + return s.String() +} + +// SetCapacity sets the Capacity field's value. +func (s *DescribeRuleGroupMetadataOutput) SetCapacity(v int64) *DescribeRuleGroupMetadataOutput { + s.Capacity = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *DescribeRuleGroupMetadataOutput) SetDescription(v string) *DescribeRuleGroupMetadataOutput { + s.Description = &v + return s +} + +// SetRuleGroupArn sets the RuleGroupArn field's value. +func (s *DescribeRuleGroupMetadataOutput) SetRuleGroupArn(v string) *DescribeRuleGroupMetadataOutput { + s.RuleGroupArn = &v + return s +} + +// SetRuleGroupName sets the RuleGroupName field's value. +func (s *DescribeRuleGroupMetadataOutput) SetRuleGroupName(v string) *DescribeRuleGroupMetadataOutput { + s.RuleGroupName = &v + return s +} + +// SetStatefulRuleOptions sets the StatefulRuleOptions field's value. +func (s *DescribeRuleGroupMetadataOutput) SetStatefulRuleOptions(v *StatefulRuleOptions) *DescribeRuleGroupMetadataOutput { + s.StatefulRuleOptions = v + return s +} + +// SetType sets the Type field's value. +func (s *DescribeRuleGroupMetadataOutput) SetType(v string) *DescribeRuleGroupMetadataOutput { + s.Type = &v + return s +} + type DescribeRuleGroupOutput struct { _ struct{} `type:"structure"` @@ -5946,6 +6244,21 @@ type FirewallPolicy struct { _ struct{} `type:"structure"` // The default actions to take on a packet that doesn't match any stateful rules. + // The stateful default action is optional, and is only valid when using the + // strict rule order. + // + // Valid values of the stateful default action: + // + // * aws:drop_strict + // + // * aws:drop_established + // + // * aws:alert_strict + // + // * aws:alert_established + // + // For more information, see Strict evaluation order (https://docs.aws.amazon.com/network-firewall/latest/developerguide/suricata-strict-rule-evaluation-order.html) + // in the AWS Network Firewall Developer Guide. StatefulDefaultActions []*string `type:"list"` // Additional options governing how Network Firewall handles stateful rules. @@ -7266,6 +7579,11 @@ type ListRuleGroupsInput struct { // retrieve the next batch of objects, use the token returned from the prior // request in your next request. NextToken *string `min:"1" type:"string"` + + // The scope of the request. The default setting of ACCOUNT or a setting of + // NULL returns all of the rule groups in your account. A setting of MANAGED + // returns all available managed rule groups. + Scope *string `type:"string" enum:"ResourceManagedStatus"` } // String returns the string representation. @@ -7314,6 +7632,12 @@ func (s *ListRuleGroupsInput) SetNextToken(v string) *ListRuleGroupsInput { return s } +// SetScope sets the Scope field's value. +func (s *ListRuleGroupsInput) SetScope(v string) *ListRuleGroupsInput { + s.Scope = &v + return s +} + type ListRuleGroupsOutput struct { _ struct{} `type:"structure"` @@ -8917,9 +9241,8 @@ type RulesSourceList struct { // TargetTypes is a required field TargetTypes []*string `type:"list" required:"true"` - // The domains that you want to inspect for in your traffic flows. To provide - // multiple domains, separate them with commas. Valid domain specifications - // are the following: + // The domains that you want to inspect for in your traffic flows. Valid domain + // specifications are the following: // // * Explicit names. For example, abc.example.com matches only the domain // abc.example.com. @@ -8993,12 +9316,11 @@ type StatefulEngineOptions struct { _ struct{} `type:"structure"` // Indicates how to manage the order of stateful rule evaluation for the policy. - // By default, Network Firewall leaves the rule evaluation order up to the Suricata - // rule processing engine. If you set this to STRICT_ORDER, your rules are evaluated - // in the exact order that you provide them in the policy. With strict ordering, - // the rule groups are evaluated by order of priority, starting from the lowest - // number, and the rules in each rule group are processed in the order that - // they're defined. + // DEFAULT_ACTION_ORDER is the default behavior. Stateful rules are provided + // to the rule engine as Suricata compatible strings, and Suricata evaluates + // them based on certain settings. For more information, see Evaluation order + // for stateful rules (https://docs.aws.amazon.com/network-firewall/latest/developerguide/suricata-rule-evaluation-order.html) + // in the AWS Network Firewall Developer Guide. RuleOrder *string `type:"string" enum:"RuleOrder"` } @@ -9136,11 +9458,49 @@ func (s *StatefulRule) SetRuleOptions(v []*RuleOption) *StatefulRule { return s } +// The setting that allows the policy owner to change the behavior of the rule +// group within a policy. +type StatefulRuleGroupOverride struct { + _ struct{} `type:"structure"` + + // The action that changes the rule group from DROP to ALERT. This only applies + // to managed rule groups. + Action *string `type:"string" enum:"OverrideAction"` +} + +// 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 StatefulRuleGroupOverride) 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 StatefulRuleGroupOverride) GoString() string { + return s.String() +} + +// SetAction sets the Action field's value. +func (s *StatefulRuleGroupOverride) SetAction(v string) *StatefulRuleGroupOverride { + s.Action = &v + return s +} + // Identifier for a single stateful rule group, used in a firewall policy to // refer to a rule group. type StatefulRuleGroupReference struct { _ struct{} `type:"structure"` + // The action that allows the policy owner to override the behavior of the rule + // group within a policy. + Override *StatefulRuleGroupOverride `type:"structure"` + // An integer setting that indicates the order in which to run the stateful // rule groups in a single FirewallPolicy. This setting only applies to firewall // policies that specify the STRICT_ORDER rule order in the stateful engine @@ -9198,6 +9558,12 @@ func (s *StatefulRuleGroupReference) Validate() error { return nil } +// SetOverride sets the Override field's value. +func (s *StatefulRuleGroupReference) SetOverride(v *StatefulRuleGroupOverride) *StatefulRuleGroupReference { + s.Override = v + return s +} + // SetPriority sets the Priority field's value. func (s *StatefulRuleGroupReference) SetPriority(v int64) *StatefulRuleGroupReference { s.Priority = &v @@ -9216,9 +9582,11 @@ type StatefulRuleOptions struct { _ struct{} `type:"structure"` // Indicates how to manage the order of the rule evaluation for the rule group. - // By default, Network Firewall leaves the rule evaluation order up to the Suricata - // rule processing engine. If you set this to STRICT_ORDER, your rules are evaluated - // in the exact order that they're listed in your Suricata rules string. + // DEFAULT_ACTION_ORDER is the default behavior. Stateful rules are provided + // to the rule engine as Suricata compatible strings, and Suricata evaluates + // them based on certain settings. For more information, see Evaluation order + // for stateful rules (https://docs.aws.amazon.com/network-firewall/latest/developerguide/suricata-rule-evaluation-order.html) + // in the AWS Network Firewall Developer Guide. RuleOrder *string `type:"string" enum:"RuleOrder"` } @@ -10147,6 +10515,10 @@ func (s *UpdateFirewallDeleteProtectionInput) SetUpdateToken(v string) *UpdateFi type UpdateFirewallDeleteProtectionOutput struct { _ struct{} `type:"structure"` + // A flag indicating whether it is possible to delete the firewall. A setting + // of TRUE indicates that the firewall is protected against deletion. Use this + // setting to protect against accidentally deleting a firewall that is in use. + // When you create a firewall, the operation initializes this flag to TRUE. DeleteProtection *bool `type:"boolean"` // The Amazon Resource Name (ARN) of the firewall. @@ -11385,6 +11757,18 @@ func LogType_Values() []string { } } +const ( + // OverrideActionDropToAlert is a OverrideAction enum value + OverrideActionDropToAlert = "DROP_TO_ALERT" +) + +// OverrideAction_Values returns all elements of the OverrideAction enum +func OverrideAction_Values() []string { + return []string{ + OverrideActionDropToAlert, + } +} + const ( // PerObjectSyncStatusPending is a PerObjectSyncStatus enum value PerObjectSyncStatusPending = "PENDING" @@ -11401,6 +11785,22 @@ func PerObjectSyncStatus_Values() []string { } } +const ( + // ResourceManagedStatusManaged is a ResourceManagedStatus enum value + ResourceManagedStatusManaged = "MANAGED" + + // ResourceManagedStatusAccount is a ResourceManagedStatus enum value + ResourceManagedStatusAccount = "ACCOUNT" +) + +// ResourceManagedStatus_Values returns all elements of the ResourceManagedStatus enum +func ResourceManagedStatus_Values() []string { + return []string{ + ResourceManagedStatusManaged, + ResourceManagedStatusAccount, + } +} + const ( // ResourceStatusActive is a ResourceStatus enum value ResourceStatusActive = "ACTIVE" diff --git a/service/networkfirewall/networkfirewalliface/interface.go b/service/networkfirewall/networkfirewalliface/interface.go index fee199f3aac..b8811a461fd 100644 --- a/service/networkfirewall/networkfirewalliface/interface.go +++ b/service/networkfirewall/networkfirewalliface/interface.go @@ -116,6 +116,10 @@ type NetworkFirewallAPI interface { DescribeRuleGroupWithContext(aws.Context, *networkfirewall.DescribeRuleGroupInput, ...request.Option) (*networkfirewall.DescribeRuleGroupOutput, error) DescribeRuleGroupRequest(*networkfirewall.DescribeRuleGroupInput) (*request.Request, *networkfirewall.DescribeRuleGroupOutput) + DescribeRuleGroupMetadata(*networkfirewall.DescribeRuleGroupMetadataInput) (*networkfirewall.DescribeRuleGroupMetadataOutput, error) + DescribeRuleGroupMetadataWithContext(aws.Context, *networkfirewall.DescribeRuleGroupMetadataInput, ...request.Option) (*networkfirewall.DescribeRuleGroupMetadataOutput, error) + DescribeRuleGroupMetadataRequest(*networkfirewall.DescribeRuleGroupMetadataInput) (*request.Request, *networkfirewall.DescribeRuleGroupMetadataOutput) + DisassociateSubnets(*networkfirewall.DisassociateSubnetsInput) (*networkfirewall.DisassociateSubnetsOutput, error) DisassociateSubnetsWithContext(aws.Context, *networkfirewall.DisassociateSubnetsInput, ...request.Option) (*networkfirewall.DisassociateSubnetsOutput, error) DisassociateSubnetsRequest(*networkfirewall.DisassociateSubnetsInput) (*request.Request, *networkfirewall.DisassociateSubnetsOutput) diff --git a/service/route53domains/api.go b/service/route53domains/api.go index f00a8091906..ec74dc420e5 100644 --- a/service/route53domains/api.go +++ b/service/route53domains/api.go @@ -57,9 +57,14 @@ func (c *Route53Domains) AcceptDomainTransferFromAnotherAwsAccountRequest(input // AcceptDomainTransferFromAnotherAwsAccount API operation for Amazon Route 53 Domains. // -// Accepts the transfer of a domain from another AWS account to the current -// AWS account. You initiate a transfer between AWS accounts using TransferDomainToAnotherAwsAccount -// (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html). +// Accepts the transfer of a domain from another Amazon Web Services account +// to the currentAmazon Web Services account. You initiate a transfer between +// Amazon Web Services accounts using TransferDomainToAnotherAwsAccount (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html). +// +// If you use the CLI command at accept-domain-transfer-from-another-aws-account +// (https://docs.aws.amazon.com/cli/latest/reference/route53domains/accept-domain-transfer-from-another-aws-account.html), +// use JSON format as input instead of text because otherwise CLI will throw +// an error from domain transfer input that includes single quotes. // // Use either ListOperations (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_ListOperations.html) // or GetOperationDetail (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html) @@ -88,6 +93,9 @@ func (c *Route53Domains) AcceptDomainTransferFromAnotherAwsAccountRequest(input // * DomainLimitExceeded // The number of domains has exceeded the allowed threshold for the account. // +// * UnsupportedTLD +// Amazon Route 53 does not support this top-level domain (TLD). +// // See also, https://docs.aws.amazon.com/goto/WebAPI/route53domains-2014-05-15/AcceptDomainTransferFromAnotherAwsAccount func (c *Route53Domains) AcceptDomainTransferFromAnotherAwsAccount(input *AcceptDomainTransferFromAnotherAwsAccountInput) (*AcceptDomainTransferFromAnotherAwsAccountOutput, error) { req, out := c.AcceptDomainTransferFromAnotherAwsAccountRequest(input) @@ -154,12 +162,12 @@ func (c *Route53Domains) CancelDomainTransferToAnotherAwsAccountRequest(input *C // CancelDomainTransferToAnotherAwsAccount API operation for Amazon Route 53 Domains. // -// Cancels the transfer of a domain from the current AWS account to another -// AWS account. You initiate a transfer between AWS accounts using TransferDomainToAnotherAwsAccount -// (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html). +// Cancels the transfer of a domain from the current Amazon Web Services account +// to another Amazon Web Services account. You initiate a transfer betweenAmazon +// Web Services accounts using TransferDomainToAnotherAwsAccount (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html). // -// You must cancel the transfer before the other AWS account accepts the transfer -// using AcceptDomainTransferFromAnotherAwsAccount (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_AcceptDomainTransferFromAnotherAwsAccount.html). +// You must cancel the transfer before the other Amazon Web Services account +// accepts the transfer using AcceptDomainTransferFromAnotherAwsAccount (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_AcceptDomainTransferFromAnotherAwsAccount.html). // // Use either ListOperations (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_ListOperations.html) // or GetOperationDetail (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html) @@ -185,6 +193,9 @@ func (c *Route53Domains) CancelDomainTransferToAnotherAwsAccountRequest(input *C // The number of operations or jobs running exceeded the allowed threshold for // the account. // +// * UnsupportedTLD +// Amazon Route 53 does not support this top-level domain (TLD). +// // See also, https://docs.aws.amazon.com/goto/WebAPI/route53domains-2014-05-15/CancelDomainTransferToAnotherAwsAccount func (c *Route53Domains) CancelDomainTransferToAnotherAwsAccount(input *CancelDomainTransferToAnotherAwsAccountInput) (*CancelDomainTransferToAnotherAwsAccountOutput, error) { req, out := c.CancelDomainTransferToAnotherAwsAccountRequest(input) @@ -379,6 +390,111 @@ func (c *Route53Domains) CheckDomainTransferabilityWithContext(ctx aws.Context, return out, req.Send() } +const opDeleteDomain = "DeleteDomain" + +// DeleteDomainRequest generates a "aws/request.Request" representing the +// client's request for the DeleteDomain 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 DeleteDomain for more information on using the DeleteDomain +// 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 DeleteDomainRequest method. +// req, resp := client.DeleteDomainRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/route53domains-2014-05-15/DeleteDomain +func (c *Route53Domains) DeleteDomainRequest(input *DeleteDomainInput) (req *request.Request, output *DeleteDomainOutput) { + op := &request.Operation{ + Name: opDeleteDomain, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteDomainInput{} + } + + output = &DeleteDomainOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteDomain API operation for Amazon Route 53 Domains. +// +// This operation deletes the specified domain. This action is permanent. For +// more information, see Deleting a domain name registration (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/domain-delete.html). +// +// To transfer the domain registration to another registrar, use the transfer +// process that’s provided by the registrar to which you want to transfer +// the registration. Otherwise, the following apply: +// +// You can’t get a refund for the cost of a deleted domain registration. +// +// The registry for the top-level domain might hold the domain name for a brief +// time before releasing it for other users to register (varies by registry). +// +// When the registration has been deleted, we'll send you a confirmation to +// the registrant contact. The email will come from noreply@domainnameverification.net +// or noreply@registrar.amazon.com. +// +// 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 Route 53 Domains's +// API operation DeleteDomain for usage and error information. +// +// Returned Error Types: +// * InvalidInput +// The requested item is not acceptable. For example, for APIs that accept a +// domain name, the request might specify a domain name that doesn't belong +// to the account that submitted the request. For AcceptDomainTransferFromAnotherAwsAccount, +// the password might be invalid. +// +// * DuplicateRequest +// The request is already in progress for the domain. +// +// * TLDRulesViolation +// The top-level domain does not support this operation. +// +// * UnsupportedTLD +// Amazon Route 53 does not support this top-level domain (TLD). +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/route53domains-2014-05-15/DeleteDomain +func (c *Route53Domains) DeleteDomain(input *DeleteDomainInput) (*DeleteDomainOutput, error) { + req, out := c.DeleteDomainRequest(input) + return out, req.Send() +} + +// DeleteDomainWithContext is the same as DeleteDomain with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteDomain 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 *Route53Domains) DeleteDomainWithContext(ctx aws.Context, input *DeleteDomainInput, opts ...request.Option) (*DeleteDomainOutput, error) { + req, out := c.DeleteDomainRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteTagsForDomain = "DeleteTagsForDomain" // DeleteTagsForDomainRequest generates a "aws/request.Request" representing the @@ -707,7 +823,7 @@ func (c *Route53Domains) EnableDomainAutoRenewRequest(input *EnableDomainAutoRen // // This operation configures Amazon Route 53 to automatically renew the specified // domain before the domain registration expires. The cost of renewing your -// domain registration is billed to your AWS account. +// domain registration is billed to your Amazon Web Services account. // // The period during which you can renew a domain name varies by TLD. For a // list of TLDs and their renewal policies, see Domains That You Can Register @@ -996,8 +1112,8 @@ func (c *Route53Domains) GetDomainDetailRequest(input *GetDomainDetailInput) (re // GetDomainDetail API operation for Amazon Route 53 Domains. // // This operation returns detailed information about a specified domain that -// is associated with the current AWS account. Contact information for the domain -// is also returned as part of the output. +// is associated with the current Amazon Web Services account. Contact information +// for the domain is also returned as part of the output. // // 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 @@ -1256,7 +1372,8 @@ func (c *Route53Domains) ListDomainsRequest(input *ListDomainsInput) (req *reque // ListDomains API operation for Amazon Route 53 Domains. // // This operation returns all the domain names registered with Amazon Route -// 53 for the current AWS account. +// 53 for the current Amazon Web Services account if no filtering conditions +// are used. // // 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 @@ -1400,6 +1517,8 @@ func (c *Route53Domains) ListOperationsRequest(input *ListOperationsInput) (req // ID and that have ever been performed on domains that were registered by the // current account. // +// This command runs only in the us-east-1 Region. +// // 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. @@ -1488,6 +1607,160 @@ func (c *Route53Domains) ListOperationsPagesWithContext(ctx aws.Context, input * return p.Err() } +const opListPrices = "ListPrices" + +// ListPricesRequest generates a "aws/request.Request" representing the +// client's request for the ListPrices 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 ListPrices for more information on using the ListPrices +// 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 ListPricesRequest method. +// req, resp := client.ListPricesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/route53domains-2014-05-15/ListPrices +func (c *Route53Domains) ListPricesRequest(input *ListPricesInput) (req *request.Request, output *ListPricesOutput) { + op := &request.Operation{ + Name: opListPrices, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"Marker"}, + OutputTokens: []string{"NextPageMarker"}, + LimitToken: "MaxItems", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListPricesInput{} + } + + output = &ListPricesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListPrices API operation for Amazon Route 53 Domains. +// +// Lists the following prices for either all the TLDs supported by Route 53, +// or the specified TLD: +// +// * Registration +// +// * Transfer +// +// * Owner change +// +// * Domain renewal +// +// * Domain restoration +// +// 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 Route 53 Domains's +// API operation ListPrices for usage and error information. +// +// Returned Error Types: +// * InvalidInput +// The requested item is not acceptable. For example, for APIs that accept a +// domain name, the request might specify a domain name that doesn't belong +// to the account that submitted the request. For AcceptDomainTransferFromAnotherAwsAccount, +// the password might be invalid. +// +// * UnsupportedTLD +// Amazon Route 53 does not support this top-level domain (TLD). +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/route53domains-2014-05-15/ListPrices +func (c *Route53Domains) ListPrices(input *ListPricesInput) (*ListPricesOutput, error) { + req, out := c.ListPricesRequest(input) + return out, req.Send() +} + +// ListPricesWithContext is the same as ListPrices with the addition of +// the ability to pass a context and additional request options. +// +// See ListPrices 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 *Route53Domains) ListPricesWithContext(ctx aws.Context, input *ListPricesInput, opts ...request.Option) (*ListPricesOutput, error) { + req, out := c.ListPricesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListPricesPages iterates over the pages of a ListPrices operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListPrices method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListPrices operation. +// pageNum := 0 +// err := client.ListPricesPages(params, +// func(page *route53domains.ListPricesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *Route53Domains) ListPricesPages(input *ListPricesInput, fn func(*ListPricesOutput, bool) bool) error { + return c.ListPricesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListPricesPagesWithContext same as ListPricesPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Route53Domains) ListPricesPagesWithContext(ctx aws.Context, input *ListPricesInput, fn func(*ListPricesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListPricesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListPricesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListPricesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListTagsForDomain = "ListTagsForDomain" // ListTagsForDomainRequest generates a "aws/request.Request" representing the @@ -1644,14 +1917,16 @@ func (c *Route53Domains) RegisterDomainRequest(input *RegisterDomainInput) (req // information either for Amazon Registrar (for .com, .net, and .org domains) // or for our registrar associate, Gandi (for all other TLDs). If you don't // enable privacy protection, WHOIS queries return the information that you -// entered for the registrant, admin, and tech contacts. +// entered for the administrative, registrant, and technical contacts. You +// must specify the same privacy setting for the administrative, registrant, +// and technical contacts. // // * If registration is successful, returns an operation ID that you can // use to track the progress and completion of the action. If the request // is not completed successfully, the domain registrant is notified by email. // -// * Charges your AWS account an amount based on the top-level domain. For -// more information, see Amazon Route 53 Pricing (http://aws.amazon.com/route53/pricing/). +// * Charges your Amazon Web Services account an amount based on the top-level +// domain. For more information, see Amazon Route 53 Pricing (http://aws.amazon.com/route53/pricing/). // // 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 @@ -1749,9 +2024,9 @@ func (c *Route53Domains) RejectDomainTransferFromAnotherAwsAccountRequest(input // RejectDomainTransferFromAnotherAwsAccount API operation for Amazon Route 53 Domains. // -// Rejects the transfer of a domain from another AWS account to the current -// AWS account. You initiate a transfer between AWS accounts using TransferDomainToAnotherAwsAccount -// (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html). +// Rejects the transfer of a domain from another Amazon Web Services account +// to the current Amazon Web Services account. You initiate a transfer betweenAmazon +// Web Services accounts using TransferDomainToAnotherAwsAccount (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html). // // Use either ListOperations (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_ListOperations.html) // or GetOperationDetail (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html) @@ -1777,6 +2052,9 @@ func (c *Route53Domains) RejectDomainTransferFromAnotherAwsAccountRequest(input // The number of operations or jobs running exceeded the allowed threshold for // the account. // +// * UnsupportedTLD +// Amazon Route 53 does not support this top-level domain (TLD). +// // See also, https://docs.aws.amazon.com/goto/WebAPI/route53domains-2014-05-15/RejectDomainTransferFromAnotherAwsAccount func (c *Route53Domains) RejectDomainTransferFromAnotherAwsAccount(input *RejectDomainTransferFromAnotherAwsAccountInput) (*RejectDomainTransferFromAnotherAwsAccountOutput, error) { req, out := c.RejectDomainTransferFromAnotherAwsAccountRequest(input) @@ -1844,7 +2122,7 @@ func (c *Route53Domains) RenewDomainRequest(input *RenewDomainInput) (req *reque // RenewDomain API operation for Amazon Route 53 Domains. // // This operation renews a domain for the specified number of years. The cost -// of renewing your domain is billed to your AWS account. +// of renewing your domain is billed to your Amazon Web Services account. // // We recommend that you renew your domain several weeks before the expiration // date. Some TLD registries delete domains before the expiration date if you @@ -2134,8 +2412,8 @@ func (c *Route53Domains) TransferDomainRequest(input *TransferDomainInput) (req // Transferring Registration for a Domain to Amazon Route 53 (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/domain-transfer-to-route-53.html) // in the Amazon Route 53 Developer Guide. // -// * For information about how to transfer a domain from one AWS account -// to another, see TransferDomainToAnotherAwsAccount (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html). +// * For information about how to transfer a domain from one Amazon Web Services +// account to another, see TransferDomainToAnotherAwsAccount (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html). // // * For information about how to transfer a domain to another domain registrar, // see Transferring a Domain from Amazon Route 53 to Another Registrar (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/domain-transfer-from-route-53.html) @@ -2253,12 +2531,12 @@ func (c *Route53Domains) TransferDomainToAnotherAwsAccountRequest(input *Transfe // TransferDomainToAnotherAwsAccount API operation for Amazon Route 53 Domains. // -// Transfers a domain from the current AWS account to another AWS account. Note -// the following: +// Transfers a domain from the current Amazon Web Services account to another +// Amazon Web Services account. Note the following: // -// * The AWS account that you're transferring the domain to must accept the -// transfer. If the other account doesn't accept the transfer within 3 days, -// we cancel the transfer. See AcceptDomainTransferFromAnotherAwsAccount +// * The Amazon Web Services account that you're transferring the domain +// to must accept the transfer. If the other account doesn't accept the transfer +// within 3 days, we cancel the transfer. See AcceptDomainTransferFromAnotherAwsAccount // (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_AcceptDomainTransferFromAnotherAwsAccount.html). // // * You can cancel the transfer before the other account accepts it. See @@ -2267,12 +2545,12 @@ func (c *Route53Domains) TransferDomainToAnotherAwsAccountRequest(input *Transfe // * The other account can reject the transfer. See RejectDomainTransferFromAnotherAwsAccount // (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_RejectDomainTransferFromAnotherAwsAccount.html). // -// When you transfer a domain from one AWS account to another, Route 53 doesn't -// transfer the hosted zone that is associated with the domain. DNS resolution -// isn't affected if the domain and the hosted zone are owned by separate accounts, -// so transferring the hosted zone is optional. For information about transferring -// the hosted zone to another AWS account, see Migrating a Hosted Zone to a -// Different AWS Account (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zones-migrating.html) +// When you transfer a domain from one Amazon Web Services account to another, +// Route 53 doesn't transfer the hosted zone that is associated with the domain. +// DNS resolution isn't affected if the domain and the hosted zone are owned +// by separate accounts, so transferring the hosted zone is optional. For information +// about transferring the hosted zone to another Amazon Web Services account, +// see Migrating a Hosted Zone to a Different Amazon Web Services Account (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zones-migrating.html) // in the Amazon Route 53 Developer Guide. // // Use either ListOperations (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_ListOperations.html) @@ -2302,6 +2580,9 @@ func (c *Route53Domains) TransferDomainToAnotherAwsAccountRequest(input *Transfe // * DuplicateRequest // The request is already in progress for the domain. // +// * UnsupportedTLD +// Amazon Route 53 does not support this top-level domain (TLD). +// // See also, https://docs.aws.amazon.com/goto/WebAPI/route53domains-2014-05-15/TransferDomainToAnotherAwsAccount func (c *Route53Domains) TransferDomainToAnotherAwsAccount(input *TransferDomainToAnotherAwsAccountInput) (*TransferDomainToAnotherAwsAccountOutput, error) { req, out := c.TransferDomainToAnotherAwsAccountRequest(input) @@ -2476,9 +2757,12 @@ func (c *Route53Domains) UpdateDomainContactPrivacyRequest(input *UpdateDomainCo // .net, and .org domains) or with contact information for our registrar associate, // Gandi. // +// You must specify the same privacy setting for the administrative, registrant, +// and technical contacts. +// // This operation affects only the contact information for the specified contact -// type (registrant, administrator, or tech). If the request succeeds, Amazon -// Route 53 returns an operation ID that you can use with GetOperationDetail +// type (administrative, registrant, or technical). If the request succeeds, +// Amazon Route 53 returns an operation ID that you can use with GetOperationDetail // (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html) // to track the progress and completion of the action. If the request doesn't // complete successfully, the domain registrant will be notified by email. @@ -2767,6 +3051,12 @@ func (c *Route53Domains) ViewBillingRequest(input *ViewBillingInput) (req *reque Name: opViewBilling, HTTPMethod: "POST", HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"Marker"}, + OutputTokens: []string{"NextPageMarker"}, + LimitToken: "MaxItems", + TruncationToken: "", + }, } if input == nil { @@ -2780,8 +3070,8 @@ func (c *Route53Domains) ViewBillingRequest(input *ViewBillingInput) (req *reque // ViewBilling API operation for Amazon Route 53 Domains. // -// Returns all the domain-related billing records for the current AWS account -// for a specified period +// Returns all the domain-related billing records for the current Amazon Web +// Services account for a specified period // // 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 @@ -2819,13 +3109,65 @@ func (c *Route53Domains) ViewBillingWithContext(ctx aws.Context, input *ViewBill return out, req.Send() } +// ViewBillingPages iterates over the pages of a ViewBilling operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ViewBilling method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ViewBilling operation. +// pageNum := 0 +// err := client.ViewBillingPages(params, +// func(page *route53domains.ViewBillingOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *Route53Domains) ViewBillingPages(input *ViewBillingInput, fn func(*ViewBillingOutput, bool) bool) error { + return c.ViewBillingPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ViewBillingPagesWithContext same as ViewBillingPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Route53Domains) ViewBillingPagesWithContext(ctx aws.Context, input *ViewBillingInput, fn func(*ViewBillingOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ViewBillingInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ViewBillingRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ViewBillingOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + // The AcceptDomainTransferFromAnotherAwsAccount request includes the following // elements. type AcceptDomainTransferFromAnotherAwsAccountInput struct { _ struct{} `type:"structure"` - // The name of the domain that was specified when another AWS account submitted - // a TransferDomainToAnotherAwsAccount (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html) + // The name of the domain that was specified when another Amazon Web Services + // account submitted a TransferDomainToAnotherAwsAccount (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html) // request. // // DomainName is a required field @@ -2998,7 +3340,7 @@ type CancelDomainTransferToAnotherAwsAccountInput struct { _ struct{} `type:"structure"` // The name of the domain for which you want to cancel the transfer to another - // AWS account. + // Amazon Web Services account. // // DomainName is a required field DomainName *string `type:"string" required:"true"` @@ -3368,8 +3710,8 @@ type ContactDetail struct { // for your TLD, see Domains that You Can Register with Amazon Route 53 (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar-tld-list.html) // in the Amazon Route 53 Developer Guide // - // * For .es domains, if you specify PERSON, you must specify INDIVIDUAL - // for the value of ES_LEGAL_FORM. + // * For .es domains, the value of ContactType must be PERSON for all three + // contacts. ContactType *string `type:"string" enum:"ContactType"` // Code for the country of the contact's address. @@ -3533,6 +3875,84 @@ func (s *ContactDetail) SetZipCode(v string) *ContactDetail { return s } +type DeleteDomainInput struct { + _ struct{} `type:"structure"` + + // Name of the domain to be deleted. + // + // DomainName is a required field + DomainName *string `type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteDomainInput) 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 DeleteDomainInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteDomainInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteDomainInput"} + if s.DomainName == nil { + invalidParams.Add(request.NewErrParamRequired("DomainName")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainName sets the DomainName field's value. +func (s *DeleteDomainInput) SetDomainName(v string) *DeleteDomainInput { + s.DomainName = &v + return s +} + +type DeleteDomainOutput struct { + _ struct{} `type:"structure"` + + // Identifier for tracking the progress of the request. To query the operation + // status, use GetOperationDetail (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html). + OperationId *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 DeleteDomainOutput) 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 DeleteDomainOutput) GoString() string { + return s.String() +} + +// SetOperationId sets the OperationId field's value. +func (s *DeleteDomainOutput) SetOperationId(v string) *DeleteDomainOutput { + s.OperationId = &v + return s +} + // The DeleteTagsForDomainRequest includes the following elements. type DeleteTagsForDomainInput struct { _ struct{} `type:"structure"` @@ -3831,6 +4251,83 @@ func (s *DomainLimitExceeded) RequestID() string { return s.RespMetadata.RequestID } +// Information about the domain price associated with a TLD. +type DomainPrice struct { + _ struct{} `type:"structure"` + + // The price for changing domain ownership. + ChangeOwnershipPrice *PriceWithCurrency `type:"structure"` + + // The name of the TLD for which the prices apply. + Name *string `min:"1" type:"string"` + + // The price for domain registration with Route 53. + RegistrationPrice *PriceWithCurrency `type:"structure"` + + // The price for renewing domain registration with Route 53. + RenewalPrice *PriceWithCurrency `type:"structure"` + + // The price for restoring the domain with Route 53. + RestorationPrice *PriceWithCurrency `type:"structure"` + + // The price for transferring the domain registration to Route 53. + TransferPrice *PriceWithCurrency `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 DomainPrice) 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 DomainPrice) GoString() string { + return s.String() +} + +// SetChangeOwnershipPrice sets the ChangeOwnershipPrice field's value. +func (s *DomainPrice) SetChangeOwnershipPrice(v *PriceWithCurrency) *DomainPrice { + s.ChangeOwnershipPrice = v + return s +} + +// SetName sets the Name field's value. +func (s *DomainPrice) SetName(v string) *DomainPrice { + s.Name = &v + return s +} + +// SetRegistrationPrice sets the RegistrationPrice field's value. +func (s *DomainPrice) SetRegistrationPrice(v *PriceWithCurrency) *DomainPrice { + s.RegistrationPrice = v + return s +} + +// SetRenewalPrice sets the RenewalPrice field's value. +func (s *DomainPrice) SetRenewalPrice(v *PriceWithCurrency) *DomainPrice { + s.RenewalPrice = v + return s +} + +// SetRestorationPrice sets the RestorationPrice field's value. +func (s *DomainPrice) SetRestorationPrice(v *PriceWithCurrency) *DomainPrice { + s.RestorationPrice = v + return s +} + +// SetTransferPrice sets the TransferPrice field's value. +func (s *DomainPrice) SetTransferPrice(v *PriceWithCurrency) *DomainPrice { + s.TransferPrice = v + return s +} + // Information about one suggested domain name. type DomainSuggestion struct { _ struct{} `type:"structure"` @@ -4289,10 +4786,19 @@ type ExtraParam struct { // // .es // - // * ES_IDENTIFICATION Specify the applicable value: For contacts inside - // Spain: Enter your passport ID. For contacts outside of Spain: Enter the - // VAT identification number for the company. For .es domains, the value - // of ContactType must be PERSON. + // * ES_IDENTIFICATION The value of ES_IDENTIFICATION depends on the following + // values: The value of ES_LEGAL_FORM The value of ES_IDENTIFICATION_TYPE + // If ES_LEGAL_FORM is any value other than INDIVIDUAL: Specify 1 letter + // + 8 numbers (CIF [Certificado de Identificación Fiscal]) Example: B12345678 + // If ES_LEGAL_FORM is INDIVIDUAL, the value that you specify for ES_IDENTIFICATION + // depends on the value of ES_IDENTIFICATION_TYPE: If ES_IDENTIFICATION_TYPE + // is DNI_AND_NIF (for Spanish contacts): Specify 8 numbers + 1 letter (DNI + // [Documento Nacional de Identidad], NIF [Número de Identificación Fiscal]) + // Example: 12345678M If ES_IDENTIFICATION_TYPE is NIE (for foreigners with + // legal residence): Specify 1 letter + 7 numbers + 1 letter ( NIE [Número + // de Identidad de Extranjero]) Example: Y1234567X If ES_IDENTIFICATION_TYPE + // is OTHER (for contacts outside of Spain): Specify a passport number, drivers + // license number, or national identity card number // // * ES_IDENTIFICATION_TYPE Valid values include the following: DNI_AND_NIF // (For Spanish contacts) NIE (For foreigners with legal residence) OTHER @@ -4310,6 +4816,10 @@ type ExtraParam struct { // SPORTS_FEDERATION SPORTS_LIMITED_COMPANY TEMPORARY_ALLIANCE_OF_ENTERPRISES // TRADE_UNION WORKER_OWNED_COMPANY WORKER_OWNED_LIMITED_COMPANY // + // .eu + // + // * EU_COUNTRY_OF_CITIZENSHIP + // // .fi // // * BIRTH_DATE_IN_YYYY_MM_DD @@ -4387,8 +4897,12 @@ type ExtraParam struct { // The value that corresponds with the name of an extra parameter. // + // Value is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by ExtraParam's + // String and GoString methods. + // // Value is a required field - Value *string `type:"string" required:"true"` + Value *string `type:"string" required:"true" sensitive:"true"` } // String returns the string representation. @@ -4437,6 +4951,92 @@ func (s *ExtraParam) SetValue(v string) *ExtraParam { return s } +// Information for the filtering of a list of domains returned by ListDomains +// (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains__ListDomains.html). +type FilterCondition struct { + _ struct{} `type:"structure"` + + // Name of the field which should be used for filtering the list of domains. + // + // Name is a required field + Name *string `type:"string" required:"true" enum:"ListDomainsAttributeName"` + + // The operator values for filtering domain names. The values can be: + // + // * LE: Less than, or equal to + // + // * GE: Greater than, or equal to + // + // * BEGINS_WITH: Begins with + // + // Operator is a required field + Operator *string `type:"string" required:"true" enum:"Operator"` + + // An array of strings presenting values to compare. Only 1 item in the list + // is currently supported. + // + // Values is a required field + Values []*string `min:"1" type:"list" 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 FilterCondition) 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 FilterCondition) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *FilterCondition) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "FilterCondition"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Operator == nil { + invalidParams.Add(request.NewErrParamRequired("Operator")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *FilterCondition) SetName(v string) *FilterCondition { + s.Name = &v + return s +} + +// SetOperator sets the Operator field's value. +func (s *FilterCondition) SetOperator(v string) *FilterCondition { + s.Operator = &v + return s +} + +// SetValues sets the Values field's value. +func (s *FilterCondition) SetValues(v []*string) *FilterCondition { + s.Values = v + return s +} + type GetContactReachabilityStatusInput struct { _ struct{} `type:"structure"` @@ -4604,7 +5204,7 @@ type GetDomainDetailOutput struct { // time (UTC). CreationDate *time.Time `type:"timestamp"` - // Reserved for future use. + // Deprecated. DnsSec *string `type:"string"` // The name of a domain. @@ -5168,12 +5768,17 @@ func (s *InvalidInput) RequestID() string { type ListDomainsInput struct { _ struct{} `type:"structure"` + // A complex type that contains information about the filters applied during + // the ListDomains request. The filter conditions can include domain name and + // domain expiration. + FilterConditions []*FilterCondition `type:"list"` + // For an initial request for a list of domains, omit this element. If the number - // of domains that are associated with the current AWS account is greater than - // the value that you specified for MaxItems, you can use Marker to return additional - // domains. Get the value of NextPageMarker from the previous response, and - // submit another request that includes the value of NextPageMarker in the Marker - // element. + // of domains that are associated with the current Amazon Web Services account + // is greater than the value that you specified for MaxItems, you can use Marker + // to return additional domains. Get the value of NextPageMarker from the previous + // response, and submit another request that includes the value of NextPageMarker + // in the Marker element. // // Constraints: The marker must match the value specified in the previous request. Marker *string `type:"string"` @@ -5182,6 +5787,10 @@ type ListDomainsInput struct { // // Default: 20 MaxItems *int64 `type:"integer"` + + // A complex type that contains information about the requested ordering of + // domains in the returned list. + SortCondition *SortCondition `type:"structure"` } // String returns the string representation. @@ -5193,13 +5802,44 @@ func (s ListDomainsInput) 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 ListDomainsInput) GoString() string { - return s.String() +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListDomainsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDomainsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDomainsInput"} + if s.FilterConditions != nil { + for i, v := range s.FilterConditions { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "FilterConditions", i), err.(request.ErrInvalidParams)) + } + } + } + if s.SortCondition != nil { + if err := s.SortCondition.Validate(); err != nil { + invalidParams.AddNested("SortCondition", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilterConditions sets the FilterConditions field's value. +func (s *ListDomainsInput) SetFilterConditions(v []*FilterCondition) *ListDomainsInput { + s.FilterConditions = v + return s } // SetMarker sets the Marker field's value. @@ -5214,11 +5854,17 @@ func (s *ListDomainsInput) SetMaxItems(v int64) *ListDomainsInput { return s } +// SetSortCondition sets the SortCondition field's value. +func (s *ListDomainsInput) SetSortCondition(v *SortCondition) *ListDomainsInput { + s.SortCondition = v + return s +} + // The ListDomains response includes the following elements. type ListDomainsOutput struct { _ struct{} `type:"structure"` - // A summary of domains. + // A list of domains. // // Domains is a required field Domains []*DomainSummary `type:"list" required:"true"` @@ -5363,6 +6009,127 @@ func (s *ListOperationsOutput) SetOperations(v []*OperationSummary) *ListOperati return s } +type ListPricesInput struct { + _ struct{} `type:"structure"` + + // For an initial request for a list of prices, omit this element. If the number + // of prices that are not yet complete is greater than the value that you specified + // for MaxItems, you can use Marker to return additional prices. Get the value + // of NextPageMarker from the previous response, and submit another request + // that includes the value of NextPageMarker in the Marker element. + // + // Used only for all TLDs. If you specify a TLD, don't specify a Marker. + Marker *string `type:"string"` + + // Number of Prices to be returned. + // + // Used only for all TLDs. If you specify a TLD, don't specify a MaxItems. + MaxItems *int64 `type:"integer"` + + // The TLD for which you want to receive the pricing information. For example. + // .net. + // + // If a Tld value is not provided, a list of prices for all TLDs supported by + // Route 53 is returned. + Tld *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 ListPricesInput) 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 ListPricesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListPricesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListPricesInput"} + if s.Tld != nil && len(*s.Tld) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tld", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMarker sets the Marker field's value. +func (s *ListPricesInput) SetMarker(v string) *ListPricesInput { + s.Marker = &v + return s +} + +// SetMaxItems sets the MaxItems field's value. +func (s *ListPricesInput) SetMaxItems(v int64) *ListPricesInput { + s.MaxItems = &v + return s +} + +// SetTld sets the Tld field's value. +func (s *ListPricesInput) SetTld(v string) *ListPricesInput { + s.Tld = &v + return s +} + +type ListPricesOutput struct { + _ struct{} `type:"structure"` + + // If there are more prices than you specified for MaxItems in the request, + // submit another request and include the value of NextPageMarker in the value + // of Marker. + // + // Used only for all TLDs. If you specify a TLD, don't specify a NextPageMarker. + NextPageMarker *string `type:"string"` + + // A complex type that includes all the pricing information. If you specify + // a TLD, this array contains only the pricing for that TLD. + // + // Prices is a required field + Prices []*DomainPrice `type:"list" 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 ListPricesOutput) 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 ListPricesOutput) GoString() string { + return s.String() +} + +// SetNextPageMarker sets the NextPageMarker field's value. +func (s *ListPricesOutput) SetNextPageMarker(v string) *ListPricesOutput { + s.NextPageMarker = &v + return s +} + +// SetPrices sets the Prices field's value. +func (s *ListPricesOutput) SetPrices(v []*DomainPrice) *ListPricesOutput { + s.Prices = v + return s +} + // The ListTagsForDomainRequest includes the following elements. type ListTagsForDomainInput struct { _ struct{} `type:"structure"` @@ -5641,6 +6408,51 @@ func (s *OperationSummary) SetType(v string) *OperationSummary { return s } +// Currency-specific price information. +type PriceWithCurrency struct { + _ struct{} `type:"structure"` + + // The currency specifier. + // + // Currency is a required field + Currency *string `min:"3" type:"string" required:"true"` + + // The price of a domain, in a specific currency. + // + // Price is a required field + Price *float64 `type:"double" 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 PriceWithCurrency) 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 PriceWithCurrency) GoString() string { + return s.String() +} + +// SetCurrency sets the Currency field's value. +func (s *PriceWithCurrency) SetCurrency(v string) *PriceWithCurrency { + s.Currency = &v + return s +} + +// SetPrice sets the Price field's value. +func (s *PriceWithCurrency) SetPrice(v float64) *PriceWithCurrency { + s.Price = &v + return s +} + // The RegisterDomain request includes the following elements. type RegisterDomainInput struct { _ struct{} `type:"structure"` @@ -5705,6 +6517,9 @@ type RegisterDomainInput struct { // associate, Gandi (for all other TLDs). If you specify false, WHOIS queries // return the information that you entered for the admin contact. // + // You must specify the same privacy setting for the administrative, registrant, + // and technical contacts. + // // Default: true PrivacyProtectAdminContact *bool `type:"boolean"` @@ -5715,6 +6530,9 @@ type RegisterDomainInput struct { // return the information that you entered for the registrant contact (the domain // owner). // + // You must specify the same privacy setting for the administrative, registrant, + // and technical contacts. + // // Default: true PrivacyProtectRegistrantContact *bool `type:"boolean"` @@ -5724,6 +6542,9 @@ type RegisterDomainInput struct { // associate, Gandi (for all other TLDs). If you specify false, WHOIS queries // return the information that you entered for the technical contact. // + // You must specify the same privacy setting for the administrative, registrant, + // and technical contacts. + // // Default: true PrivacyProtectTechContact *bool `type:"boolean"` @@ -5909,8 +6730,8 @@ func (s *RegisterDomainOutput) SetOperationId(v string) *RegisterDomainOutput { type RejectDomainTransferFromAnotherAwsAccountInput struct { _ struct{} `type:"structure"` - // The name of the domain that was specified when another AWS account submitted - // a TransferDomainToAnotherAwsAccount (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html) + // The name of the domain that was specified when another Amazon Web Services + // account submitted a TransferDomainToAnotherAwsAccount (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_TransferDomainToAnotherAwsAccount.html) // request. // // DomainName is a required field @@ -6274,6 +7095,72 @@ func (s *RetrieveDomainAuthCodeOutput) SetAuthCode(v string) *RetrieveDomainAuth return s } +// Information for sorting a list of domains. +type SortCondition struct { + _ struct{} `type:"structure"` + + // Field to be used for sorting the list of domains. It can be either the name + // or the expiration for a domain. Note that if filterCondition is used in the + // same ListDomains (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains__ListDomains.html) + // call, the field used for sorting has to be the same as the field used for + // filtering. + // + // Name is a required field + Name *string `type:"string" required:"true" enum:"ListDomainsAttributeName"` + + // The sort order for a list of domains. Either ascending (ASC) or descending + // (DES). + // + // SortOrder is a required field + SortOrder *string `type:"string" required:"true" enum:"SortOrder"` +} + +// 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 SortCondition) 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 SortCondition) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SortCondition) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SortCondition"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.SortOrder == nil { + invalidParams.Add(request.NewErrParamRequired("SortOrder")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *SortCondition) SetName(v string) *SortCondition { + s.Name = &v + return s +} + +// SetSortOrder sets the SortOrder field's value. +func (s *SortCondition) SetSortOrder(v string) *SortCondition { + s.SortOrder = &v + return s +} + // The top-level domain does not support this operation. type TLDRulesViolation struct { _ struct{} `type:"structure"` @@ -6348,7 +7235,7 @@ type Tag struct { // Valid values: A-Z, a-z, 0-9, space, ".:/=+\-@" // // Constraints: Each key can be 1-128 characters long. - Key *string `type:"string"` + Key *string `min:"1" type:"string"` // The value of a tag. // @@ -6376,6 +7263,19 @@ func (s Tag) GoString() string { return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *Tag) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Tag"} + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetKey sets the Key field's value. func (s *Tag) SetKey(v string) *Tag { s.Key = &v @@ -6456,6 +7356,9 @@ type TransferDomainInput struct { // associate, Gandi (for all other TLDs). If you specify false, WHOIS queries // return the information that you entered for the admin contact. // + // You must specify the same privacy setting for the administrative, registrant, + // and technical contacts. + // // Default: true PrivacyProtectAdminContact *bool `type:"boolean"` @@ -6466,6 +7369,9 @@ type TransferDomainInput struct { // return the information that you entered for the registrant contact (domain // owner). // + // You must specify the same privacy setting for the administrative, registrant, + // and technical contacts. + // // Default: true PrivacyProtectRegistrantContact *bool `type:"boolean"` @@ -6475,6 +7381,9 @@ type TransferDomainInput struct { // associate, Gandi (for all other TLDs). If you specify false, WHOIS queries // return the information that you entered for the technical contact. // + // You must specify the same privacy setting for the administrative, registrant, + // and technical contacts. + // // Default: true PrivacyProtectTechContact *bool `type:"boolean"` @@ -6679,14 +7588,14 @@ func (s *TransferDomainOutput) SetOperationId(v string) *TransferDomainOutput { type TransferDomainToAnotherAwsAccountInput struct { _ struct{} `type:"structure"` - // The account ID of the AWS account that you want to transfer the domain to, - // for example, 111122223333. + // The account ID of the Amazon Web Services account that you want to transfer + // the domain to, for example, 111122223333. // // AccountId is a required field - AccountId *string `type:"string" required:"true"` + AccountId *string `min:"12" type:"string" required:"true"` - // The name of the domain that you want to transfer from the current AWS account - // to another account. + // The name of the domain that you want to transfer from the current Amazon + // Web Services account to another account. // // DomainName is a required field DomainName *string `type:"string" required:"true"` @@ -6716,6 +7625,9 @@ func (s *TransferDomainToAnotherAwsAccountInput) Validate() error { if s.AccountId == nil { invalidParams.Add(request.NewErrParamRequired("AccountId")) } + if s.AccountId != nil && len(*s.AccountId) < 12 { + invalidParams.Add(request.NewErrParamMinLen("AccountId", 12)) + } if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } @@ -6746,8 +7658,8 @@ type TransferDomainToAnotherAwsAccountOutput struct { // status, use GetOperationDetail (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_GetOperationDetail.html). OperationId *string `type:"string"` - // To finish transferring a domain to another AWS account, the account that - // the domain is being transferred to must submit an AcceptDomainTransferFromAnotherAwsAccount + // To finish transferring a domain to another Amazon Web Services account, the + // account that the domain is being transferred to must submit an AcceptDomainTransferFromAnotherAwsAccount // (https://docs.aws.amazon.com/Route53/latest/APIReference/API_domains_AcceptDomainTransferFromAnotherAwsAccount.html) // request. The request must include the value of the Password element that // was returned in the TransferDomainToAnotherAwsAccount response. @@ -6994,6 +7906,9 @@ type UpdateDomainContactPrivacyInput struct { // for Amazon Registrar (for .com, .net, and .org domains) or for our registrar // associate, Gandi (for all other TLDs). If you specify false, WHOIS queries // return the information that you entered for the admin contact. + // + // You must specify the same privacy setting for the administrative, registrant, + // and technical contacts. AdminPrivacy *bool `type:"boolean"` // The name of the domain that you want to update the privacy setting for. @@ -7007,6 +7922,9 @@ type UpdateDomainContactPrivacyInput struct { // associate, Gandi (for all other TLDs). If you specify false, WHOIS queries // return the information that you entered for the registrant contact (domain // owner). + // + // You must specify the same privacy setting for the administrative, registrant, + // and technical contacts. RegistrantPrivacy *bool `type:"boolean"` // Whether you want to conceal contact information from WHOIS queries. If you @@ -7014,6 +7932,9 @@ type UpdateDomainContactPrivacyInput struct { // for Amazon Registrar (for .com, .net, and .org domains) or for our registrar // associate, Gandi (for all other TLDs). If you specify false, WHOIS queries // return the information that you entered for the technical contact. + // + // You must specify the same privacy setting for the administrative, registrant, + // and technical contacts. TechPrivacy *bool `type:"boolean"` } @@ -7125,7 +8046,11 @@ type UpdateDomainNameserversInput struct { // The authorization key for .fi domains // // Deprecated: FIAuthKey has been deprecated - FIAuthKey *string `deprecated:"true" type:"string"` + // + // FIAuthKey is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by UpdateDomainNameserversInput's + // String and GoString methods. + FIAuthKey *string `deprecated:"true" type:"string" sensitive:"true"` // A list of new name servers for the domain. // @@ -7268,6 +8193,16 @@ func (s *UpdateTagsForDomainInput) Validate() error { if s.DomainName == nil { invalidParams.Add(request.NewErrParamRequired("DomainName")) } + if s.TagsToUpdate != nil { + for i, v := range s.TagsToUpdate { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TagsToUpdate", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -7319,11 +8254,12 @@ type ViewBillingInput struct { End *time.Time `type:"timestamp"` // For an initial request for a list of billing records, omit this element. - // If the number of billing records that are associated with the current AWS - // account during the specified period is greater than the value that you specified - // for MaxItems, you can use Marker to return additional billing records. Get - // the value of NextPageMarker from the previous response, and submit another - // request that includes the value of NextPageMarker in the Marker element. + // If the number of billing records that are associated with the current Amazon + // Web Services account during the specified period is greater than the value + // that you specified for MaxItems, you can use Marker to return additional + // billing records. Get the value of NextPageMarker from the previous response, + // and submit another request that includes the value of NextPageMarker in the + // Marker element. // // Constraints: The marker must match the value of NextPageMarker that was returned // in the previous response. @@ -7454,6 +8390,9 @@ func ContactType_Values() []string { } const ( + // CountryCodeAc is a CountryCode enum value + CountryCodeAc = "AC" + // CountryCodeAd is a CountryCode enum value CountryCodeAd = "AD" @@ -7499,6 +8438,9 @@ const ( // CountryCodeAw is a CountryCode enum value CountryCodeAw = "AW" + // CountryCodeAx is a CountryCode enum value + CountryCodeAx = "AX" + // CountryCodeAz is a CountryCode enum value CountryCodeAz = "AZ" @@ -7541,6 +8483,9 @@ const ( // CountryCodeBo is a CountryCode enum value CountryCodeBo = "BO" + // CountryCodeBq is a CountryCode enum value + CountryCodeBq = "BQ" + // CountryCodeBr is a CountryCode enum value CountryCodeBr = "BR" @@ -7550,6 +8495,9 @@ const ( // CountryCodeBt is a CountryCode enum value CountryCodeBt = "BT" + // CountryCodeBv is a CountryCode enum value + CountryCodeBv = "BV" + // CountryCodeBw is a CountryCode enum value CountryCodeBw = "BW" @@ -7604,6 +8552,9 @@ const ( // CountryCodeCv is a CountryCode enum value CountryCodeCv = "CV" + // CountryCodeCw is a CountryCode enum value + CountryCodeCw = "CW" + // CountryCodeCx is a CountryCode enum value CountryCodeCx = "CX" @@ -7640,6 +8591,9 @@ const ( // CountryCodeEg is a CountryCode enum value CountryCodeEg = "EG" + // CountryCodeEh is a CountryCode enum value + CountryCodeEh = "EH" + // CountryCodeEr is a CountryCode enum value CountryCodeEr = "ER" @@ -7679,6 +8633,12 @@ const ( // CountryCodeGe is a CountryCode enum value CountryCodeGe = "GE" + // CountryCodeGf is a CountryCode enum value + CountryCodeGf = "GF" + + // CountryCodeGg is a CountryCode enum value + CountryCodeGg = "GG" + // CountryCodeGh is a CountryCode enum value CountryCodeGh = "GH" @@ -7694,12 +8654,18 @@ const ( // CountryCodeGn is a CountryCode enum value CountryCodeGn = "GN" + // CountryCodeGp is a CountryCode enum value + CountryCodeGp = "GP" + // CountryCodeGq is a CountryCode enum value CountryCodeGq = "GQ" // CountryCodeGr is a CountryCode enum value CountryCodeGr = "GR" + // CountryCodeGs is a CountryCode enum value + CountryCodeGs = "GS" + // CountryCodeGt is a CountryCode enum value CountryCodeGt = "GT" @@ -7715,6 +8681,9 @@ const ( // CountryCodeHk is a CountryCode enum value CountryCodeHk = "HK" + // CountryCodeHm is a CountryCode enum value + CountryCodeHm = "HM" + // CountryCodeHn is a CountryCode enum value CountryCodeHn = "HN" @@ -7742,6 +8711,9 @@ const ( // CountryCodeIn is a CountryCode enum value CountryCodeIn = "IN" + // CountryCodeIo is a CountryCode enum value + CountryCodeIo = "IO" + // CountryCodeIq is a CountryCode enum value CountryCodeIq = "IQ" @@ -7754,6 +8726,9 @@ const ( // CountryCodeIt is a CountryCode enum value CountryCodeIt = "IT" + // CountryCodeJe is a CountryCode enum value + CountryCodeJe = "JE" + // CountryCodeJm is a CountryCode enum value CountryCodeJm = "JM" @@ -7868,6 +8843,9 @@ const ( // CountryCodeMp is a CountryCode enum value CountryCodeMp = "MP" + // CountryCodeMq is a CountryCode enum value + CountryCodeMq = "MQ" + // CountryCodeMr is a CountryCode enum value CountryCodeMr = "MR" @@ -7904,6 +8882,9 @@ const ( // CountryCodeNe is a CountryCode enum value CountryCodeNe = "NE" + // CountryCodeNf is a CountryCode enum value + CountryCodeNf = "NF" + // CountryCodeNg is a CountryCode enum value CountryCodeNg = "NG" @@ -7961,6 +8942,9 @@ const ( // CountryCodePr is a CountryCode enum value CountryCodePr = "PR" + // CountryCodePs is a CountryCode enum value + CountryCodePs = "PS" + // CountryCodePt is a CountryCode enum value CountryCodePt = "PT" @@ -7973,6 +8957,9 @@ const ( // CountryCodeQa is a CountryCode enum value CountryCodeQa = "QA" + // CountryCodeRe is a CountryCode enum value + CountryCodeRe = "RE" + // CountryCodeRo is a CountryCode enum value CountryCodeRo = "RO" @@ -8009,6 +8996,9 @@ const ( // CountryCodeSi is a CountryCode enum value CountryCodeSi = "SI" + // CountryCodeSj is a CountryCode enum value + CountryCodeSj = "SJ" + // CountryCodeSk is a CountryCode enum value CountryCodeSk = "SK" @@ -8027,12 +9017,18 @@ const ( // CountryCodeSr is a CountryCode enum value CountryCodeSr = "SR" + // CountryCodeSs is a CountryCode enum value + CountryCodeSs = "SS" + // CountryCodeSt is a CountryCode enum value CountryCodeSt = "ST" // CountryCodeSv is a CountryCode enum value CountryCodeSv = "SV" + // CountryCodeSx is a CountryCode enum value + CountryCodeSx = "SX" + // CountryCodeSy is a CountryCode enum value CountryCodeSy = "SY" @@ -8045,6 +9041,9 @@ const ( // CountryCodeTd is a CountryCode enum value CountryCodeTd = "TD" + // CountryCodeTf is a CountryCode enum value + CountryCodeTf = "TF" + // CountryCodeTg is a CountryCode enum value CountryCodeTg = "TG" @@ -8069,6 +9068,9 @@ const ( // CountryCodeTo is a CountryCode enum value CountryCodeTo = "TO" + // CountryCodeTp is a CountryCode enum value + CountryCodeTp = "TP" + // CountryCodeTr is a CountryCode enum value CountryCodeTr = "TR" @@ -8145,6 +9147,7 @@ const ( // CountryCode_Values returns all elements of the CountryCode enum func CountryCode_Values() []string { return []string{ + CountryCodeAc, CountryCodeAd, CountryCodeAe, CountryCodeAf, @@ -8160,6 +9163,7 @@ func CountryCode_Values() []string { CountryCodeAt, CountryCodeAu, CountryCodeAw, + CountryCodeAx, CountryCodeAz, CountryCodeBa, CountryCodeBb, @@ -8174,9 +9178,11 @@ func CountryCode_Values() []string { CountryCodeBm, CountryCodeBn, CountryCodeBo, + CountryCodeBq, CountryCodeBr, CountryCodeBs, CountryCodeBt, + CountryCodeBv, CountryCodeBw, CountryCodeBy, CountryCodeBz, @@ -8195,6 +9201,7 @@ func CountryCode_Values() []string { CountryCodeCr, CountryCodeCu, CountryCodeCv, + CountryCodeCw, CountryCodeCx, CountryCodeCy, CountryCodeCz, @@ -8207,6 +9214,7 @@ func CountryCode_Values() []string { CountryCodeEc, CountryCodeEe, CountryCodeEg, + CountryCodeEh, CountryCodeEr, CountryCodeEs, CountryCodeEt, @@ -8220,18 +9228,23 @@ func CountryCode_Values() []string { CountryCodeGb, CountryCodeGd, CountryCodeGe, + CountryCodeGf, + CountryCodeGg, CountryCodeGh, CountryCodeGi, CountryCodeGl, CountryCodeGm, CountryCodeGn, + CountryCodeGp, CountryCodeGq, CountryCodeGr, + CountryCodeGs, CountryCodeGt, CountryCodeGu, CountryCodeGw, CountryCodeGy, CountryCodeHk, + CountryCodeHm, CountryCodeHn, CountryCodeHr, CountryCodeHt, @@ -8241,10 +9254,12 @@ func CountryCode_Values() []string { CountryCodeIl, CountryCodeIm, CountryCodeIn, + CountryCodeIo, CountryCodeIq, CountryCodeIr, CountryCodeIs, CountryCodeIt, + CountryCodeJe, CountryCodeJm, CountryCodeJo, CountryCodeJp, @@ -8283,6 +9298,7 @@ func CountryCode_Values() []string { CountryCodeMn, CountryCodeMo, CountryCodeMp, + CountryCodeMq, CountryCodeMr, CountryCodeMs, CountryCodeMt, @@ -8295,6 +9311,7 @@ func CountryCode_Values() []string { CountryCodeNa, CountryCodeNc, CountryCodeNe, + CountryCodeNf, CountryCodeNg, CountryCodeNi, CountryCodeNl, @@ -8314,10 +9331,12 @@ func CountryCode_Values() []string { CountryCodePm, CountryCodePn, CountryCodePr, + CountryCodePs, CountryCodePt, CountryCodePw, CountryCodePy, CountryCodeQa, + CountryCodeRe, CountryCodeRo, CountryCodeRs, CountryCodeRu, @@ -8330,18 +9349,22 @@ func CountryCode_Values() []string { CountryCodeSg, CountryCodeSh, CountryCodeSi, + CountryCodeSj, CountryCodeSk, CountryCodeSl, CountryCodeSm, CountryCodeSn, CountryCodeSo, CountryCodeSr, + CountryCodeSs, CountryCodeSt, CountryCodeSv, + CountryCodeSx, CountryCodeSy, CountryCodeSz, CountryCodeTc, CountryCodeTd, + CountryCodeTf, CountryCodeTg, CountryCodeTh, CountryCodeTj, @@ -8350,6 +9373,7 @@ func CountryCode_Values() []string { CountryCodeTm, CountryCodeTn, CountryCodeTo, + CountryCodeTp, CountryCodeTr, CountryCodeTt, CountryCodeTv, @@ -8504,6 +9528,9 @@ const ( // ExtraParamNameUkCompanyNumber is a ExtraParamName enum value ExtraParamNameUkCompanyNumber = "UK_COMPANY_NUMBER" + + // ExtraParamNameEuCountryOfCitizenship is a ExtraParamName enum value + ExtraParamNameEuCountryOfCitizenship = "EU_COUNTRY_OF_CITIZENSHIP" ) // ExtraParamName_Values returns all elements of the ExtraParamName enum @@ -8538,6 +9565,23 @@ func ExtraParamName_Values() []string { ExtraParamNameVatNumber, ExtraParamNameUkContactType, ExtraParamNameUkCompanyNumber, + ExtraParamNameEuCountryOfCitizenship, + } +} + +const ( + // ListDomainsAttributeNameDomainName is a ListDomainsAttributeName enum value + ListDomainsAttributeNameDomainName = "DomainName" + + // ListDomainsAttributeNameExpiry is a ListDomainsAttributeName enum value + ListDomainsAttributeNameExpiry = "Expiry" +) + +// ListDomainsAttributeName_Values returns all elements of the ListDomainsAttributeName enum +func ListDomainsAttributeName_Values() []string { + return []string{ + ListDomainsAttributeNameDomainName, + ListDomainsAttributeNameExpiry, } } @@ -8649,6 +9693,26 @@ func OperationType_Values() []string { } } +const ( + // OperatorLe is a Operator enum value + OperatorLe = "LE" + + // OperatorGe is a Operator enum value + OperatorGe = "GE" + + // OperatorBeginsWith is a Operator enum value + OperatorBeginsWith = "BEGINS_WITH" +) + +// Operator_Values returns all elements of the Operator enum +func Operator_Values() []string { + return []string{ + OperatorLe, + OperatorGe, + OperatorBeginsWith, + } +} + const ( // ReachabilityStatusPending is a ReachabilityStatus enum value ReachabilityStatusPending = "PENDING" @@ -8669,6 +9733,22 @@ func ReachabilityStatus_Values() []string { } } +const ( + // SortOrderAsc is a SortOrder enum value + SortOrderAsc = "ASC" + + // SortOrderDesc is a SortOrder enum value + SortOrderDesc = "DESC" +) + +// SortOrder_Values returns all elements of the SortOrder enum +func SortOrder_Values() []string { + return []string{ + SortOrderAsc, + SortOrderDesc, + } +} + // Whether the domain name can be transferred to Route 53. // // You can transfer only domains that have a value of TRANSFERABLE for Transferable. diff --git a/service/route53domains/route53domainsiface/interface.go b/service/route53domains/route53domainsiface/interface.go index d1ab6012e05..1f0fb8ed09e 100644 --- a/service/route53domains/route53domainsiface/interface.go +++ b/service/route53domains/route53domainsiface/interface.go @@ -76,6 +76,10 @@ type Route53DomainsAPI interface { CheckDomainTransferabilityWithContext(aws.Context, *route53domains.CheckDomainTransferabilityInput, ...request.Option) (*route53domains.CheckDomainTransferabilityOutput, error) CheckDomainTransferabilityRequest(*route53domains.CheckDomainTransferabilityInput) (*request.Request, *route53domains.CheckDomainTransferabilityOutput) + DeleteDomain(*route53domains.DeleteDomainInput) (*route53domains.DeleteDomainOutput, error) + DeleteDomainWithContext(aws.Context, *route53domains.DeleteDomainInput, ...request.Option) (*route53domains.DeleteDomainOutput, error) + DeleteDomainRequest(*route53domains.DeleteDomainInput) (*request.Request, *route53domains.DeleteDomainOutput) + DeleteTagsForDomain(*route53domains.DeleteTagsForDomainInput) (*route53domains.DeleteTagsForDomainOutput, error) DeleteTagsForDomainWithContext(aws.Context, *route53domains.DeleteTagsForDomainInput, ...request.Option) (*route53domains.DeleteTagsForDomainOutput, error) DeleteTagsForDomainRequest(*route53domains.DeleteTagsForDomainInput) (*request.Request, *route53domains.DeleteTagsForDomainOutput) @@ -126,6 +130,13 @@ type Route53DomainsAPI interface { ListOperationsPages(*route53domains.ListOperationsInput, func(*route53domains.ListOperationsOutput, bool) bool) error ListOperationsPagesWithContext(aws.Context, *route53domains.ListOperationsInput, func(*route53domains.ListOperationsOutput, bool) bool, ...request.Option) error + ListPrices(*route53domains.ListPricesInput) (*route53domains.ListPricesOutput, error) + ListPricesWithContext(aws.Context, *route53domains.ListPricesInput, ...request.Option) (*route53domains.ListPricesOutput, error) + ListPricesRequest(*route53domains.ListPricesInput) (*request.Request, *route53domains.ListPricesOutput) + + ListPricesPages(*route53domains.ListPricesInput, func(*route53domains.ListPricesOutput, bool) bool) error + ListPricesPagesWithContext(aws.Context, *route53domains.ListPricesInput, func(*route53domains.ListPricesOutput, bool) bool, ...request.Option) error + ListTagsForDomain(*route53domains.ListTagsForDomainInput) (*route53domains.ListTagsForDomainOutput, error) ListTagsForDomainWithContext(aws.Context, *route53domains.ListTagsForDomainInput, ...request.Option) (*route53domains.ListTagsForDomainOutput, error) ListTagsForDomainRequest(*route53domains.ListTagsForDomainInput) (*request.Request, *route53domains.ListTagsForDomainOutput) @@ -177,6 +188,9 @@ type Route53DomainsAPI interface { ViewBilling(*route53domains.ViewBillingInput) (*route53domains.ViewBillingOutput, error) ViewBillingWithContext(aws.Context, *route53domains.ViewBillingInput, ...request.Option) (*route53domains.ViewBillingOutput, error) ViewBillingRequest(*route53domains.ViewBillingInput) (*request.Request, *route53domains.ViewBillingOutput) + + ViewBillingPages(*route53domains.ViewBillingInput, func(*route53domains.ViewBillingOutput, bool) bool) error + ViewBillingPagesWithContext(aws.Context, *route53domains.ViewBillingInput, func(*route53domains.ViewBillingOutput, bool) bool, ...request.Option) error } var _ Route53DomainsAPI = (*route53domains.Route53Domains)(nil) diff --git a/service/route53recoverycontrolconfig/api.go b/service/route53recoverycontrolconfig/api.go index 73f2601c273..05da964ccf3 100644 --- a/service/route53recoverycontrolconfig/api.go +++ b/service/route53recoverycontrolconfig/api.go @@ -60,8 +60,8 @@ func (c *Route53RecoveryControlConfig) CreateClusterRequest(input *CreateCluster // against which you can run API calls to update or get the state of one or // more routing controls. Each cluster has a name, status, Amazon Resource Name // (ARN), and an array of the five cluster endpoints (one for each supported -// Amazon Web Services Region) that you can use with API calls to the Amazon -// Route 53 Application Recovery Controller cluster data plane. +// Amazon Web Services Region) that you can use with API calls to the cluster +// data plane. // // 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 @@ -73,27 +73,28 @@ func (c *Route53RecoveryControlConfig) CreateClusterRequest(input *CreateCluster // Returned Error Types: // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. // // * ServiceQuotaExceededException -// 402 response +// 402 response - You attempted to create more resources than the service allows +// based on service quotas. // // * AccessDeniedException -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. // // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ThrottlingException -// 429 response - ThrottlingException. +// 429 response - LimitExceededException or TooManyRequestsException. // // * ConflictException -// 409 response - ConflictException. +// 409 response - ConflictException. You might be using a predefined variable. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/CreateCluster func (c *Route53RecoveryControlConfig) CreateCluster(input *CreateClusterInput) (*CreateClusterOutput, error) { @@ -165,7 +166,7 @@ func (c *Route53RecoveryControlConfig) CreateControlPanelRequest(input *CreateCo // controls that can be changed together in a single transaction. You can use // a control panel to centrally view the operational status of applications // across your organization, and trigger multi-app failovers in a single transaction, -// for example, to fail over an Availability Zone or AWS Region. +// for example, to fail over an Availability Zone or Amazon Web Services Region. // // 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 @@ -177,27 +178,28 @@ func (c *Route53RecoveryControlConfig) CreateControlPanelRequest(input *CreateCo // Returned Error Types: // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. // // * ServiceQuotaExceededException -// 402 response +// 402 response - You attempted to create more resources than the service allows +// based on service quotas. // // * AccessDeniedException -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. // // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ThrottlingException -// 429 response - ThrottlingException. +// 429 response - LimitExceededException or TooManyRequestsException. // // * ConflictException -// 409 response - ConflictException. +// 409 response - ConflictException. You might be using a predefined variable. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/CreateControlPanel func (c *Route53RecoveryControlConfig) CreateControlPanel(input *CreateControlPanelInput) (*CreateControlPanelOutput, error) { @@ -284,27 +286,28 @@ func (c *Route53RecoveryControlConfig) CreateRoutingControlRequest(input *Create // Returned Error Types: // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. // // * ServiceQuotaExceededException -// 402 response +// 402 response - You attempted to create more resources than the service allows +// based on service quotas. // // * AccessDeniedException -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. // // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ThrottlingException -// 429 response - ThrottlingException. +// 429 response - LimitExceededException or TooManyRequestsException. // // * ConflictException -// 409 response - ConflictException. +// 409 response - ConflictException. You might be using a predefined variable. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/CreateRoutingControl func (c *Route53RecoveryControlConfig) CreateRoutingControl(input *CreateRoutingControlInput) (*CreateRoutingControlOutput, error) { @@ -373,20 +376,24 @@ func (c *Route53RecoveryControlConfig) CreateSafetyRuleRequest(input *CreateSafe // CreateSafetyRule API operation for AWS Route53 Recovery Control Config. // // Creates a safety rule in a control panel. Safety rules let you add safeguards -// around enabling and disabling routing controls, to help prevent unexpected -// outcomes. +// around changing routing control states, and for enabling and disabling routing +// controls, to help prevent unexpected outcomes. // // There are two types of safety rules: assertion rules and gating rules. // -// Assertion rule: An assertion rule enforces that, when a routing control state -// is changed, the criteria set by the rule configuration is met. Otherwise, -// the change to the routing control is not accepted. +// Assertion rule: An assertion rule enforces that, when you change a routing +// control state, that a certain criteria is met. For example, the criteria +// might be that at least one routing control state is On after the transation +// so that traffic continues to flow to at least one cell for the application. +// This ensures that you avoid a fail-open scenario. // -// Gating rule: A gating rule verifies that a set of gating controls evaluates -// as true, based on a rule configuration that you specify. If the gating rule -// evaluates to true, Amazon Route 53 Application Recovery Controller allows -// a set of routing control state changes to run and complete against the set -// of target controls. +// Gating rule: A gating rule lets you configure a gating routing control as +// an overall "on/off" switch for a group of routing controls. Or, you can configure +// more complex gating scenarios, for example by configuring multiple gating +// routing controls. +// +// For more information, see Safety rules (https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.safety-rules.html) +// in the Amazon Route 53 Application Recovery Controller Developer Guide. // // 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 @@ -398,8 +405,8 @@ func (c *Route53RecoveryControlConfig) CreateSafetyRuleRequest(input *CreateSafe // Returned Error Types: // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. @@ -483,24 +490,24 @@ func (c *Route53RecoveryControlConfig) DeleteClusterRequest(input *DeleteCluster // Returned Error Types: // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. // // * AccessDeniedException -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. // // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ThrottlingException -// 429 response - ThrottlingException. +// 429 response - LimitExceededException or TooManyRequestsException. // // * ConflictException -// 409 response - ConflictException. +// 409 response - ConflictException. You might be using a predefined variable. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/DeleteCluster func (c *Route53RecoveryControlConfig) DeleteCluster(input *DeleteClusterInput) (*DeleteClusterOutput, error) { @@ -581,24 +588,24 @@ func (c *Route53RecoveryControlConfig) DeleteControlPanelRequest(input *DeleteCo // Returned Error Types: // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. // // * AccessDeniedException -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. // // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ThrottlingException -// 429 response - ThrottlingException. +// 429 response - LimitExceededException or TooManyRequestsException. // // * ConflictException -// 409 response - ConflictException. +// 409 response - ConflictException. You might be using a predefined variable. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/DeleteControlPanel func (c *Route53RecoveryControlConfig) DeleteControlPanel(input *DeleteControlPanelInput) (*DeleteControlPanelOutput, error) { @@ -679,24 +686,24 @@ func (c *Route53RecoveryControlConfig) DeleteRoutingControlRequest(input *Delete // Returned Error Types: // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. // // * AccessDeniedException -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. // // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ThrottlingException -// 429 response - ThrottlingException. +// 429 response - LimitExceededException or TooManyRequestsException. // // * ConflictException -// 409 response - ConflictException. +// 409 response - ConflictException. You might be using a predefined variable. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/DeleteRoutingControl func (c *Route53RecoveryControlConfig) DeleteRoutingControl(input *DeleteRoutingControlInput) (*DeleteRoutingControlOutput, error) { @@ -777,12 +784,13 @@ func (c *Route53RecoveryControlConfig) DeleteSafetyRuleRequest(input *DeleteSafe // // Returned Error Types: // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. @@ -866,24 +874,24 @@ func (c *Route53RecoveryControlConfig) DescribeClusterRequest(input *DescribeClu // Returned Error Types: // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. // // * AccessDeniedException -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. // // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ThrottlingException -// 429 response - ThrottlingException. +// 429 response - LimitExceededException or TooManyRequestsException. // // * ConflictException -// 409 response - ConflictException. +// 409 response - ConflictException. You might be using a predefined variable. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/DescribeCluster func (c *Route53RecoveryControlConfig) DescribeCluster(input *DescribeClusterInput) (*DescribeClusterOutput, error) { @@ -963,24 +971,24 @@ func (c *Route53RecoveryControlConfig) DescribeControlPanelRequest(input *Descri // Returned Error Types: // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. // // * AccessDeniedException -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. // // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ThrottlingException -// 429 response - ThrottlingException. +// 429 response - LimitExceededException or TooManyRequestsException. // // * ConflictException -// 409 response - ConflictException. +// 409 response - ConflictException. You might be using a predefined variable. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/DescribeControlPanel func (c *Route53RecoveryControlConfig) DescribeControlPanel(input *DescribeControlPanelInput) (*DescribeControlPanelOutput, error) { @@ -1065,24 +1073,24 @@ func (c *Route53RecoveryControlConfig) DescribeRoutingControlRequest(input *Desc // Returned Error Types: // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. // // * AccessDeniedException -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. // // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ThrottlingException -// 429 response - ThrottlingException. +// 429 response - LimitExceededException or TooManyRequestsException. // // * ConflictException -// 409 response - ConflictException. +// 409 response - ConflictException. You might be using a predefined variable. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/DescribeRoutingControl func (c *Route53RecoveryControlConfig) DescribeRoutingControl(input *DescribeRoutingControlInput) (*DescribeRoutingControlOutput, error) { @@ -1150,8 +1158,7 @@ func (c *Route53RecoveryControlConfig) DescribeSafetyRuleRequest(input *Describe // DescribeSafetyRule API operation for AWS Route53 Recovery Control Config. // -// Describes the safety rules (that is, the assertion rules and gating rules) -// for the routing controls in a control panel. +// Returns information about a safety rule. // // 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 @@ -1163,11 +1170,12 @@ func (c *Route53RecoveryControlConfig) DescribeSafetyRuleRequest(input *Describe // Returned Error Types: // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/DescribeSafetyRule func (c *Route53RecoveryControlConfig) DescribeSafetyRule(input *DescribeSafetyRuleInput) (*DescribeSafetyRuleOutput, error) { @@ -1253,12 +1261,13 @@ func (c *Route53RecoveryControlConfig) ListAssociatedRoute53HealthChecksRequest( // // Returned Error Types: // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. @@ -1398,22 +1407,22 @@ func (c *Route53RecoveryControlConfig) ListClustersRequest(input *ListClustersIn // // Returned Error Types: // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ThrottlingException -// 429 response - ThrottlingException. +// 429 response - LimitExceededException or TooManyRequestsException. // // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. // // * AccessDeniedException -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/ListClusters func (c *Route53RecoveryControlConfig) ListClusters(input *ListClustersInput) (*ListClustersOutput, error) { @@ -1539,7 +1548,7 @@ func (c *Route53RecoveryControlConfig) ListControlPanelsRequest(input *ListContr // ListControlPanels API operation for AWS Route53 Recovery Control Config. // -// Returns an array of control panels for a cluster. +// Returns an array of control panels in an account or in a cluster. // // 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 @@ -1550,22 +1559,22 @@ func (c *Route53RecoveryControlConfig) ListControlPanelsRequest(input *ListContr // // Returned Error Types: // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ThrottlingException -// 429 response - ThrottlingException. +// 429 response - LimitExceededException or TooManyRequestsException. // // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. // // * AccessDeniedException -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/ListControlPanels func (c *Route53RecoveryControlConfig) ListControlPanels(input *ListControlPanelsInput) (*ListControlPanelsOutput, error) { @@ -1705,22 +1714,22 @@ func (c *Route53RecoveryControlConfig) ListRoutingControlsRequest(input *ListRou // // Returned Error Types: // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ThrottlingException -// 429 response - ThrottlingException. +// 429 response - LimitExceededException or TooManyRequestsException. // // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. // // * AccessDeniedException -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/ListRoutingControls func (c *Route53RecoveryControlConfig) ListRoutingControls(input *ListRoutingControlsInput) (*ListRoutingControlsOutput, error) { @@ -1858,22 +1867,22 @@ func (c *Route53RecoveryControlConfig) ListSafetyRulesRequest(input *ListSafetyR // // Returned Error Types: // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ThrottlingException -// 429 response - ThrottlingException. +// 429 response - LimitExceededException or TooManyRequestsException. // // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. // // * AccessDeniedException -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/ListSafetyRules func (c *Route53RecoveryControlConfig) ListSafetyRules(input *ListSafetyRulesInput) (*ListSafetyRulesOutput, error) { @@ -1949,6 +1958,272 @@ func (c *Route53RecoveryControlConfig) ListSafetyRulesPagesWithContext(ctx aws.C return p.Err() } +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTagsForResource for more information on using the ListTagsForResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/ListTagsForResource +func (c *Route53RecoveryControlConfig) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/tags/{ResourceArn}", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for AWS Route53 Recovery Control Config. +// +// Lists the tags for a resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Route53 Recovery Control Config's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. +// +// * ValidationException +// 400 response - Multiple causes. For example, you might have a malformed query +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. +// +// * InternalServerException +// 500 response - InternalServiceError. Temporary service error. Retry the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/ListTagsForResource +func (c *Route53RecoveryControlConfig) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + return out, req.Send() +} + +// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// the ability to pass a context and additional request options. +// +// See ListTagsForResource for details on how to use this API operation. +// +// 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 *Route53RecoveryControlConfig) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TagResource for more information on using the TagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/TagResource +func (c *Route53RecoveryControlConfig) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tags/{ResourceArn}", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for AWS Route53 Recovery Control Config. +// +// Adds a tag to a resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Route53 Recovery Control Config's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. +// +// * ValidationException +// 400 response - Multiple causes. For example, you might have a malformed query +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. +// +// * InternalServerException +// 500 response - InternalServiceError. Temporary service error. Retry the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/TagResource +func (c *Route53RecoveryControlConfig) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + return out, req.Send() +} + +// TagResourceWithContext is the same as TagResource with the addition of +// the ability to pass a context and additional request options. +// +// See TagResource for details on how to use this API operation. +// +// 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 *Route53RecoveryControlConfig) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUntagResource = "UntagResource" + +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UntagResource for more information on using the UntagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/UntagResource +func (c *Route53RecoveryControlConfig) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/tags/{ResourceArn}", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS Route53 Recovery Control Config. +// +// Removes a tag from a resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Route53 Recovery Control Config's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. +// +// * ValidationException +// 400 response - Multiple causes. For example, you might have a malformed query +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. +// +// * InternalServerException +// 500 response - InternalServiceError. Temporary service error. Retry the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/UntagResource +func (c *Route53RecoveryControlConfig) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource for details on how to use this API operation. +// +// 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 *Route53RecoveryControlConfig) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateControlPanel = "UpdateControlPanel" // UpdateControlPanelRequest generates a "aws/request.Request" representing the @@ -2006,24 +2281,24 @@ func (c *Route53RecoveryControlConfig) UpdateControlPanelRequest(input *UpdateCo // Returned Error Types: // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. // // * AccessDeniedException -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. // // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ThrottlingException -// 429 response - ThrottlingException. +// 429 response - LimitExceededException or TooManyRequestsException. // // * ConflictException -// 409 response - ConflictException. +// 409 response - ConflictException. You might be using a predefined variable. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/UpdateControlPanel func (c *Route53RecoveryControlConfig) UpdateControlPanel(input *UpdateControlPanelInput) (*UpdateControlPanelOutput, error) { @@ -2105,24 +2380,24 @@ func (c *Route53RecoveryControlConfig) UpdateRoutingControlRequest(input *Update // Returned Error Types: // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. // // * AccessDeniedException -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. // // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ThrottlingException -// 429 response - ThrottlingException. +// 429 response - LimitExceededException or TooManyRequestsException. // // * ConflictException -// 409 response - ConflictException. +// 409 response - ConflictException. You might be using a predefined variable. // // See also, https://docs.aws.amazon.com/goto/WebAPI/route53-recovery-control-config-2020-11-02/UpdateRoutingControl func (c *Route53RecoveryControlConfig) UpdateRoutingControl(input *UpdateRoutingControlInput) (*UpdateRoutingControlOutput, error) { @@ -2190,10 +2465,9 @@ func (c *Route53RecoveryControlConfig) UpdateSafetyRuleRequest(input *UpdateSafe // UpdateSafetyRule API operation for AWS Route53 Recovery Control Config. // -// Update a safety rule (an assertion rule or gating rule) for the routing controls -// in a control panel. You can only update the name and the waiting period for -// a safety rule. To make other updates, delete the safety rule and create a -// new safety rule. +// Update a safety rule (an assertion rule or gating rule). You can only update +// the name and the waiting period for a safety rule. To make other updates, +// delete the safety rule and create a new one. // // 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 @@ -2204,12 +2478,13 @@ func (c *Route53RecoveryControlConfig) UpdateSafetyRuleRequest(input *UpdateSafe // // Returned Error Types: // * ResourceNotFoundException -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. // // * ValidationException // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. // // * InternalServerException // 500 response - InternalServiceError. Temporary service error. Retry the request. @@ -2236,8 +2511,7 @@ func (c *Route53RecoveryControlConfig) UpdateSafetyRuleWithContext(ctx aws.Conte return out, req.Send() } -// 403 response - AccessDeniedException. You do not have sufficient access to -// perform this action. +// 403 response - You do not have sufficient access to perform this action. type AccessDeniedException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -2301,9 +2575,12 @@ func (s *AccessDeniedException) RequestID() string { return s.RespMetadata.RequestID } -// An assertion rule enforces that, when a routing control state is changed, -// the criteria set by the rule configuration is met. Otherwise, the change -// to the routing control is not accepted. +// An assertion rule enforces that, when you change a routing control state, +// that the criteria that you set in the rule configuration is met. Otherwise, +// the change to the routing control is not accepted. For example, the criteria +// might be that at least one routing control state is On after the transation +// so that traffic continues to flow to at least one cell for the application. +// This ensures that you avoid a fail-open scenario. type AssertionRule struct { _ struct{} `type:"structure"` @@ -2318,7 +2595,7 @@ type AssertionRule struct { // The Amazon Resource Name (ARN) of the control panel. // // ControlPanelArn is a required field - ControlPanelArn *string `type:"string" required:"true"` + ControlPanelArn *string `min:"1" type:"string" required:"true"` // Name of the assertion rule. You can use any non-white space character in // the name. @@ -2326,11 +2603,12 @@ type AssertionRule struct { // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // The criteria that you set for specific assertion controls (routing controls) - // that designate how many controls must be enabled as the result of a transaction. - // For example, if you have three assertion controls, you might specify atleast - // 2 for your rule configuration. This means that at least two assertion controls - // must be enabled, so that at least two Amazon Web Services Regions are enabled. + // The criteria that you set for specific assertion routing controls (AssertedControls) + // that designate how many routing control states must be ON as the result of + // a transaction. For example, if you have three assertion routing controls, + // you might specify atleast 2 for your rule configuration. This means that + // at least two assertion routing control states must be ON, so that at least + // two Amazon Web Services Regions have traffic flowing to them. // // RuleConfig is a required field RuleConfig *RuleConfig `type:"structure" required:"true"` @@ -2338,7 +2616,7 @@ type AssertionRule struct { // The Amazon Resource Name (ARN) of the assertion rule. // // SafetyRuleArn is a required field - SafetyRuleArn *string `type:"string" required:"true"` + SafetyRuleArn *string `min:"1" type:"string" required:"true"` // The deployment status of an assertion rule. Status can be one of the following: // PENDING, DEPLOYED, PENDING_DELETION. @@ -2429,7 +2707,7 @@ type AssertionRuleUpdate struct { // The Amazon Resource Name (ARN) of the assertion rule. // // SafetyRuleArn is a required field - SafetyRuleArn *string `type:"string" required:"true"` + SafetyRuleArn *string `min:"1" type:"string" required:"true"` // An evaluation period, in milliseconds (ms), during which any request against // the target routing controls will fail. This helps prevent "flapping" of state. @@ -2469,6 +2747,9 @@ func (s *AssertionRuleUpdate) Validate() error { if s.SafetyRuleArn == nil { invalidParams.Add(request.NewErrParamRequired("SafetyRuleArn")) } + if s.SafetyRuleArn != nil && len(*s.SafetyRuleArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SafetyRuleArn", 1)) + } if s.WaitPeriodMs == nil { invalidParams.Add(request.NewErrParamRequired("WaitPeriodMs")) } @@ -2497,20 +2778,20 @@ func (s *AssertionRuleUpdate) SetWaitPeriodMs(v int64) *AssertionRuleUpdate { return s } -// A cluster is a set of five consensus-forming Regional endpoints that represent -// the infrastructure that hosts your routing controls. Typically, you host -// together on one cluster all of the routing controls for your applications. +// A set of five redundant Regional endpoints against which you can execute +// API calls to update or get the state of routing controls. You can host multiple +// control panels and routing controls on one cluster. type Cluster struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the cluster. - ClusterArn *string `type:"string"` + ClusterArn *string `min:"1" type:"string"` // Endpoints for a cluster. Specify one of these endpoints when you want to // set or retrieve a routing control state in the cluster. // // To get or update the routing control state, see the Amazon Route 53 Application - // Recovery Controller Cluster (Data Plane) Actions. + // Recovery Controller Routing Control Actions. ClusterEndpoints []*ClusterEndpoint `type:"list"` // The name of the cluster. @@ -2572,7 +2853,7 @@ type ClusterEndpoint struct { // you want to set or retrieve a routing control state in the cluster. // // To get or update the routing control state, see the Amazon Route 53 Application - // Recovery Controller Cluster (Data Plane) Actions. + // Recovery Controller Routing Control Actions. Endpoint *string `min:"1" type:"string"` // The Amazon Web Services Region for a cluster endpoint. @@ -2609,7 +2890,7 @@ func (s *ClusterEndpoint) SetRegion(v string) *ClusterEndpoint { return s } -// 409 response - ConflictException. +// 409 response - ConflictException. You might be using a predefined variable. type ConflictException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -2679,10 +2960,10 @@ type ControlPanel struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the cluster that includes the control panel. - ClusterArn *string `type:"string"` + ClusterArn *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the control panel. - ControlPanelArn *string `type:"string"` + ControlPanelArn *string `min:"1" type:"string"` // A flag that Amazon Route 53 Application Recovery Controller sets to true // to designate the default control panel for a cluster. When you create a cluster, @@ -2761,13 +3042,17 @@ func (s *ControlPanel) SetStatus(v string) *ControlPanel { type CreateClusterInput struct { _ struct{} `type:"structure"` - // Unique client idempotency token. - ClientToken *string `type:"string" idempotencyToken:"true"` + // A unique, case-sensitive string of up to 64 ASCII characters. To make an + // idempotent API request with an action, specify a client token in the request. + ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` // The name of the cluster. // // ClusterName is a required field ClusterName *string `min:"1" type:"string" required:"true"` + + // The tags associated with the cluster. + Tags map[string]*string `type:"map"` } // String returns the string representation. @@ -2791,6 +3076,9 @@ func (s CreateClusterInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *CreateClusterInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateClusterInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } if s.ClusterName == nil { invalidParams.Add(request.NewErrParamRequired("ClusterName")) } @@ -2816,6 +3104,12 @@ func (s *CreateClusterInput) SetClusterName(v string) *CreateClusterInput { return s } +// SetTags sets the Tags field's value. +func (s *CreateClusterInput) SetTags(v map[string]*string) *CreateClusterInput { + s.Tags = v + return s +} + // The result of a successful CreateCluster request. type CreateClusterOutput struct { _ struct{} `type:"structure"` @@ -2852,18 +3146,22 @@ func (s *CreateClusterOutput) SetCluster(v *Cluster) *CreateClusterOutput { type CreateControlPanelInput struct { _ struct{} `type:"structure"` - // Unique client idempotency token. - ClientToken *string `type:"string" idempotencyToken:"true"` + // A unique, case-sensitive string of up to 64 ASCII characters. To make an + // idempotent API request with an action, specify a client token in the request. + ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` // The Amazon Resource Name (ARN) of the cluster for the control panel. // // ClusterArn is a required field - ClusterArn *string `type:"string" required:"true"` + ClusterArn *string `min:"1" type:"string" required:"true"` // The name of the control panel. // // ControlPanelName is a required field ControlPanelName *string `min:"1" type:"string" required:"true"` + + // The tags associated with the control panel. + Tags map[string]*string `type:"map"` } // String returns the string representation. @@ -2887,9 +3185,15 @@ func (s CreateControlPanelInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *CreateControlPanelInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateControlPanelInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } if s.ClusterArn == nil { invalidParams.Add(request.NewErrParamRequired("ClusterArn")) } + if s.ClusterArn != nil && len(*s.ClusterArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterArn", 1)) + } if s.ControlPanelName == nil { invalidParams.Add(request.NewErrParamRequired("ControlPanelName")) } @@ -2921,6 +3225,12 @@ func (s *CreateControlPanelInput) SetControlPanelName(v string) *CreateControlPa return s } +// SetTags sets the Tags field's value. +func (s *CreateControlPanelInput) SetTags(v map[string]*string) *CreateControlPanelInput { + s.Tags = v + return s +} + // The result of a successful CreateControlPanel request. type CreateControlPanelOutput struct { _ struct{} `type:"structure"` @@ -2959,17 +3269,18 @@ func (s *CreateControlPanelOutput) SetControlPanel(v *ControlPanel) *CreateContr type CreateRoutingControlInput struct { _ struct{} `type:"structure"` - // Unique client idempotency token. - ClientToken *string `type:"string" idempotencyToken:"true"` + // A unique, case-sensitive string of up to 64 ASCII characters. To make an + // idempotent API request with an action, specify a client token in the request. + ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` // The Amazon Resource Name (ARN) of the cluster that includes the routing control. // // ClusterArn is a required field - ClusterArn *string `type:"string" required:"true"` + ClusterArn *string `min:"1" type:"string" required:"true"` // The Amazon Resource Name (ARN) of the control panel that includes the routing // control. - ControlPanelArn *string `type:"string"` + ControlPanelArn *string `min:"1" type:"string"` // The name of the routing control. // @@ -2998,9 +3309,18 @@ func (s CreateRoutingControlInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *CreateRoutingControlInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateRoutingControlInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } if s.ClusterArn == nil { invalidParams.Add(request.NewErrParamRequired("ClusterArn")) } + if s.ClusterArn != nil && len(*s.ClusterArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterArn", 1)) + } + if s.ControlPanelArn != nil && len(*s.ControlPanelArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ControlPanelArn", 1)) + } if s.RoutingControlName == nil { invalidParams.Add(request.NewErrParamRequired("RoutingControlName")) } @@ -3075,14 +3395,18 @@ func (s *CreateRoutingControlOutput) SetRoutingControl(v *RoutingControl) *Creat type CreateSafetyRuleInput struct { _ struct{} `type:"structure"` - // A new assertion rule for a control panel. + // The assertion rule requested. AssertionRule *NewAssertionRule `type:"structure"` - // Unique client idempotency token. - ClientToken *string `type:"string" idempotencyToken:"true"` + // A unique, case-sensitive string of up to 64 ASCII characters. To make an + // idempotent API request with an action, specify a client token in the request. + ClientToken *string `min:"1" type:"string" idempotencyToken:"true"` - // A new gating rule for a control panel. + // The gating rule requested. GatingRule *NewGatingRule `type:"structure"` + + // The tags associated with the safety rule. + Tags map[string]*string `type:"map"` } // String returns the string representation. @@ -3106,6 +3430,9 @@ func (s CreateSafetyRuleInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *CreateSafetyRuleInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateSafetyRuleInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } if s.AssertionRule != nil { if err := s.AssertionRule.Validate(); err != nil { invalidParams.AddNested("AssertionRule", err.(request.ErrInvalidParams)) @@ -3141,19 +3468,20 @@ func (s *CreateSafetyRuleInput) SetGatingRule(v *NewGatingRule) *CreateSafetyRul return s } +// SetTags sets the Tags field's value. +func (s *CreateSafetyRuleInput) SetTags(v map[string]*string) *CreateSafetyRuleInput { + s.Tags = v + return s +} + // The result of a successful CreateSafetyRule request. type CreateSafetyRuleOutput struct { _ struct{} `type:"structure"` - // An assertion rule enforces that, when a routing control state is changed, - // the criteria set by the rule configuration is met. Otherwise, the change - // to the routing control is not accepted. + // The assertion rule created. AssertionRule *AssertionRule `type:"structure"` - // A gating rule verifies that a set of gating controls evaluates as true, based - // on a rule configuration that you specify. If the gating rule evaluates to - // true, Amazon Route 53 Application Recovery Controller allows a set of routing - // control state changes to run and complete against the set of target controls. + // The gating rule created. GatingRule *GatingRule `type:"structure"` } @@ -3756,15 +4084,10 @@ func (s *DescribeSafetyRuleInput) SetSafetyRuleArn(v string) *DescribeSafetyRule type DescribeSafetyRuleOutput struct { _ struct{} `type:"structure"` - // An assertion rule enforces that, when a routing control state is changed, - // the criteria set by the rule configuration is met. Otherwise, the change - // to the routing control is not accepted. + // The assertion rule in the response. AssertionRule *AssertionRule `type:"structure"` - // A gating rule verifies that a set of gating controls evaluates as true, based - // on a rule configuration that you specify. If the gating rule evaluates to - // true, Amazon Route 53 Application Recovery Controller allows a set of routing - // control state changes to run and complete against the set of target controls. + // The gating rule in the response. GatingRule *GatingRule `type:"structure"` } @@ -3798,32 +4121,41 @@ func (s *DescribeSafetyRuleOutput) SetGatingRule(v *GatingRule) *DescribeSafetyR return s } -// A gating rule verifies that a set of gating controls evaluates as true, based -// on a rule configuration that you specify. If the gating rule evaluates to -// true, Amazon Route 53 Application Recovery Controller allows a set of routing -// control state changes to run and complete against the set of target controls. +// A gating rule verifies that a gating routing control or set of gating rounting +// controls, evaluates as true, based on a rule configuration that you specify, +// which allows a set of routing control state changes to complete. +// +// For example, if you specify one gating routing control and you set the Type +// in the rule configuration to OR, that indicates that you must set the gating +// routing control to On for the rule to evaluate as true; that is, for the +// gating control "switch" to be "On". When you do that, then you can update +// the routing control states for the target routing controls that you specify +// in the gating rule. type GatingRule struct { _ struct{} `type:"structure"` // The Amazon Resource Name (ARN) of the control panel. // // ControlPanelArn is a required field - ControlPanelArn *string `type:"string" required:"true"` + ControlPanelArn *string `min:"1" type:"string" required:"true"` - // The gating controls for the gating rule. That is, routing controls that are - // evaluated by the rule configuration that you specify. + // An array of gating routing control Amazon Resource Names (ARNs). For a simple + // "on/off" switch, specify the ARN for one routing control. The gating routing + // controls are evaluated by the rule configuration that you specify to determine + // if the target routing control states can be changed. // // GatingControls is a required field GatingControls []*string `type:"list" required:"true"` - // The name for the gating rule. + // The name for the gating rule. You can use any non-white space character in + // the name. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` - // The criteria that you set for specific gating controls (routing controls) - // that designates how many controls must be enabled to allow you to change - // (set or unset) the target controls. + // The criteria that you set for gating routing controls that designates how + // many of the routing control states must be ON to allow you to update target + // routing control states. // // RuleConfig is a required field RuleConfig *RuleConfig `type:"structure" required:"true"` @@ -3831,7 +4163,7 @@ type GatingRule struct { // The Amazon Resource Name (ARN) of the gating rule. // // SafetyRuleArn is a required field - SafetyRuleArn *string `type:"string" required:"true"` + SafetyRuleArn *string `min:"1" type:"string" required:"true"` // The deployment status of a gating rule. Status can be one of the following: // PENDING, DEPLOYED, PENDING_DELETION. @@ -3839,16 +4171,12 @@ type GatingRule struct { // Status is a required field Status *string `type:"string" required:"true" enum:"Status"` - // Routing controls that can only be set or unset if the specified RuleConfig - // evaluates to true for the specified GatingControls. For example, say you - // have three gating controls, one for each of three Amazon Web Services Regions. - // Now you specify ATLEAST 2 as your RuleConfig. With these settings, you can - // only change (set or unset) the routing controls that you have specified as - // TargetControls if that rule evaluates to true. - // - // In other words, your ability to change the routing controls that you have - // specified as TargetControls is gated by the rule that you set for the routing - // controls in GatingControls. + // An array of target routing control Amazon Resource Names (ARNs) for which + // the states can only be updated if the rule configuration that you specify + // evaluates to true for the gating routing control. As a simple example, if + // you have a single gating control, it acts as an overall "on/off" switch for + // a set of target routing controls. You can use this to manually override automated + // fail over, for example. // // TargetControls is a required field TargetControls []*string `type:"list" required:"true"` @@ -3933,7 +4261,8 @@ func (s *GatingRule) SetWaitPeriodMs(v int64) *GatingRule { type GatingRuleUpdate struct { _ struct{} `type:"structure"` - // The name for the gating rule. + // The name for the gating rule. You can use any non-white space character in + // the name. // // Name is a required field Name *string `min:"1" type:"string" required:"true"` @@ -3941,7 +4270,7 @@ type GatingRuleUpdate struct { // The Amazon Resource Name (ARN) of the gating rule. // // SafetyRuleArn is a required field - SafetyRuleArn *string `type:"string" required:"true"` + SafetyRuleArn *string `min:"1" type:"string" required:"true"` // An evaluation period, in milliseconds (ms), during which any request against // the target routing controls will fail. This helps prevent "flapping" of state. @@ -3981,6 +4310,9 @@ func (s *GatingRuleUpdate) Validate() error { if s.SafetyRuleArn == nil { invalidParams.Add(request.NewErrParamRequired("SafetyRuleArn")) } + if s.SafetyRuleArn != nil && len(*s.SafetyRuleArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SafetyRuleArn", 1)) + } if s.WaitPeriodMs == nil { invalidParams.Add(request.NewErrParamRequired("WaitPeriodMs")) } @@ -4146,8 +4478,8 @@ type ListAssociatedRoute53HealthChecksOutput struct { // Identifiers for the health checks. HealthCheckIds []*string `type:"list"` - // The token that identifies which batch of results you want to see. - NextToken *string `type:"string"` + // Next token for listing health checks. + NextToken *string `min:"1" type:"string"` } // String returns the string representation. @@ -4239,7 +4571,7 @@ type ListClustersOutput struct { Clusters []*Cluster `type:"list"` // The token that identifies which batch of results you want to see. - NextToken *string `type:"string"` + NextToken *string `min:"1" type:"string"` } // String returns the string representation. @@ -4339,7 +4671,7 @@ type ListControlPanelsOutput struct { ControlPanels []*ControlPanel `type:"list"` // The token that identifies which batch of results you want to see. - NextToken *string `type:"string"` + NextToken *string `min:"1" type:"string"` } // String returns the string representation. @@ -4443,7 +4775,7 @@ type ListRoutingControlsOutput struct { _ struct{} `type:"structure"` // The token that identifies which batch of results you want to see. - NextToken *string `type:"string"` + NextToken *string `min:"1" type:"string"` // An array of routing controls. RoutingControls []*RoutingControl `type:"list"` @@ -4550,7 +4882,7 @@ type ListSafetyRulesOutput struct { _ struct{} `type:"structure"` // The token that identifies which batch of results you want to see. - NextToken *string `type:"string"` + NextToken *string `min:"1" type:"string"` // The list of safety rules in a control panel. SafetyRules []*Rule `type:"list"` @@ -4586,6 +4918,85 @@ func (s *ListSafetyRulesOutput) SetSafetyRules(v []*Rule) *ListSafetyRulesOutput return s } +type ListTagsForResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"ResourceArn" 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 ListTagsForResourceInput) 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 ListTagsForResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTagsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput { + s.ResourceArn = &v + return s +} + +// The result of a successful ListTagsForResource request. +type ListTagsForResourceOutput struct { + _ struct{} `type:"structure"` + + // The tags associated with the resource. + Tags map[string]*string `type:"map"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListTagsForResourceOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput { + s.Tags = v + return s +} + // A new assertion rule for a control panel. type NewAssertionRule struct { _ struct{} `type:"structure"` @@ -4601,7 +5012,7 @@ type NewAssertionRule struct { // The Amazon Resource Name (ARN) for the control panel. // // ControlPanelArn is a required field - ControlPanelArn *string `type:"string" required:"true"` + ControlPanelArn *string `min:"1" type:"string" required:"true"` // The name of the assertion rule. You can use any non-white space character // in the name. @@ -4610,10 +5021,11 @@ type NewAssertionRule struct { Name *string `min:"1" type:"string" required:"true"` // The criteria that you set for specific assertion controls (routing controls) - // that designate how many controls must be enabled as the result of a transaction. - // For example, if you have three assertion controls, you might specify atleast - // 2 for your rule configuration. This means that at least two assertion controls - // must be enabled, so that at least two Amazon Web Services Regions are enabled. + // that designate how many control states must be ON as the result of a transaction. + // For example, if you have three assertion controls, you might specify ATLEAST + // 2for your rule configuration. This means that at least two assertion controls + // must be ON, so that at least two Amazon Web Services Regions have traffic + // flowing to them. // // RuleConfig is a required field RuleConfig *RuleConfig `type:"structure" required:"true"` @@ -4653,6 +5065,9 @@ func (s *NewAssertionRule) Validate() error { if s.ControlPanelArn == nil { invalidParams.Add(request.NewErrParamRequired("ControlPanelArn")) } + if s.ControlPanelArn != nil && len(*s.ControlPanelArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ControlPanelArn", 1)) + } if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } @@ -4714,7 +5129,7 @@ type NewGatingRule struct { // The Amazon Resource Name (ARN) of the control panel. // // ControlPanelArn is a required field - ControlPanelArn *string `type:"string" required:"true"` + ControlPanelArn *string `min:"1" type:"string" required:"true"` // The gating controls for the new gating rule. That is, routing controls that // are evaluated by the rule configuration that you specify. @@ -4728,8 +5143,8 @@ type NewGatingRule struct { Name *string `min:"1" type:"string" required:"true"` // The criteria that you set for specific gating controls (routing controls) - // that designates how many controls must be enabled to allow you to change - // (set or unset) the target controls. + // that designates how many control states must be ON to allow you to change + // (set or unset) the target control states. // // RuleConfig is a required field RuleConfig *RuleConfig `type:"structure" required:"true"` @@ -4780,6 +5195,9 @@ func (s *NewGatingRule) Validate() error { if s.ControlPanelArn == nil { invalidParams.Add(request.NewErrParamRequired("ControlPanelArn")) } + if s.ControlPanelArn != nil && len(*s.ControlPanelArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ControlPanelArn", 1)) + } if s.GatingControls == nil { invalidParams.Add(request.NewErrParamRequired("GatingControls")) } @@ -4846,7 +5264,8 @@ func (s *NewGatingRule) SetWaitPeriodMs(v int64) *NewGatingRule { return s } -// 404 response - The query string contains a syntax error or resource not found. +// 404 response - MalformedQueryString. The query string contains a syntax error +// or resource not found.. type ResourceNotFoundException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -4918,13 +5337,13 @@ type RoutingControl struct { // The Amazon Resource Name (ARN) of the control panel that includes the routing // control. - ControlPanelArn *string `type:"string"` + ControlPanelArn *string `min:"1" type:"string"` // The name of the routing control. Name *string `min:"1" type:"string"` // The Amazon Resource Name (ARN) of the routing control. - RoutingControlArn *string `type:"string"` + RoutingControlArn *string `min:"1" type:"string"` // The deployment status of a routing control. Status can be one of the following: // PENDING, DEPLOYED, PENDING_DELETION. @@ -4979,13 +5398,22 @@ type Rule struct { // An assertion rule enforces that, when a routing control state is changed, // the criteria set by the rule configuration is met. Otherwise, the change - // to the routing control is not accepted. + // to the routing control state is not accepted. For example, the criteria might + // be that at least one routing control state is On after the transation so + // that traffic continues to flow to at least one cell for the application. + // This ensures that you avoid a fail-open scenario. ASSERTION *AssertionRule `type:"structure"` - // A gating rule verifies that a set of gating controls evaluates as true, based - // on a rule configuration that you specify. If the gating rule evaluates to - // true, Amazon Route 53 Application Recovery Controller allows a set of routing - // control state changes to run and complete against the set of target controls. + // A gating rule verifies that a gating routing control or set of gating rounting + // controls, evaluates as true, based on a rule configuration that you specify, + // which allows a set of routing control state changes to complete. + // + // For example, if you specify one gating routing control and you set the Type + // in the rule configuration to OR, that indicates that you must set the gating + // routing control to On for the rule to evaluate as true; that is, for the + // gating control "switch" to be "On". When you do that, then you can update + // the routing control states for the target routing controls that you specify + // in the gating rule. GATING *GatingRule `type:"structure"` } @@ -5021,7 +5449,7 @@ func (s *Rule) SetGATING(v *GatingRule) *Rule { // The rule configuration for an assertion rule. That is, the criteria that // you set for specific assertion controls (routing controls) that specify how -// many controls must be enabled after a transaction completes. +// many control states must be ON after a transaction completes. type RuleConfig struct { _ struct{} `type:"structure"` @@ -5098,7 +5526,8 @@ func (s *RuleConfig) SetType(v string) *RuleConfig { return s } -// 402 response +// 402 response - You attempted to create more resources than the service allows +// based on service quotas. type ServiceQuotaExceededException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -5162,7 +5591,92 @@ func (s *ServiceQuotaExceededException) RequestID() string { return s.RespMetadata.RequestID } -// 429 response - ThrottlingException. +// Request to tag a resource. +type TagResourceInput struct { + _ struct{} `type:"structure"` + + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"ResourceArn" type:"string" required:"true"` + + // The tags associated with the resource. + // + // Tags is a required field + Tags map[string]*string `type:"map" 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 TagResourceInput) 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 TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput { + s.Tags = v + return s +} + +// The result of a successful TagResource request. +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// 429 response - LimitExceededException or TooManyRequestsException. type ThrottlingException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -5226,6 +5740,88 @@ func (s *ThrottlingException) RequestID() string { return s.RespMetadata.RequestID } +type UntagResourceInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // ResourceArn is a required field + ResourceArn *string `location:"uri" locationName:"ResourceArn" type:"string" required:"true"` + + // TagKeys is a required field + TagKeys []*string `location:"querystring" locationName:"TagKeys" type:"list" 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 UntagResourceInput) 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 UntagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UntagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.ResourceArn != nil && len(*s.ResourceArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1)) + } + if s.TagKeys == nil { + invalidParams.Add(request.NewErrParamRequired("TagKeys")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTagKeys sets the TagKeys field's value. +func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput { + s.TagKeys = v + return s +} + +// The result of a successful UntagResource request. +type UntagResourceOutput 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 UntagResourceOutput) 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 UntagResourceOutput) GoString() string { + return s.String() +} + // Updates an existing control panel. type UpdateControlPanelInput struct { _ struct{} `type:"structure"` @@ -5233,7 +5829,7 @@ type UpdateControlPanelInput struct { // The Amazon Resource Name (ARN) of the control panel. // // ControlPanelArn is a required field - ControlPanelArn *string `type:"string" required:"true"` + ControlPanelArn *string `min:"1" type:"string" required:"true"` // The name of the control panel. // @@ -5265,6 +5861,9 @@ func (s *UpdateControlPanelInput) Validate() error { if s.ControlPanelArn == nil { invalidParams.Add(request.NewErrParamRequired("ControlPanelArn")) } + if s.ControlPanelArn != nil && len(*s.ControlPanelArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ControlPanelArn", 1)) + } if s.ControlPanelName == nil { invalidParams.Add(request.NewErrParamRequired("ControlPanelName")) } @@ -5329,7 +5928,7 @@ type UpdateRoutingControlInput struct { // The Amazon Resource Name (ARN) of the routing control. // // RoutingControlArn is a required field - RoutingControlArn *string `type:"string" required:"true"` + RoutingControlArn *string `min:"1" type:"string" required:"true"` // The name of the routing control. // @@ -5361,6 +5960,9 @@ func (s *UpdateRoutingControlInput) Validate() error { if s.RoutingControlArn == nil { invalidParams.Add(request.NewErrParamRequired("RoutingControlArn")) } + if s.RoutingControlArn != nil && len(*s.RoutingControlArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RoutingControlArn", 1)) + } if s.RoutingControlName == nil { invalidParams.Add(request.NewErrParamRequired("RoutingControlName")) } @@ -5423,14 +6025,10 @@ func (s *UpdateRoutingControlOutput) SetRoutingControl(v *RoutingControl) *Updat type UpdateSafetyRuleInput struct { _ struct{} `type:"structure"` - // An update to an assertion rule. You can update the name or the evaluation - // period (wait period). If you don't specify one of the items to update, the - // item is unchanged. + // The assertion rule to update. AssertionRuleUpdate *AssertionRuleUpdate `type:"structure"` - // Update to a gating rule. You can update the name or the evaluation period - // (wait period). If you don't specify one of the items to update, the item - // is unchanged. + // The gating rule to update. GatingRuleUpdate *GatingRuleUpdate `type:"structure"` } @@ -5488,15 +6086,10 @@ func (s *UpdateSafetyRuleInput) SetGatingRuleUpdate(v *GatingRuleUpdate) *Update type UpdateSafetyRuleOutput struct { _ struct{} `type:"structure"` - // An assertion rule enforces that, when a routing control state is changed, - // the criteria set by the rule configuration is met. Otherwise, the change - // to the routing control is not accepted. + // The assertion rule updated. AssertionRule *AssertionRule `type:"structure"` - // A gating rule verifies that a set of gating controls evaluates as true, based - // on a rule configuration that you specify. If the gating rule evaluates to - // true, Amazon Route 53 Application Recovery Controller allows a set of routing - // control state changes to run and complete against the set of target controls. + // The gating rule updated. GatingRule *GatingRule `type:"structure"` } @@ -5531,8 +6124,8 @@ func (s *UpdateSafetyRuleOutput) SetGatingRule(v *GatingRule) *UpdateSafetyRuleO } // 400 response - Multiple causes. For example, you might have a malformed query -// string and input parameter might be out of range, or you used parameters -// together incorrectly. +// string and input parameter might be out of range, or you might have used +// parameters together incorrectly. type ValidationException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` diff --git a/service/route53recoverycontrolconfig/errors.go b/service/route53recoverycontrolconfig/errors.go index 7f44569129e..565296a3001 100644 --- a/service/route53recoverycontrolconfig/errors.go +++ b/service/route53recoverycontrolconfig/errors.go @@ -11,14 +11,13 @@ const ( // ErrCodeAccessDeniedException for service response error code // "AccessDeniedException". // - // 403 response - AccessDeniedException. You do not have sufficient access to - // perform this action. + // 403 response - You do not have sufficient access to perform this action. ErrCodeAccessDeniedException = "AccessDeniedException" // ErrCodeConflictException for service response error code // "ConflictException". // - // 409 response - ConflictException. + // 409 response - ConflictException. You might be using a predefined variable. ErrCodeConflictException = "ConflictException" // ErrCodeInternalServerException for service response error code @@ -30,27 +29,29 @@ const ( // ErrCodeResourceNotFoundException for service response error code // "ResourceNotFoundException". // - // 404 response - The query string contains a syntax error or resource not found. + // 404 response - MalformedQueryString. The query string contains a syntax error + // or resource not found.. ErrCodeResourceNotFoundException = "ResourceNotFoundException" // ErrCodeServiceQuotaExceededException for service response error code // "ServiceQuotaExceededException". // - // 402 response + // 402 response - You attempted to create more resources than the service allows + // based on service quotas. ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" // ErrCodeThrottlingException for service response error code // "ThrottlingException". // - // 429 response - ThrottlingException. + // 429 response - LimitExceededException or TooManyRequestsException. ErrCodeThrottlingException = "ThrottlingException" // ErrCodeValidationException for service response error code // "ValidationException". // // 400 response - Multiple causes. For example, you might have a malformed query - // string and input parameter might be out of range, or you used parameters - // together incorrectly. + // string and input parameter might be out of range, or you might have used + // parameters together incorrectly. ErrCodeValidationException = "ValidationException" ) diff --git a/service/route53recoverycontrolconfig/route53recoverycontrolconfigiface/interface.go b/service/route53recoverycontrolconfig/route53recoverycontrolconfigiface/interface.go index 31fffc90cf8..4d4960dc246 100644 --- a/service/route53recoverycontrolconfig/route53recoverycontrolconfigiface/interface.go +++ b/service/route53recoverycontrolconfig/route53recoverycontrolconfigiface/interface.go @@ -143,6 +143,18 @@ type Route53RecoveryControlConfigAPI interface { ListSafetyRulesPages(*route53recoverycontrolconfig.ListSafetyRulesInput, func(*route53recoverycontrolconfig.ListSafetyRulesOutput, bool) bool) error ListSafetyRulesPagesWithContext(aws.Context, *route53recoverycontrolconfig.ListSafetyRulesInput, func(*route53recoverycontrolconfig.ListSafetyRulesOutput, bool) bool, ...request.Option) error + ListTagsForResource(*route53recoverycontrolconfig.ListTagsForResourceInput) (*route53recoverycontrolconfig.ListTagsForResourceOutput, error) + ListTagsForResourceWithContext(aws.Context, *route53recoverycontrolconfig.ListTagsForResourceInput, ...request.Option) (*route53recoverycontrolconfig.ListTagsForResourceOutput, error) + ListTagsForResourceRequest(*route53recoverycontrolconfig.ListTagsForResourceInput) (*request.Request, *route53recoverycontrolconfig.ListTagsForResourceOutput) + + TagResource(*route53recoverycontrolconfig.TagResourceInput) (*route53recoverycontrolconfig.TagResourceOutput, error) + TagResourceWithContext(aws.Context, *route53recoverycontrolconfig.TagResourceInput, ...request.Option) (*route53recoverycontrolconfig.TagResourceOutput, error) + TagResourceRequest(*route53recoverycontrolconfig.TagResourceInput) (*request.Request, *route53recoverycontrolconfig.TagResourceOutput) + + UntagResource(*route53recoverycontrolconfig.UntagResourceInput) (*route53recoverycontrolconfig.UntagResourceOutput, error) + UntagResourceWithContext(aws.Context, *route53recoverycontrolconfig.UntagResourceInput, ...request.Option) (*route53recoverycontrolconfig.UntagResourceOutput, error) + UntagResourceRequest(*route53recoverycontrolconfig.UntagResourceInput) (*request.Request, *route53recoverycontrolconfig.UntagResourceOutput) + UpdateControlPanel(*route53recoverycontrolconfig.UpdateControlPanelInput) (*route53recoverycontrolconfig.UpdateControlPanelOutput, error) UpdateControlPanelWithContext(aws.Context, *route53recoverycontrolconfig.UpdateControlPanelInput, ...request.Option) (*route53recoverycontrolconfig.UpdateControlPanelOutput, error) UpdateControlPanelRequest(*route53recoverycontrolconfig.UpdateControlPanelInput) (*request.Request, *route53recoverycontrolconfig.UpdateControlPanelOutput) diff --git a/service/savingsplans/api.go b/service/savingsplans/api.go index 31d39483a58..3b4d7813c7c 100644 --- a/service/savingsplans/api.go +++ b/service/savingsplans/api.go @@ -786,7 +786,7 @@ type CreateSavingsPlanInput struct { ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` // The hourly commitment, in USD. This is a value between 0.001 and 1 million. - // You cannot specify more than three digits after the decimal point. + // You cannot specify more than five digits after the decimal point. // // Commitment is a required field Commitment *string `locationName:"commitment" type:"string" required:"true"` diff --git a/service/sms/api.go b/service/sms/api.go index 47a17d1641e..84ce3d4a7e1 100644 --- a/service/sms/api.go +++ b/service/sms/api.go @@ -151,8 +151,8 @@ func (c *SMS) CreateReplicationJobRequest(input *CreateReplicationJobInput) (req // CreateReplicationJob API operation for AWS Server Migration Service. // // Creates a replication job. The replication job schedules periodic replication -// runs to replicate your server to AWS. Each replication run creates an Amazon -// Machine Image (AMI). +// runs to replicate your server to Amazon Web Services. Each replication run +// creates an Amazon Machine Image (AMI). // // 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 @@ -258,8 +258,8 @@ func (c *SMS) DeleteAppRequest(input *DeleteAppInput) (req *request.Request, out // DeleteApp API operation for AWS Server Migration Service. // // Deletes the specified application. Optionally deletes the launched stack -// associated with the application and all AWS SMS replication jobs for servers -// in the application. +// associated with the application and all Server Migration Service replication +// jobs for servers in the application. // // 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 @@ -634,8 +634,9 @@ func (c *SMS) DeleteReplicationJobRequest(input *DeleteReplicationJobInput) (req // Deletes the specified replication job. // // After you delete a replication job, there are no further replication runs. -// AWS deletes the contents of the Amazon S3 bucket used to store AWS SMS artifacts. -// The AMIs created by the replication runs are not deleted. +// Amazon Web Services deletes the contents of the Amazon S3 bucket used to +// store Server Migration Service artifacts. The AMIs created by the replication +// runs are not deleted. // // 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 @@ -818,7 +819,7 @@ func (c *SMS) DisassociateConnectorRequest(input *DisassociateConnectorInput) (r // DisassociateConnector API operation for AWS Server Migration Service. // -// Disassociates the specified connector from AWS SMS. +// Disassociates the specified connector from Server Migration Service. // // After you disassociate a connector, it is no longer available to support // replication jobs. @@ -1003,7 +1004,7 @@ func (c *SMS) GenerateTemplateRequest(input *GenerateTemplateInput) (req *reques // GenerateTemplate API operation for AWS Server Migration Service. // -// Generates an AWS CloudFormation template based on the current launch configuration +// Generates an CloudFormation template based on the current launch configuration // and writes it to an Amazon S3 object in the customer’s Amazon S3 bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -1564,7 +1565,7 @@ func (c *SMS) GetConnectorsRequest(input *GetConnectorsInput) (req *request.Requ // GetConnectors API operation for AWS Server Migration Service. // -// Describes the connectors registered with the AWS SMS. +// Describes the connectors registered with the Server Migration Service. // // 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 @@ -2134,7 +2135,7 @@ func (c *SMS) ImportAppCatalogRequest(input *ImportAppCatalogInput) (req *reques // ImportAppCatalog API operation for AWS Server Migration Service. // -// Allows application import from AWS Migration Hub. +// Allows application import from Migration Hub. // // 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 @@ -2324,7 +2325,7 @@ func (c *SMS) LaunchAppRequest(input *LaunchAppInput) (req *request.Request, out // LaunchApp API operation for AWS Server Migration Service. // -// Launches the specified application as a stack in AWS CloudFormation. +// Launches the specified application as a stack in CloudFormation. // // 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 @@ -2509,7 +2510,8 @@ func (c *SMS) NotifyAppValidationOutputRequest(input *NotifyAppValidationOutputI // NotifyAppValidationOutput API operation for AWS Server Migration Service. // -// Provides information to AWS SMS about whether application validation is successful. +// Provides information to Server Migration Service about whether application +// validation is successful. // // 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 @@ -3552,7 +3554,8 @@ type AppSummary struct { // A message related to the replication status of the application. ReplicationStatusMessage *string `locationName:"replicationStatusMessage" type:"string"` - // The name of the service role in the customer's account used by AWS SMS. + // The name of the service role in the customer's account used by Server Migration + // Service. RoleName *string `locationName:"roleName" type:"string"` // Status of the application. @@ -3935,8 +3938,8 @@ type CreateAppInput struct { // The name of the new application. Name *string `locationName:"name" type:"string"` - // The name of the service role in the customer's account to be used by AWS - // SMS. + // The name of the service role in the customer's account to be used by Server + // Migration Service. RoleName *string `locationName:"roleName" type:"string"` // The server groups to include in the application. @@ -4084,7 +4087,7 @@ type CreateReplicationJobInput struct { // the maximum number is reached and a new AMI is created. NumberOfRecentAmisToKeep *int64 `locationName:"numberOfRecentAmisToKeep" type:"integer"` - // The name of the IAM role to be used by the AWS SMS. + // The name of the IAM role to be used by the Server Migration Service. RoleName *string `locationName:"roleName" type:"string"` // Indicates whether to run the replication job one time. @@ -4792,10 +4795,10 @@ func (s *GenerateChangeSetOutput) SetS3Location(v *S3Location) *GenerateChangeSe type GenerateTemplateInput struct { _ struct{} `type:"structure"` - // The ID of the application associated with the AWS CloudFormation template. + // The ID of the application associated with the CloudFormation template. AppId *string `locationName:"appId" type:"string"` - // The format for generating the AWS CloudFormation template. + // The format for generating the CloudFormation template. TemplateFormat *string `locationName:"templateFormat" type:"string" enum:"OutputFormat"` } @@ -4932,7 +4935,7 @@ type GetAppLaunchConfigurationOutput struct { // replication is complete. AutoLaunch *bool `locationName:"autoLaunch" type:"boolean"` - // The name of the service role in the customer's account that AWS CloudFormation + // The name of the service role in the customer's account that CloudFormation // uses to launch the application. RoleName *string `locationName:"roleName" type:"string"` @@ -5661,9 +5664,9 @@ type ImportAppCatalogInput struct { _ struct{} `type:"structure"` // The name of the service role. If you omit this parameter, we create a service-linked - // role for AWS Migration Hub in your account. Otherwise, the role that you - // provide must have the policy and trust policy (https://docs.aws.amazon.com/migrationhub/latest/ug/new-customer-setup.html#sms-managed) - // described in the AWS Migration Hub User Guide. + // role for Migration Hub in your account. Otherwise, the role that you provide + // must have the policy and trust policy (https://docs.aws.amazon.com/migrationhub/latest/ug/new-customer-setup.html#sms-managed) + // described in the Migration Hub User Guide. RoleName *string `locationName:"roleName" type:"string"` } @@ -6409,8 +6412,8 @@ type PutAppLaunchConfigurationInput struct { // replication is complete. AutoLaunch *bool `locationName:"autoLaunch" type:"boolean"` - // The name of service role in the customer's account that AWS CloudFormation - // uses to launch the application. + // The name of service role in the customer's account that CloudFormation uses + // to launch the application. RoleName *string `locationName:"roleName" type:"string"` // Information about the launch configurations for server groups in the application. @@ -6718,7 +6721,7 @@ type ReplicationJob struct { // Information about the replication runs. ReplicationRunList []*ReplicationRun `locationName:"replicationRunList" type:"list"` - // The name of the IAM role to be used by AWS SMS. + // The name of the IAM role to be used by Server Migration Service. RoleName *string `locationName:"roleName" type:"string"` // Indicates whether to run the replication job one time. @@ -7327,7 +7330,7 @@ func (s *SSMOutput) SetS3Location(v *S3Location) *SSMOutput { type SSMValidationParameters struct { _ struct{} `type:"structure"` - // The command to run the validation script + // The command to run the validation script. Command *string `locationName:"command" min:"1" type:"string"` // The timeout interval, in seconds. @@ -7799,7 +7802,7 @@ type ServerLaunchConfiguration struct { // The instance type to use when launching the server. InstanceType *string `locationName:"instanceType" type:"string"` - // The logical ID of the server in the AWS CloudFormation template. + // The logical ID of the server in the CloudFormation template. LogicalId *string `locationName:"logicalId" type:"string"` // The ID of the security group that applies to the launched server. @@ -8737,7 +8740,8 @@ type UpdateAppInput struct { // The new name of the application. Name *string `locationName:"name" type:"string"` - // The name of the service role in the customer's account used by AWS SMS. + // The name of the service role in the customer's account used by Server Migration + // Service. RoleName *string `locationName:"roleName" type:"string"` // The server groups in the application to update. @@ -8894,7 +8898,7 @@ type UpdateReplicationJobInput struct { // ReplicationJobId is a required field ReplicationJobId *string `locationName:"replicationJobId" type:"string" required:"true"` - // The name of the IAM role to be used by AWS SMS. + // The name of the IAM role to be used by Server Migration Service. RoleName *string `locationName:"roleName" type:"string"` } diff --git a/service/sms/doc.go b/service/sms/doc.go index dedb9d07850..ab0b6ef8dd8 100644 --- a/service/sms/doc.go +++ b/service/sms/doc.go @@ -3,13 +3,26 @@ // Package sms provides the client and types for making API // requests to AWS Server Migration Service. // -// AWS Server Migration Service (AWS SMS) makes it easier and faster for you -// to migrate your on-premises workloads to AWS. To learn more about AWS SMS, -// see the following resources: // -// * AWS Server Migration Service product page (http://aws.amazon.com/server-migration-service/) +// Product update // -// * AWS Server Migration Service User Guide (https://docs.aws.amazon.com/server-migration-service/latest/userguide/) +// As of March 31, 2022, Amazon Web Services will discontinue Server Migration +// Service (Amazon Web Services SMS). Going forward, we recommend Amazon Web +// Services Application Migration Service (http://aws.amazon.com/application-migration-service) +// (Amazon Web Services MGN) as the primary migration service for lift-and-shift +// migrations. +// +// You can initiate new migration jobs in Server Migration Service until January +// 1, 2022. Complete these active migration projects by March 31, 2022. For +// more information, see When to Choose AWS Application Migration Service (http://aws.amazon.com/application-migration-service/when-to-choose-aws-mgn/). +// +// Server Migration Service (Server Migration Service) makes it easier and faster +// for you to migrate your on-premises workloads to Amazon Web Services. To +// learn more about Server Migration Service, see the following resources: +// +// * Server Migration Service product page (http://aws.amazon.com/server-migration-service/) +// +// * Server Migration Service User Guide (https://docs.aws.amazon.com/server-migration-service/latest/userguide/) // // See https://docs.aws.amazon.com/goto/WebAPI/sms-2016-10-24 for more information on this service. //